Added: websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/index.html ============================================================================== --- websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/index.html (added) +++ websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/index.html Mon Oct 22 16:46:37 2018 @@ -0,0 +1,75 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> +<!-- NewPage --> +<html lang="en"> +<head> +<!-- Generated by javadoc (1.8.0_172) on Mon Oct 22 18:34:41 CEST 2018 --> +<title>Generated Documentation (Untitled)</title> +<script type="text/javascript"> + tmpTargetPage = "" + window.location.search; + if (tmpTargetPage != "" && tmpTargetPage != "undefined") + tmpTargetPage = tmpTargetPage.substring(1); + if (tmpTargetPage.indexOf(":") != -1 || (tmpTargetPage != "" && !validURL(tmpTargetPage))) + tmpTargetPage = "undefined"; + targetPage = tmpTargetPage; + function validURL(url) { + try { + url = decodeURIComponent(url); + } + catch (error) { + return false; + } + var pos = url.indexOf(".html"); + if (pos == -1 || pos != url.length - 5) + return false; + var allowNumber = false; + var allowSep = false; + var seenDot = false; + for (var i = 0; i < url.length - 5; i++) { + var ch = url.charAt(i); + if ('a' <= ch && ch <= 'z' || + 'A' <= ch && ch <= 'Z' || + ch == '$' || + ch == '_' || + ch.charCodeAt(0) > 127) { + allowNumber = true; + allowSep = true; + } else if ('0' <= ch && ch <= '9' + || ch == '-') { + if (!allowNumber) + return false; + } else if (ch == '/' || ch == '.') { + if (!allowSep) + return false; + allowNumber = false; + allowSep = false; + if (ch == '.') + seenDot = true; + if (ch == '/' && seenDot) + return false; + } else { + return false; + } + } + return true; + } + function loadFrames() { + if (targetPage != "" && targetPage != "undefined") + top.classFrame.location = top.targetPage; + } +</script> +</head> +<frameset cols="20%,80%" title="Documentation frame" onload="top.loadFrames()"> +<frameset rows="30%,70%" title="Left frames" onload="top.loadFrames()"> +<frame src="overview-frame.html" name="packageListFrame" title="All Packages"> +<frame src="allclasses-frame.html" name="packageFrame" title="All classes and interfaces (except non-static nested types)"> +</frameset> +<frame src="overview-summary.html" name="classFrame" title="Package, class and interface descriptions" scrolling="yes"> +<noframes> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<h2>Frame Alert</h2> +<p>This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. Link to <a href="overview-summary.html">Non-frame version</a>.</p> +</noframes> +</frameset> +</html>
Added: websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/org/apache/felix/dm/AbstractComponent.html ============================================================================== --- websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/org/apache/felix/dm/AbstractComponent.html (added) +++ websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/org/apache/felix/dm/AbstractComponent.html Mon Oct 22 16:46:37 2018 @@ -0,0 +1,320 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<!-- NewPage --> +<html lang="en"> +<head> +<!-- Generated by javadoc (1.8.0_172) on Mon Oct 22 18:34:41 CEST 2018 --> +<title>AbstractComponent</title> +<meta name="date" content="2018-10-22"> +<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> +<script type="text/javascript" src="../../../../script.js"></script> +</head> +<body> +<script type="text/javascript"><!-- + try { + if (location.href.indexOf('is-external=true') == -1) { + parent.document.title="AbstractComponent"; + } + } + catch(err) { + } +//--> +var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6}; +var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]}; +var altColor = "altColor"; +var rowColor = "rowColor"; +var tableTab = "tableTab"; +var activeTableTab = "activeTableTab"; +</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="topNav"><a name="navbar.top"> +<!-- --> +</a> +<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> +<a name="navbar.top.firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../../index-all.html">Index</a></li> +<li><a href="../../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li>Prev Class</li> +<li><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../index.html?org/apache/felix/dm/AbstractComponent.html" target="_top">Frames</a></li> +<li><a href="AbstractComponent.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_top"> +<li><a href="../../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_top"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.detail">Method</a></li> +</ul> +</div> +<a name="skip.navbar.top"> +<!-- --> +</a></div> +<!-- ========= END OF TOP NAVBAR ========= --> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="subTitle">org.apache.felix.dm</div> +<h2 title="Interface AbstractComponent" class="title">Interface AbstractComponent</h2> +</div> +<div class="contentContainer"> +<div class="description"> +<ul class="blockList"> +<li class="blockList"> +<dl> +<dt>All Known Subinterfaces:</dt> +<dd><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm">AdapterComponent</a>, <a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm">AspectComponent</a>, <a href="../../../../org/apache/felix/dm/BundleComponent.html" title="interface in org.apache.felix.dm">BundleComponent</a>, <a href="../../../../org/apache/felix/dm/Component.html" title="interface in org.apache.felix.dm">Component</a><T>, <a href="../../../../org/apache/felix/dm/context/ComponentContext.html" title="interface in org.apache.felix.dm.context">ComponentContext</a><T>, <a href="../../../../org/apache/felix/dm/FactoryComponent.html" title="interface in org.apache.felix.dm">FactoryComponent</a>, <a href="../../../../org/apache/felix/dm/ResourceComponent.html" title="interface in org.apache.felix.dm">ResourceComponent</a></dd> +</dl> +<hr> +<br> +<pre>public interface <span class="typeNameLabel">AbstractComponent</span></pre> +<div class="block">Base interface for a Dependency Manager component.</div> +</li> +</ul> +</div> +<div class="summary"> +<ul class="blockList"> +<li class="blockList"> +<!-- ========== METHOD SUMMARY =========== --> +<ul class="blockList"> +<li class="blockList"><a name="method.summary"> +<!-- --> +</a> +<h3>Method Summary</h3> +<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> +<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd"> </span></span></caption> +<tr> +<th class="colFirst" scope="col">Modifier and Type</th> +<th class="colLast" scope="col">Method and Description</th> +</tr> +<tr id="i0" class="altColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/ComponentDeclaration.html" title="interface in org.apache.felix.dm">ComponentDeclaration</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AbstractComponent.html#getComponentDeclaration--">getComponentDeclaration</a></span>()</code> +<div class="block">Returns the component description (dependencies, service provided, etc ...).</div> +</td> +</tr> +<tr id="i1" class="rowColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/DependencyManager.html" title="class in org.apache.felix.dm">DependencyManager</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AbstractComponent.html#getDependencyManager--">getDependencyManager</a></span>()</code> +<div class="block">Returns the dependency manager associated with this component.</div> +</td> +</tr> +<tr id="i2" class="altColor"> +<td class="colFirst"><code><U> U</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AbstractComponent.html#getInstance--">getInstance</a></span>()</code> +<div class="block">Returns the instance that make up this component.</div> +</td> +</tr> +<tr id="i3" class="rowColor"> +<td class="colFirst"><code>java.lang.Object[]</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AbstractComponent.html#getInstances--">getInstances</a></span>()</code> +<div class="block">Returns the composition instances that make up this component, or just the + component instance if it does not have a composition, or an empty array if + the component has not even been instantiated.</div> +</td> +</tr> +<tr id="i4" class="altColor"> +<td class="colFirst"><code><K,V> java.util.Dictionary<K,V></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AbstractComponent.html#getServiceProperties--">getServiceProperties</a></span>()</code> +<div class="block">Returns the component service properties.</div> +</td> +</tr> +</table> +</li> +</ul> +</li> +</ul> +</div> +<div class="details"> +<ul class="blockList"> +<li class="blockList"> +<!-- ============ METHOD DETAIL ========== --> +<ul class="blockList"> +<li class="blockList"><a name="method.detail"> +<!-- --> +</a> +<h3>Method Detail</h3> +<a name="getInstance--"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getInstance</h4> +<pre><U> U getInstance()</pre> +<div class="block">Returns the instance that make up this component. If the component has a composition of instances, + then the first instance of the composition is returned. Null is returned if the component has not + even been instantiated.</div> +<dl> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>the component instances</dd> +</dl> +</li> +</ul> +<a name="getInstances--"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getInstances</h4> +<pre>java.lang.Object[] getInstances()</pre> +<div class="block">Returns the composition instances that make up this component, or just the + component instance if it does not have a composition, or an empty array if + the component has not even been instantiated.</div> +<dl> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>the component instances</dd> +</dl> +</li> +</ul> +<a name="getServiceProperties--"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getServiceProperties</h4> +<pre><K,V> java.util.Dictionary<K,V> getServiceProperties()</pre> +<div class="block">Returns the component service properties. + The returned dictionary is either empty if no service properties were defined for this component, + or copy of the existing service properties associated with this component.</div> +<dl> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>a copy of the service properties associated to this component or an empty dictionary + if no service properties were defined for this component.</dd> +</dl> +</li> +</ul> +<a name="getDependencyManager--"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getDependencyManager</h4> +<pre><a href="../../../../org/apache/felix/dm/DependencyManager.html" title="class in org.apache.felix.dm">DependencyManager</a> getDependencyManager()</pre> +<div class="block">Returns the dependency manager associated with this component.</div> +<dl> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>the dependency manager associated with this component.</dd> +</dl> +</li> +</ul> +<a name="getComponentDeclaration--"> +<!-- --> +</a> +<ul class="blockListLast"> +<li class="blockList"> +<h4>getComponentDeclaration</h4> +<pre><a href="../../../../org/apache/felix/dm/ComponentDeclaration.html" title="interface in org.apache.felix.dm">ComponentDeclaration</a> getComponentDeclaration()</pre> +<div class="block">Returns the component description (dependencies, service provided, etc ...).</div> +<dl> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>the component description (dependencies, service provided, etc ...).</dd> +</dl> +</li> +</ul> +</li> +</ul> +</li> +</ul> +</div> +</div> +<!-- ========= END OF CLASS DATA ========= --> +<!-- ======= START OF BOTTOM NAVBAR ====== --> +<div class="bottomNav"><a name="navbar.bottom"> +<!-- --> +</a> +<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> +<a name="navbar.bottom.firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../../index-all.html">Index</a></li> +<li><a href="../../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li>Prev Class</li> +<li><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../index.html?org/apache/felix/dm/AbstractComponent.html" target="_top">Frames</a></li> +<li><a href="AbstractComponent.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_bottom"> +<li><a href="../../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_bottom"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.detail">Method</a></li> +</ul> +</div> +<a name="skip.navbar.bottom"> +<!-- --> +</a></div> +<!-- ======== END OF BOTTOM NAVBAR ======= --> +</body> +</html> Added: websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/org/apache/felix/dm/AdapterComponent.html ============================================================================== --- websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/org/apache/felix/dm/AdapterComponent.html (added) +++ websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/org/apache/felix/dm/AdapterComponent.html Mon Oct 22 16:46:37 2018 @@ -0,0 +1,447 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<!-- NewPage --> +<html lang="en"> +<head> +<!-- Generated by javadoc (1.8.0_172) on Mon Oct 22 18:34:41 CEST 2018 --> +<title>AdapterComponent</title> +<meta name="date" content="2018-10-22"> +<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> +<script type="text/javascript" src="../../../../script.js"></script> +</head> +<body> +<script type="text/javascript"><!-- + try { + if (location.href.indexOf('is-external=true') == -1) { + parent.document.title="AdapterComponent"; + } + } + catch(err) { + } +//--> +var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6}; +var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]}; +var altColor = "altColor"; +var rowColor = "rowColor"; +var tableTab = "tableTab"; +var activeTableTab = "activeTableTab"; +</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="topNav"><a name="navbar.top"> +<!-- --> +</a> +<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> +<a name="navbar.top.firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../../index-all.html">Index</a></li> +<li><a href="../../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li><a href="../../../../org/apache/felix/dm/AbstractComponent.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../index.html?org/apache/felix/dm/AdapterComponent.html" target="_top">Frames</a></li> +<li><a href="AdapterComponent.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_top"> +<li><a href="../../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_top"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.detail">Method</a></li> +</ul> +</div> +<a name="skip.navbar.top"> +<!-- --> +</a></div> +<!-- ========= END OF TOP NAVBAR ========= --> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="subTitle">org.apache.felix.dm</div> +<h2 title="Interface AdapterComponent" class="title">Interface AdapterComponent</h2> +</div> +<div class="contentContainer"> +<div class="description"> +<ul class="blockList"> +<li class="blockList"> +<dl> +<dt>All Superinterfaces:</dt> +<dd><a href="../../../../org/apache/felix/dm/AbstractComponent.html" title="interface in org.apache.felix.dm">AbstractComponent</a>, <a href="../../../../org/apache/felix/dm/Component.html" title="interface in org.apache.felix.dm">Component</a><<a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm">AdapterComponent</a>></dd> +</dl> +<hr> +<br> +<pre>public interface <span class="typeNameLabel">AdapterComponent</span> +extends <a href="../../../../org/apache/felix/dm/Component.html" title="interface in org.apache.felix.dm">Component</a><<a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm">AdapterComponent</a>></pre> +<div class="block">Interface used to configure the various parameters needed when defining + a Dependency Manager adapter component. + + Adapters, like <a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm"><code>AspectComponent</code></a>, are used to "extend" + existing services, and can publish different services based on the existing one. + An example would be implementing a management interface for an existing service, etc .... + <p>When you create an adapter component, it will be applied + to any service that matches the implemented interface and filter. The adapter will be registered + with the specified interface and existing properties from the original service plus any extra + properties you supply here. If you declare the original service as a member it will be injected. + + <h3>Usage Examples</h3> + + Here is a sample showing a HelloServlet adapter component which creates a servlet each time a HelloService is registered in the + osgi service registry with the "foo=bar" service property. + + <blockquote><pre> + <code> + public class Activator extends DependencyActivatorBase { + &Override + public void init(BundleContext context, DependencyManager dm) throws Exception { + Component adapterComponent = createAdapterComponent() + .setAdaptee(HelloService.class, "(foo=bar)") + .setInterface(HttpServlet.class.getName(), null) + .setImplementation(HelloServlet.class); + dm.add(adapterComponent); + } + } + + public interface HelloService { + String sayHello(); + } + + public class HelloServlet extends HttpServlet { + volatile HelloService adatpee; // injected + + void doGet(HttpServletRequest req, HttpServletResponse resp) { + ... + resp.getWriter().println(adaptee.sayHello()); + } + } + </code> </pre></blockquote> + + <p> When you use callbacks to get injected with the adaptee service, the "add", "change", "remove" callbacks + support the following method signatures: + + <pre><code> + (Component comp, ServiceReference ref, Service service) + (Component comp, ServiceReference ref, Object service) + (Component comp, ServiceReference ref) + (Component comp, Service service) + (Component comp, Object service) + (Component comp) + (Component comp, Map properties, Service service) + (ServiceReference ref, Service service) + (ServiceReference ref, Object service) + (ServiceReference ref) + (Service service) + (Service service, Map propeerties) + (Map properties, Service, service) + (Service service, Dictionary properties) + (Dictionary properties, Service service) + (Object service) + </code></pre> + + <p> For "swap" callbacks, the following method signatures are supported: + + <pre><code> + (Service old, Service replace) + (Object old, Object replace) + (ServiceReference old, Service old, ServiceReference replace, Service replace) + (ServiceReference old, Object old, ServiceReference replace, Object replace) + (Component comp, Service old, Service replace) + (Component comp, Object old, Object replace) + (Component comp, ServiceReference old, Service old, ServiceReference replace, Service replace) + (Component comp, ServiceReference old, Object old, ServiceReference replace, Object replace) + (ServiceReference old, ServiceReference replace) + (Component comp, ServiceReference old, ServiceReference replace) + </code></pre></div> +<dl> +<dt><span class="seeLabel">See Also:</span></dt> +<dd><a href="../../../../org/apache/felix/dm/DependencyManager.html#createAdapterComponent--"><code>DependencyManager.createAdapterComponent()</code></a></dd> +</dl> +</li> +</ul> +</div> +<div class="summary"> +<ul class="blockList"> +<li class="blockList"> +<!-- ======== NESTED CLASS SUMMARY ======== --> +<ul class="blockList"> +<li class="blockList"><a name="nested.class.summary"> +<!-- --> +</a> +<h3>Nested Class Summary</h3> +<ul class="blockList"> +<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.felix.dm.Component"> +<!-- --> +</a> +<h3>Nested classes/interfaces inherited from interface org.apache.felix.dm.<a href="../../../../org/apache/felix/dm/Component.html" title="interface in org.apache.felix.dm">Component</a></h3> +<code><a href="../../../../org/apache/felix/dm/Component.ServiceScope.html" title="enum in org.apache.felix.dm">Component.ServiceScope</a></code></li> +</ul> +</li> +</ul> +<!-- ========== METHOD SUMMARY =========== --> +<ul class="blockList"> +<li class="blockList"><a name="method.summary"> +<!-- --> +</a> +<h3>Method Summary</h3> +<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> +<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd"> </span></span></caption> +<tr> +<th class="colFirst" scope="col">Modifier and Type</th> +<th class="colLast" scope="col">Method and Description</th> +</tr> +<tr id="i0" class="altColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm">AdapterComponent</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AdapterComponent.html#setAdaptee-java.lang.Class-java.lang.String-">setAdaptee</a></span>(java.lang.Class<?> service, + java.lang.String filter)</code> +<div class="block">Sets the service interface to apply the adapter to</div> +</td> +</tr> +<tr id="i1" class="rowColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm">AdapterComponent</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AdapterComponent.html#setAdapteeCallbackInstance-java.lang.Object-">setAdapteeCallbackInstance</a></span>(java.lang.Object callbackInstance)</code> +<div class="block">Sets the instance to invoke the callbacks on (null by default, meaning the callbacks have to be invoked on the adapter itself)</div> +</td> +</tr> +<tr id="i2" class="altColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm">AdapterComponent</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AdapterComponent.html#setAdapteeCallbacks-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">setAdapteeCallbacks</a></span>(java.lang.String add, + java.lang.String change, + java.lang.String remove, + java.lang.String swap)</code> +<div class="block">Sets the callbacks to invoke when injecting the adaptee service into the adapter component.</div> +</td> +</tr> +<tr id="i3" class="rowColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm">AdapterComponent</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AdapterComponent.html#setAdapteeField-java.lang.String-">setAdapteeField</a></span>(java.lang.String autoConfig)</code> +<div class="block">Sets the name of the member to inject the service into</div> +</td> +</tr> +<tr id="i4" class="altColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm">AdapterComponent</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AdapterComponent.html#setPropagate-boolean-">setPropagate</a></span>(boolean propagate)</code> +<div class="block">Sets if the adaptee service properties should be propagated to the adapter service consumer (true by default)</div> +</td> +</tr> +</table> +<ul class="blockList"> +<li class="blockList"><a name="methods.inherited.from.class.org.apache.felix.dm.Component"> +<!-- --> +</a> +<h3>Methods inherited from interface org.apache.felix.dm.<a href="../../../../org/apache/felix/dm/Component.html" title="interface in org.apache.felix.dm">Component</a></h3> +<code><a href="../../../../org/apache/felix/dm/Component.html#add-org.apache.felix.dm.ComponentStateListener-">add</a>, <a href="../../../../org/apache/felix/dm/Component.html#add-org.apache.felix.dm.Dependency...-">add</a>, <a href="../../../../org/apache/felix/dm/Component.html#getServiceRegistration--">getServiceRegistration</a>, <a href="../../../../org/apache/felix/dm/Component.html#remove-org.apache.felix.dm.ComponentStateListener-">remove</a>, <a href="../../../../org/apache/felix/dm/Component.html#remove-org.apache.felix.dm.Dependency-">remove</a>, <a href="../../../../org/apache/felix/dm/Component.html#setAutoConfig-java.lang.Class-boolean-">setAutoConfig</a>, <a href="../../../../org/apache/felix/dm/Component.html#setAutoConfig-java.lang.Class-java.lang.String-">setAutoConfig</a>, <a href="../../../../org/apache/felix/dm/Component.html#setCallbacks-java.lang.Object-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">setCallbacks</a>, <a href="../../../../ org/apache/felix/dm/Component.html#setCallbacks-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">setCallbacks</a>, <a href="../../../../org/apache/felix/dm/Component.html#setComposition-java.lang.Object-java.lang.String-">setComposition</a>, <a href="../../../../org/apache/felix/dm/Component.html#setComposition-java.lang.String-">setComposition</a>, <a href="../../../../org/apache/felix/dm/Component.html#setDebug-java.lang.String-">setDebug</a>, <a href="../../../../org/apache/felix/dm/Component.html#setFactory-java.lang.Object-java.lang.String-">setFactory</a>, <a href="../../../../org/apache/felix/dm/Component.html#setFactory-java.lang.String-">setFactory</a>, <a href="../../../../org/apache/felix/dm/Component.html#setImplementation-java.lang.Object-">setImplementation</a>, <a href="../../../../org/apache/felix/dm/Component.html#setInterface-java.lang.Class:A-java.util.Dictionary-">setInterface</a>, <a href="../../../../org/apache/felix/dm/Component.html#setIn terface-java.lang.Class-java.util.Dictionary-">setInterface</a>, <a href="../../../../org/apache/felix/dm/Component.html#setInterface-java.lang.String:A-java.util.Dictionary-">setInterface</a>, <a href="../../../../org/apache/felix/dm/Component.html#setInterface-java.lang.String-java.util.Dictionary-">setInterface</a>, <a href="../../../../org/apache/felix/dm/Component.html#setScope-org.apache.felix.dm.Component.ServiceScope-">setScope</a>, <a href="../../../../org/apache/felix/dm/Component.html#setServiceProperties-java.util.Dictionary-">setServiceProperties</a></code></li> +</ul> +<ul class="blockList"> +<li class="blockList"><a name="methods.inherited.from.class.org.apache.felix.dm.AbstractComponent"> +<!-- --> +</a> +<h3>Methods inherited from interface org.apache.felix.dm.<a href="../../../../org/apache/felix/dm/AbstractComponent.html" title="interface in org.apache.felix.dm">AbstractComponent</a></h3> +<code><a href="../../../../org/apache/felix/dm/AbstractComponent.html#getComponentDeclaration--">getComponentDeclaration</a>, <a href="../../../../org/apache/felix/dm/AbstractComponent.html#getDependencyManager--">getDependencyManager</a>, <a href="../../../../org/apache/felix/dm/AbstractComponent.html#getInstance--">getInstance</a>, <a href="../../../../org/apache/felix/dm/AbstractComponent.html#getInstances--">getInstances</a>, <a href="../../../../org/apache/felix/dm/AbstractComponent.html#getServiceProperties--">getServiceProperties</a></code></li> +</ul> +</li> +</ul> +</li> +</ul> +</div> +<div class="details"> +<ul class="blockList"> +<li class="blockList"> +<!-- ============ METHOD DETAIL ========== --> +<ul class="blockList"> +<li class="blockList"><a name="method.detail"> +<!-- --> +</a> +<h3>Method Detail</h3> +<a name="setAdaptee-java.lang.Class-java.lang.String-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>setAdaptee</h4> +<pre><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm">AdapterComponent</a> setAdaptee(java.lang.Class<?> service, + java.lang.String filter)</pre> +<div class="block">Sets the service interface to apply the adapter to</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>service</code> - the service interface to apply the adapter to</dd> +<dd><code>filter</code> - the filter condition to use with the service interface</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>this adapter parameter instance</dd> +</dl> +</li> +</ul> +<a name="setAdapteeField-java.lang.String-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>setAdapteeField</h4> +<pre><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm">AdapterComponent</a> setAdapteeField(java.lang.String autoConfig)</pre> +<div class="block">Sets the name of the member to inject the service into</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>autoConfig</code> - the name of the member to inject the service into</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>this adapter parameter instance</dd> +</dl> +</li> +</ul> +<a name="setAdapteeCallbacks-java.lang.String-java.lang.String-java.lang.String-java.lang.String-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>setAdapteeCallbacks</h4> +<pre><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm">AdapterComponent</a> setAdapteeCallbacks(java.lang.String add, + java.lang.String change, + java.lang.String remove, + java.lang.String swap)</pre> +<div class="block">Sets the callbacks to invoke when injecting the adaptee service into the adapter component.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>add</code> - name of the callback method to invoke on add</dd> +<dd><code>change</code> - name of the callback method to invoke on change</dd> +<dd><code>remove</code> - name of the callback method to invoke on remove</dd> +<dd><code>swap</code> - name of the callback method to invoke on swap</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>this adapter parameter instance</dd> +</dl> +</li> +</ul> +<a name="setAdapteeCallbackInstance-java.lang.Object-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>setAdapteeCallbackInstance</h4> +<pre><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm">AdapterComponent</a> setAdapteeCallbackInstance(java.lang.Object callbackInstance)</pre> +<div class="block">Sets the instance to invoke the callbacks on (null by default, meaning the callbacks have to be invoked on the adapter itself)</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>callbackInstance</code> - the instance to invoke the callbacks on (null by default, meaning the callbacks have to be invoked on the adapter itself)</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>this adapter parameter instance</dd> +</dl> +</li> +</ul> +<a name="setPropagate-boolean-"> +<!-- --> +</a> +<ul class="blockListLast"> +<li class="blockList"> +<h4>setPropagate</h4> +<pre><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm">AdapterComponent</a> setPropagate(boolean propagate)</pre> +<div class="block">Sets if the adaptee service properties should be propagated to the adapter service consumer (true by default)</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>propagate</code> - true if the adaptee service properties should be propagated to the adapter service consumers. + The provided adapter service properties take precedence over the propagated adaptee service properties. + It means an adaptee service property won't override an adapter service property having the same name.</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>this adapter parameter instance</dd> +</dl> +</li> +</ul> +</li> +</ul> +</li> +</ul> +</div> +</div> +<!-- ========= END OF CLASS DATA ========= --> +<!-- ======= START OF BOTTOM NAVBAR ====== --> +<div class="bottomNav"><a name="navbar.bottom"> +<!-- --> +</a> +<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> +<a name="navbar.bottom.firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../../index-all.html">Index</a></li> +<li><a href="../../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li><a href="../../../../org/apache/felix/dm/AbstractComponent.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../index.html?org/apache/felix/dm/AdapterComponent.html" target="_top">Frames</a></li> +<li><a href="AdapterComponent.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_bottom"> +<li><a href="../../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_bottom"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.detail">Method</a></li> +</ul> +</div> +<a name="skip.navbar.bottom"> +<!-- --> +</a></div> +<!-- ======== END OF BOTTOM NAVBAR ======= --> +</body> +</html> Added: websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/org/apache/felix/dm/AspectComponent.html ============================================================================== --- websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/org/apache/felix/dm/AspectComponent.html (added) +++ websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/org/apache/felix/dm/AspectComponent.html Mon Oct 22 16:46:37 2018 @@ -0,0 +1,425 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<!-- NewPage --> +<html lang="en"> +<head> +<!-- Generated by javadoc (1.8.0_172) on Mon Oct 22 18:34:41 CEST 2018 --> +<title>AspectComponent</title> +<meta name="date" content="2018-10-22"> +<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> +<script type="text/javascript" src="../../../../script.js"></script> +</head> +<body> +<script type="text/javascript"><!-- + try { + if (location.href.indexOf('is-external=true') == -1) { + parent.document.title="AspectComponent"; + } + } + catch(err) { + } +//--> +var methods = {"i0":6,"i1":6,"i2":6,"i3":6}; +var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]}; +var altColor = "altColor"; +var rowColor = "rowColor"; +var tableTab = "tableTab"; +var activeTableTab = "activeTableTab"; +</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="topNav"><a name="navbar.top"> +<!-- --> +</a> +<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> +<a name="navbar.top.firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../../index-all.html">Index</a></li> +<li><a href="../../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../org/apache/felix/dm/BundleComponent.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../index.html?org/apache/felix/dm/AspectComponent.html" target="_top">Frames</a></li> +<li><a href="AspectComponent.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_top"> +<li><a href="../../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_top"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.detail">Method</a></li> +</ul> +</div> +<a name="skip.navbar.top"> +<!-- --> +</a></div> +<!-- ========= END OF TOP NAVBAR ========= --> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="subTitle">org.apache.felix.dm</div> +<h2 title="Interface AspectComponent" class="title">Interface AspectComponent</h2> +</div> +<div class="contentContainer"> +<div class="description"> +<ul class="blockList"> +<li class="blockList"> +<dl> +<dt>All Superinterfaces:</dt> +<dd><a href="../../../../org/apache/felix/dm/AbstractComponent.html" title="interface in org.apache.felix.dm">AbstractComponent</a>, <a href="../../../../org/apache/felix/dm/Component.html" title="interface in org.apache.felix.dm">Component</a><<a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm">AspectComponent</a>></dd> +</dl> +<hr> +<br> +<pre>public interface <span class="typeNameLabel">AspectComponent</span> +extends <a href="../../../../org/apache/felix/dm/Component.html" title="interface in org.apache.felix.dm">Component</a><<a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm">AspectComponent</a>></pre> +<div class="block">Interface used to configure the various parameters needed when defining + a Dependency Manager aspect component. + + Aspects allow you to define an interceptor, or chain of interceptors + for a service (to add features like caching or logging, etc ...). The dependency manager intercepts + the original service, and allows you to execute some code before invoking the original service ... + The aspect will be applied to any service that matches the specified interface and filter and + will be registered with the same interface and properties as the original service, plus any + extra properties you supply here. If you declare the original service as a member it will be injected. + + <h3>Usage Examples</h3> + + Here is a sample showing a DatabaseCache aspect which is created each time a Database interface is registered in the registry. + + <blockquote><pre> + <code> + public class Activator extends DependencyActivatorBase { + &Override + public void init(BundleContext context, DependencyManager dm) throws Exception { + Component aspectComponent = createAspectComponent() + .setAspect(Database.class, null, 10) + .setImplementation(DatabaseCache.class); + dm.add(aspectComponent); + } + } + + interface Database { + String get(String key); + } + + class DatabaseCache implements Database { + volatile Database originalDatabase; // injected + + String get(String key) { + String value = cache.get(key); + if (value == null) { + value = this.originalDatabase.get(key); + store(key, value); + } + return value; + } + ... + } + </code> </pre></blockquote> + + <p> For "add", "change", "remove" callbacks, the following method signatures are supported: + + <pre><code> + (Component comp, ServiceReference ref, Service service) + (Component comp, ServiceReference ref, Object service) + (Component comp, ServiceReference ref) + (Component comp, Service service) + (Component comp, Object service) + (Component comp) + (Component comp, Map properties, Service service) + (ServiceReference ref, Service service) + (ServiceReference ref, Object service) + (ServiceReference ref) + (Service service) + (Service service, Map propeerties) + (Map properties, Service, service) + (Service service, Dictionary properties) + (Dictionary properties, Service service) + (Object service) + </code></pre> + + <p> For "swap" callbacks, the following method signatures are supported: + + <pre><code> + (Service old, Service replace) + (Object old, Object replace) + (ServiceReference old, Service old, ServiceReference replace, Service replace) + (ServiceReference old, Object old, ServiceReference replace, Object replace) + (Component comp, Service old, Service replace) + (Component comp, Object old, Object replace) + (Component comp, ServiceReference old, Service old, ServiceReference replace, Service replace) + (Component comp, ServiceReference old, Object old, ServiceReference replace, Object replace) + (ServiceReference old, ServiceReference replace) + (Component comp, ServiceReference old, ServiceReference replace) + </code></pre></div> +</li> +</ul> +</div> +<div class="summary"> +<ul class="blockList"> +<li class="blockList"> +<!-- ======== NESTED CLASS SUMMARY ======== --> +<ul class="blockList"> +<li class="blockList"><a name="nested.class.summary"> +<!-- --> +</a> +<h3>Nested Class Summary</h3> +<ul class="blockList"> +<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.felix.dm.Component"> +<!-- --> +</a> +<h3>Nested classes/interfaces inherited from interface org.apache.felix.dm.<a href="../../../../org/apache/felix/dm/Component.html" title="interface in org.apache.felix.dm">Component</a></h3> +<code><a href="../../../../org/apache/felix/dm/Component.ServiceScope.html" title="enum in org.apache.felix.dm">Component.ServiceScope</a></code></li> +</ul> +</li> +</ul> +<!-- ========== METHOD SUMMARY =========== --> +<ul class="blockList"> +<li class="blockList"><a name="method.summary"> +<!-- --> +</a> +<h3>Method Summary</h3> +<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> +<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd"> </span></span></caption> +<tr> +<th class="colFirst" scope="col">Modifier and Type</th> +<th class="colLast" scope="col">Method and Description</th> +</tr> +<tr id="i0" class="altColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm">AspectComponent</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AspectComponent.html#setAspect-java.lang.Class-java.lang.String-int-">setAspect</a></span>(java.lang.Class<?> service, + java.lang.String filter, + int ranking)</code> +<div class="block">Sets the service interface to apply the aspect to (required parameter)</div> +</td> +</tr> +<tr id="i1" class="rowColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm">AspectComponent</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AspectComponent.html#setAspectCallbackInstance-java.lang.Object-">setAspectCallbackInstance</a></span>(java.lang.Object callbackInstance)</code> +<div class="block">Sets the instance to invoke the callbacks on (optional parameter).</div> +</td> +</tr> +<tr id="i2" class="altColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm">AspectComponent</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AspectComponent.html#setAspectCallbacks-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">setAspectCallbacks</a></span>(java.lang.String add, + java.lang.String change, + java.lang.String remove, + java.lang.String swap)</code> +<div class="block">Sets name of the callbacks method to invoke on add,change,remove, or swap callbacks (optional parameter).</div> +</td> +</tr> +<tr id="i3" class="rowColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm">AspectComponent</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/AspectComponent.html#setAspectField-java.lang.String-">setAspectField</a></span>(java.lang.String autoConfig)</code> +<div class="block">Sets the aspect implementation field name where to inject original service (optional parameter).</div> +</td> +</tr> +</table> +<ul class="blockList"> +<li class="blockList"><a name="methods.inherited.from.class.org.apache.felix.dm.Component"> +<!-- --> +</a> +<h3>Methods inherited from interface org.apache.felix.dm.<a href="../../../../org/apache/felix/dm/Component.html" title="interface in org.apache.felix.dm">Component</a></h3> +<code><a href="../../../../org/apache/felix/dm/Component.html#add-org.apache.felix.dm.ComponentStateListener-">add</a>, <a href="../../../../org/apache/felix/dm/Component.html#add-org.apache.felix.dm.Dependency...-">add</a>, <a href="../../../../org/apache/felix/dm/Component.html#getServiceRegistration--">getServiceRegistration</a>, <a href="../../../../org/apache/felix/dm/Component.html#remove-org.apache.felix.dm.ComponentStateListener-">remove</a>, <a href="../../../../org/apache/felix/dm/Component.html#remove-org.apache.felix.dm.Dependency-">remove</a>, <a href="../../../../org/apache/felix/dm/Component.html#setAutoConfig-java.lang.Class-boolean-">setAutoConfig</a>, <a href="../../../../org/apache/felix/dm/Component.html#setAutoConfig-java.lang.Class-java.lang.String-">setAutoConfig</a>, <a href="../../../../org/apache/felix/dm/Component.html#setCallbacks-java.lang.Object-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">setCallbacks</a>, <a href="../../../../ org/apache/felix/dm/Component.html#setCallbacks-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">setCallbacks</a>, <a href="../../../../org/apache/felix/dm/Component.html#setComposition-java.lang.Object-java.lang.String-">setComposition</a>, <a href="../../../../org/apache/felix/dm/Component.html#setComposition-java.lang.String-">setComposition</a>, <a href="../../../../org/apache/felix/dm/Component.html#setDebug-java.lang.String-">setDebug</a>, <a href="../../../../org/apache/felix/dm/Component.html#setFactory-java.lang.Object-java.lang.String-">setFactory</a>, <a href="../../../../org/apache/felix/dm/Component.html#setFactory-java.lang.String-">setFactory</a>, <a href="../../../../org/apache/felix/dm/Component.html#setImplementation-java.lang.Object-">setImplementation</a>, <a href="../../../../org/apache/felix/dm/Component.html#setInterface-java.lang.Class:A-java.util.Dictionary-">setInterface</a>, <a href="../../../../org/apache/felix/dm/Component.html#setIn terface-java.lang.Class-java.util.Dictionary-">setInterface</a>, <a href="../../../../org/apache/felix/dm/Component.html#setInterface-java.lang.String:A-java.util.Dictionary-">setInterface</a>, <a href="../../../../org/apache/felix/dm/Component.html#setInterface-java.lang.String-java.util.Dictionary-">setInterface</a>, <a href="../../../../org/apache/felix/dm/Component.html#setScope-org.apache.felix.dm.Component.ServiceScope-">setScope</a>, <a href="../../../../org/apache/felix/dm/Component.html#setServiceProperties-java.util.Dictionary-">setServiceProperties</a></code></li> +</ul> +<ul class="blockList"> +<li class="blockList"><a name="methods.inherited.from.class.org.apache.felix.dm.AbstractComponent"> +<!-- --> +</a> +<h3>Methods inherited from interface org.apache.felix.dm.<a href="../../../../org/apache/felix/dm/AbstractComponent.html" title="interface in org.apache.felix.dm">AbstractComponent</a></h3> +<code><a href="../../../../org/apache/felix/dm/AbstractComponent.html#getComponentDeclaration--">getComponentDeclaration</a>, <a href="../../../../org/apache/felix/dm/AbstractComponent.html#getDependencyManager--">getDependencyManager</a>, <a href="../../../../org/apache/felix/dm/AbstractComponent.html#getInstance--">getInstance</a>, <a href="../../../../org/apache/felix/dm/AbstractComponent.html#getInstances--">getInstances</a>, <a href="../../../../org/apache/felix/dm/AbstractComponent.html#getServiceProperties--">getServiceProperties</a></code></li> +</ul> +</li> +</ul> +</li> +</ul> +</div> +<div class="details"> +<ul class="blockList"> +<li class="blockList"> +<!-- ============ METHOD DETAIL ========== --> +<ul class="blockList"> +<li class="blockList"><a name="method.detail"> +<!-- --> +</a> +<h3>Method Detail</h3> +<a name="setAspect-java.lang.Class-java.lang.String-int-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>setAspect</h4> +<pre><a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm">AspectComponent</a> setAspect(java.lang.Class<?> service, + java.lang.String filter, + int ranking)</pre> +<div class="block">Sets the service interface to apply the aspect to (required parameter)</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>service</code> - the service interface to apply the aspect to</dd> +<dd><code>filter</code> - the filter condition to use with the service aspect interface (null if no filter)</dd> +<dd><code>ranking</code> - the level used to organize the aspect chain ordering</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>this aspect parameter instance</dd> +</dl> +</li> +</ul> +<a name="setAspectField-java.lang.String-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>setAspectField</h4> +<pre><a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm">AspectComponent</a> setAspectField(java.lang.String autoConfig)</pre> +<div class="block">Sets the aspect implementation field name where to inject original service (optional parameter). + If not set or null, any field matching the original service will be injected.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>autoConfig</code> - the aspect implementation field name where to inject original service</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>this aspect parameter instance</dd> +</dl> +</li> +</ul> +<a name="setAspectCallbacks-java.lang.String-java.lang.String-java.lang.String-java.lang.String-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>setAspectCallbacks</h4> +<pre><a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm">AspectComponent</a> setAspectCallbacks(java.lang.String add, + java.lang.String change, + java.lang.String remove, + java.lang.String swap)</pre> +<div class="block">Sets name of the callbacks method to invoke on add,change,remove, or swap callbacks (optional parameter).</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>add</code> - name of the callback method to invoke on add</dd> +<dd><code>change</code> - name of the callback method to invoke on change</dd> +<dd><code>remove</code> - name of the callback method to invoke on remove</dd> +<dd><code>swap</code> - name of the callback method to invoke on swap</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>this aspect parameter instance</dd> +</dl> +</li> +</ul> +<a name="setAspectCallbackInstance-java.lang.Object-"> +<!-- --> +</a> +<ul class="blockListLast"> +<li class="blockList"> +<h4>setAspectCallbackInstance</h4> +<pre><a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm">AspectComponent</a> setAspectCallbackInstance(java.lang.Object callbackInstance)</pre> +<div class="block">Sets the instance to invoke the callbacks on (optional parameter). + null means the callbacks will be invoked on the aspect implementation object.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>callbackInstance</code> - the instance to invoke the callbacks on</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>this aspect parameter instance</dd> +</dl> +</li> +</ul> +</li> +</ul> +</li> +</ul> +</div> +</div> +<!-- ========= END OF CLASS DATA ========= --> +<!-- ======= START OF BOTTOM NAVBAR ====== --> +<div class="bottomNav"><a name="navbar.bottom"> +<!-- --> +</a> +<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> +<a name="navbar.bottom.firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../../index-all.html">Index</a></li> +<li><a href="../../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li><a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../org/apache/felix/dm/BundleComponent.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../index.html?org/apache/felix/dm/AspectComponent.html" target="_top">Frames</a></li> +<li><a href="AspectComponent.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_bottom"> +<li><a href="../../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_bottom"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.detail">Method</a></li> +</ul> +</div> +<a name="skip.navbar.bottom"> +<!-- --> +</a></div> +<!-- ======== END OF BOTTOM NAVBAR ======= --> +</body> +</html> Added: websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/org/apache/felix/dm/BundleComponent.html ============================================================================== --- websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/org/apache/felix/dm/BundleComponent.html (added) +++ websites/staging/felix/trunk/content/apidocs/dependencymanager/r13/org/apache/felix/dm/BundleComponent.html Mon Oct 22 16:46:37 2018 @@ -0,0 +1,400 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<!-- NewPage --> +<html lang="en"> +<head> +<!-- Generated by javadoc (1.8.0_172) on Mon Oct 22 18:34:41 CEST 2018 --> +<title>BundleComponent</title> +<meta name="date" content="2018-10-22"> +<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> +<script type="text/javascript" src="../../../../script.js"></script> +</head> +<body> +<script type="text/javascript"><!-- + try { + if (location.href.indexOf('is-external=true') == -1) { + parent.document.title="BundleComponent"; + } + } + catch(err) { + } +//--> +var methods = {"i0":6,"i1":6,"i2":6,"i3":6}; +var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]}; +var altColor = "altColor"; +var rowColor = "rowColor"; +var tableTab = "tableTab"; +var activeTableTab = "activeTableTab"; +</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="topNav"><a name="navbar.top"> +<!-- --> +</a> +<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> +<a name="navbar.top.firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../../index-all.html">Index</a></li> +<li><a href="../../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li><a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../org/apache/felix/dm/BundleDependency.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../index.html?org/apache/felix/dm/BundleComponent.html" target="_top">Frames</a></li> +<li><a href="BundleComponent.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_top"> +<li><a href="../../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_top"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.detail">Method</a></li> +</ul> +</div> +<a name="skip.navbar.top"> +<!-- --> +</a></div> +<!-- ========= END OF TOP NAVBAR ========= --> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="subTitle">org.apache.felix.dm</div> +<h2 title="Interface BundleComponent" class="title">Interface BundleComponent</h2> +</div> +<div class="contentContainer"> +<div class="description"> +<ul class="blockList"> +<li class="blockList"> +<dl> +<dt>All Superinterfaces:</dt> +<dd><a href="../../../../org/apache/felix/dm/AbstractComponent.html" title="interface in org.apache.felix.dm">AbstractComponent</a>, <a href="../../../../org/apache/felix/dm/Component.html" title="interface in org.apache.felix.dm">Component</a><<a href="../../../../org/apache/felix/dm/BundleComponent.html" title="interface in org.apache.felix.dm">BundleComponent</a>></dd> +</dl> +<hr> +<br> +<pre>public interface <span class="typeNameLabel">BundleComponent</span> +extends <a href="../../../../org/apache/felix/dm/Component.html" title="interface in org.apache.felix.dm">Component</a><<a href="../../../../org/apache/felix/dm/BundleComponent.html" title="interface in org.apache.felix.dm">BundleComponent</a>></pre> +<div class="block">Interface used to configure the various parameters needed when defining + a Dependency Manager bundle adapter component. + + Bundle Adapters, like <a href="../../../../org/apache/felix/dm/AdapterComponent.html" title="interface in org.apache.felix.dm"><code>AdapterComponent</code></a>, are used to "extend" + existing bundles, and can publish an adapter services based on the existing bundle. + An example would be implementing a video player which adapters a resource bundle having + some specific headers. + <p>When you create a bundle adapter component, it will be applied + to any bundle that matches the specified bundle state mask as well as the specified ldap filter + used to match the bundle manifest headers. The bundle adapter will be registered + with the specified bundle manifest headers as service properties, plus any extra + properties you suppl. If you declare a bundle field in your bundle adapter class, + it will be injected it will be injected with the original bundle. + + <h3>Usage Examples</h3> + + Here is a sample showing a VideoPlayer adapter component which plays a video found from + a bundle having a Video-Path manifest header. + + <blockquote><pre> + <code> + public class Activator extends DependencyActivatorBase { + &Override + public void init(BundleContext context, DependencyManager dm) throws Exception { + Component bundleComponent = createBundleComponent() + .setFilter(Bundle.ACTIVE, "(Video-Path=*)") + .setInterface(VideoPlayer.class.getName(), null) + .setImplementation(VideoPlayerImpl.class); + dm.add(bundleComponent); + } + } + + public interface VideoPlayer { + void play(); + } + + public class VideoPlayerImpl implements VideoPlayer { + volatile Bundle bundle; // injected + String path; + + void start() { + path = bundle.getHeaders().get("Video-Path"); + } + + void play() { + ... + } + } + </code> </pre></blockquote> + + <p> When you use callbacks to get injected with the bundle, the "add", "change", "remove" callbacks + support the following method signatures: + + <pre><code> + (Bundle) + (Object) + (COmponent, Bundle) + </code></pre></div> +<dl> +<dt><span class="seeLabel">See Also:</span></dt> +<dd><a href="../../../../org/apache/felix/dm/DependencyManager.html#createBundleComponent--"><code>DependencyManager.createBundleComponent()</code></a></dd> +</dl> +</li> +</ul> +</div> +<div class="summary"> +<ul class="blockList"> +<li class="blockList"> +<!-- ======== NESTED CLASS SUMMARY ======== --> +<ul class="blockList"> +<li class="blockList"><a name="nested.class.summary"> +<!-- --> +</a> +<h3>Nested Class Summary</h3> +<ul class="blockList"> +<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.felix.dm.Component"> +<!-- --> +</a> +<h3>Nested classes/interfaces inherited from interface org.apache.felix.dm.<a href="../../../../org/apache/felix/dm/Component.html" title="interface in org.apache.felix.dm">Component</a></h3> +<code><a href="../../../../org/apache/felix/dm/Component.ServiceScope.html" title="enum in org.apache.felix.dm">Component.ServiceScope</a></code></li> +</ul> +</li> +</ul> +<!-- ========== METHOD SUMMARY =========== --> +<ul class="blockList"> +<li class="blockList"><a name="method.summary"> +<!-- --> +</a> +<h3>Method Summary</h3> +<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> +<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd"> </span></span></caption> +<tr> +<th class="colFirst" scope="col">Modifier and Type</th> +<th class="colLast" scope="col">Method and Description</th> +</tr> +<tr id="i0" class="altColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/BundleComponent.html" title="interface in org.apache.felix.dm">BundleComponent</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/BundleComponent.html#setBundleCallbackInstance-java.lang.Object-">setBundleCallbackInstance</a></span>(java.lang.Object callbackInstance)</code> +<div class="block">Sets the instance to invoke the callbacks on (null by default, meaning the callbacks have to be invoked on the adapter itself)</div> +</td> +</tr> +<tr id="i1" class="rowColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/BundleComponent.html" title="interface in org.apache.felix.dm">BundleComponent</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/BundleComponent.html#setBundleCallbacks-java.lang.String-java.lang.String-java.lang.String-">setBundleCallbacks</a></span>(java.lang.String add, + java.lang.String change, + java.lang.String remove)</code> +<div class="block">Sets the callbacks to invoke when injecting the bundle into the adapter component.</div> +</td> +</tr> +<tr id="i2" class="altColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/BundleComponent.html" title="interface in org.apache.felix.dm">BundleComponent</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/BundleComponent.html#setBundleFilter-int-java.lang.String-">setBundleFilter</a></span>(int bundleStateMask, + java.lang.String bundleFilter)</code> +<div class="block">Sets the bundle state mask and bundle manifest headers filter.</div> +</td> +</tr> +<tr id="i3" class="rowColor"> +<td class="colFirst"><code><a href="../../../../org/apache/felix/dm/BundleComponent.html" title="interface in org.apache.felix.dm">BundleComponent</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/felix/dm/BundleComponent.html#setPropagate-boolean-">setPropagate</a></span>(boolean propagate)</code> +<div class="block">Sets if the bundle manifest headers should be propagated to the bundle component adapter service consumer (true by default).</div> +</td> +</tr> +</table> +<ul class="blockList"> +<li class="blockList"><a name="methods.inherited.from.class.org.apache.felix.dm.Component"> +<!-- --> +</a> +<h3>Methods inherited from interface org.apache.felix.dm.<a href="../../../../org/apache/felix/dm/Component.html" title="interface in org.apache.felix.dm">Component</a></h3> +<code><a href="../../../../org/apache/felix/dm/Component.html#add-org.apache.felix.dm.ComponentStateListener-">add</a>, <a href="../../../../org/apache/felix/dm/Component.html#add-org.apache.felix.dm.Dependency...-">add</a>, <a href="../../../../org/apache/felix/dm/Component.html#getServiceRegistration--">getServiceRegistration</a>, <a href="../../../../org/apache/felix/dm/Component.html#remove-org.apache.felix.dm.ComponentStateListener-">remove</a>, <a href="../../../../org/apache/felix/dm/Component.html#remove-org.apache.felix.dm.Dependency-">remove</a>, <a href="../../../../org/apache/felix/dm/Component.html#setAutoConfig-java.lang.Class-boolean-">setAutoConfig</a>, <a href="../../../../org/apache/felix/dm/Component.html#setAutoConfig-java.lang.Class-java.lang.String-">setAutoConfig</a>, <a href="../../../../org/apache/felix/dm/Component.html#setCallbacks-java.lang.Object-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">setCallbacks</a>, <a href="../../../../ org/apache/felix/dm/Component.html#setCallbacks-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">setCallbacks</a>, <a href="../../../../org/apache/felix/dm/Component.html#setComposition-java.lang.Object-java.lang.String-">setComposition</a>, <a href="../../../../org/apache/felix/dm/Component.html#setComposition-java.lang.String-">setComposition</a>, <a href="../../../../org/apache/felix/dm/Component.html#setDebug-java.lang.String-">setDebug</a>, <a href="../../../../org/apache/felix/dm/Component.html#setFactory-java.lang.Object-java.lang.String-">setFactory</a>, <a href="../../../../org/apache/felix/dm/Component.html#setFactory-java.lang.String-">setFactory</a>, <a href="../../../../org/apache/felix/dm/Component.html#setImplementation-java.lang.Object-">setImplementation</a>, <a href="../../../../org/apache/felix/dm/Component.html#setInterface-java.lang.Class:A-java.util.Dictionary-">setInterface</a>, <a href="../../../../org/apache/felix/dm/Component.html#setIn terface-java.lang.Class-java.util.Dictionary-">setInterface</a>, <a href="../../../../org/apache/felix/dm/Component.html#setInterface-java.lang.String:A-java.util.Dictionary-">setInterface</a>, <a href="../../../../org/apache/felix/dm/Component.html#setInterface-java.lang.String-java.util.Dictionary-">setInterface</a>, <a href="../../../../org/apache/felix/dm/Component.html#setScope-org.apache.felix.dm.Component.ServiceScope-">setScope</a>, <a href="../../../../org/apache/felix/dm/Component.html#setServiceProperties-java.util.Dictionary-">setServiceProperties</a></code></li> +</ul> +<ul class="blockList"> +<li class="blockList"><a name="methods.inherited.from.class.org.apache.felix.dm.AbstractComponent"> +<!-- --> +</a> +<h3>Methods inherited from interface org.apache.felix.dm.<a href="../../../../org/apache/felix/dm/AbstractComponent.html" title="interface in org.apache.felix.dm">AbstractComponent</a></h3> +<code><a href="../../../../org/apache/felix/dm/AbstractComponent.html#getComponentDeclaration--">getComponentDeclaration</a>, <a href="../../../../org/apache/felix/dm/AbstractComponent.html#getDependencyManager--">getDependencyManager</a>, <a href="../../../../org/apache/felix/dm/AbstractComponent.html#getInstance--">getInstance</a>, <a href="../../../../org/apache/felix/dm/AbstractComponent.html#getInstances--">getInstances</a>, <a href="../../../../org/apache/felix/dm/AbstractComponent.html#getServiceProperties--">getServiceProperties</a></code></li> +</ul> +</li> +</ul> +</li> +</ul> +</div> +<div class="details"> +<ul class="blockList"> +<li class="blockList"> +<!-- ============ METHOD DETAIL ========== --> +<ul class="blockList"> +<li class="blockList"><a name="method.detail"> +<!-- --> +</a> +<h3>Method Detail</h3> +<a name="setBundleFilter-int-java.lang.String-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>setBundleFilter</h4> +<pre><a href="../../../../org/apache/felix/dm/BundleComponent.html" title="interface in org.apache.felix.dm">BundleComponent</a> setBundleFilter(int bundleStateMask, + java.lang.String bundleFilter)</pre> +<div class="block">Sets the bundle state mask and bundle manifest headers filter.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>bundleStateMask</code> - the bundle state mask to apply</dd> +<dd><code>bundleFilter</code> - the filter to apply to the bundle manifest</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>this BundleComponent</dd> +</dl> +</li> +</ul> +<a name="setBundleCallbacks-java.lang.String-java.lang.String-java.lang.String-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>setBundleCallbacks</h4> +<pre><a href="../../../../org/apache/felix/dm/BundleComponent.html" title="interface in org.apache.felix.dm">BundleComponent</a> setBundleCallbacks(java.lang.String add, + java.lang.String change, + java.lang.String remove)</pre> +<div class="block">Sets the callbacks to invoke when injecting the bundle into the adapter component.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>add</code> - name of the callback method to invoke on add</dd> +<dd><code>change</code> - name of the callback method to invoke on change</dd> +<dd><code>remove</code> - name of the callback method to invoke on remove</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>this BundleComponent</dd> +</dl> +</li> +</ul> +<a name="setBundleCallbackInstance-java.lang.Object-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>setBundleCallbackInstance</h4> +<pre><a href="../../../../org/apache/felix/dm/BundleComponent.html" title="interface in org.apache.felix.dm">BundleComponent</a> setBundleCallbackInstance(java.lang.Object callbackInstance)</pre> +<div class="block">Sets the instance to invoke the callbacks on (null by default, meaning the callbacks have to be invoked on the adapter itself)</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>callbackInstance</code> - the instance to invoke the callbacks on (null by default, meaning the callbacks have to be invoked on the adapter itself)</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>this BundleComponent</dd> +</dl> +</li> +</ul> +<a name="setPropagate-boolean-"> +<!-- --> +</a> +<ul class="blockListLast"> +<li class="blockList"> +<h4>setPropagate</h4> +<pre><a href="../../../../org/apache/felix/dm/BundleComponent.html" title="interface in org.apache.felix.dm">BundleComponent</a> setPropagate(boolean propagate)</pre> +<div class="block">Sets if the bundle manifest headers should be propagated to the bundle component adapter service consumer (true by default). + The component service properties take precedence over the propagated bundle manifest headers.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>propagate</code> - true if the bundle manifest headers should be propagated to the adapter service consumers</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>this BundleComponent</dd> +</dl> +</li> +</ul> +</li> +</ul> +</li> +</ul> +</div> +</div> +<!-- ========= END OF CLASS DATA ========= --> +<!-- ======= START OF BOTTOM NAVBAR ====== --> +<div class="bottomNav"><a name="navbar.bottom"> +<!-- --> +</a> +<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> +<a name="navbar.bottom.firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../../index-all.html">Index</a></li> +<li><a href="../../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li><a href="../../../../org/apache/felix/dm/AspectComponent.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../org/apache/felix/dm/BundleDependency.html" title="interface in org.apache.felix.dm"><span class="typeNameLink">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../index.html?org/apache/felix/dm/BundleComponent.html" target="_top">Frames</a></li> +<li><a href="BundleComponent.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_bottom"> +<li><a href="../../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_bottom"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method.detail">Method</a></li> +</ul> +</div> +<a name="skip.navbar.bottom"> +<!-- --> +</a></div> +<!-- ======== END OF BOTTOM NAVBAR ======= --> +</body> +</html>