Modified:
websites/staging/felix/trunk/content/apidocs/dependencymanager.lambda/r7/org/apache/felix/dm/lambda/ComponentBuilder.html
==============================================================================
---
websites/staging/felix/trunk/content/apidocs/dependencymanager.lambda/r7/org/apache/felix/dm/lambda/ComponentBuilder.html
(original)
+++
websites/staging/felix/trunk/content/apidocs/dependencymanager.lambda/r7/org/apache/felix/dm/lambda/ComponentBuilder.html
Wed Feb 24 00:19:46 2016
@@ -2,9 +2,9 @@
<!-- NewPage -->
<html lang="en">
<head>
-<!-- Generated by javadoc (1.8.0_72) on Thu Feb 04 08:50:09 CET 2016 -->
+<!-- Generated by javadoc (1.8.0_74) on Wed Feb 24 01:07:32 CET 2016 -->
<title>ComponentBuilder</title>
-<meta name="date" content="2016-02-04">
+<meta name="date" content="2016-02-24">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css"
title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
@@ -18,7 +18,7 @@
catch(err) {
}
//-->
-var methods =
{"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6,"i17":6,"i18":6,"i19":6,"i20":6,"i21":6,"i22":6,"i23":6,"i24":6,"i25":6,"i26":6,"i27":6,"i28":6,"i29":6,"i30":6,"i31":6,"i32":6,"i33":6,"i34":6,"i35":6,"i36":6,"i37":6,"i38":6,"i39":6,"i40":6,"i41":6,"i42":6,"i43":6,"i44":6,"i45":6,"i46":6,"i47":6,"i48":6,"i49":6,"i50":6,"i51":6,"i52":6,"i53":6,"i54":6,"i55":6,"i56":6,"i57":6,"i58":18,"i59":6,"i60":18,"i61":6,"i62":6,"i63":6,"i64":6};
+var methods =
{"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6,"i17":6,"i18":6,"i19":6,"i20":6,"i21":6,"i22":6,"i23":6,"i24":6,"i25":6,"i26":6,"i27":6,"i28":6,"i29":6,"i30":6,"i31":6,"i32":6,"i33":6,"i34":6,"i35":6,"i36":6,"i37":6,"i38":6,"i39":6,"i40":6,"i41":6,"i42":6,"i43":6,"i44":6,"i45":6,"i46":6,"i47":6,"i48":6,"i49":6,"i50":6,"i51":6,"i52":6,"i53":6,"i54":6,"i55":6,"i56":18,"i57":6,"i58":6,"i59":6,"i60":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance
Methods"],4:["t3","Abstract Methods"],16:["t5","Default Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
@@ -109,20 +109,19 @@ var activeTableTab = "activeTableTab";
<hr>
<br>
<pre>public interface <span class="typeNameLabel">ComponentBuilder<B
extends ComponentBuilder<B>></span></pre>
-<div class="block">Builds a Dependency Manager Component. Components are the
main building blocks for OSGi applications.
+<div class="block">Builds a Dependency Manager Component. <p> Components are
the main building blocks for OSGi applications.
They can publish themselves as a service, and they can have dependencies.
These dependencies will influence their life cycle as component will only be
activated when all
- required dependencies are available.
-
- <p> This interface is also the base interface for extended components like
aspects, adapters, etc ...
+ required dependencies are available. This interface is also the base
interface for extended components like
+ aspects, adapters, etc ...
<p> Example of a component that depends on a ConfigurationAdmin service. The
dependency is injected by reflection
on a class field which type matches the ConfigurationAdmin interface:
<pre><code>
public class Activator extends DependencyManagerActivator {
- public void activate() throws Exception {
- component(comp ->
comp.impl(Configurator.class).withSrv(ConfigurationAdmin.class));
+ public void init(BundleContext ctx, DependencyManager dm) throws Exception {
+ component(comp ->
comp.impl(Configurator.class).withSvc(ConfigurationAdmin.class));
}
}
</code> </pre></div>
@@ -198,63 +197,56 @@ var activeTableTab = "activeTableTab";
</td>
</tr>
<tr id="i8" class="altColor">
-<td class="colFirst"><code><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#destroy-org.apache.felix.dm.lambda.callbacks.CbConsumer-">destroy</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbConsumer.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbConsumer</a><U> callback)</code>
-<div class="block">Sets a method reference used as the "destroy"
callback.</div>
+<td class="colFirst"><code><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#destroy-org.apache.felix.dm.lambda.callbacks.Cb-">destroy</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/Cb.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">Cb</a><T> callback)</code>
+<div class="block">Sets a reference to a component implementation class
"destroy" callback method.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
-<td class="colFirst"><code><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#destroy-org.apache.felix.dm.lambda.callbacks.CbTypeComponent-">destroy</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbTypeComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbTypeComponent</a><U> callback)</code>
-<div class="block">Sets a method reference used as the "destroy"
callback.</div>
+<td class="colFirst"><code><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#destroy-org.apache.felix.dm.lambda.callbacks.CbComponent-">destroy</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbComponent</a><T> callback)</code>
+<div class="block">Sets a reference to a component implementation class
"destroy" callback method.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#destroy-java.lang.Object-java.lang.String-">destroy</a></span>(java.lang.Object callbackInstance,
- java.lang.String callback)</code>
-<div class="block">Sets the name of the methods used as destroy callback that
is invoked on a given Object instance.</div>
-</td>
-</tr>
-<tr id="i11" class="rowColor">
-<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#destroy-java.lang.String-">destroy</a></span>(java.lang.String callback)</code>
<div class="block">Sets the name of the method used as the "destroy"
callback.</div>
</td>
</tr>
-<tr id="i12" class="altColor">
+<tr id="i11" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#destroyInstance-org.apache.felix.dm.lambda.callbacks.CbComponent-">destroyInstance</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbComponent</a> callback)</code>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#destroyInstance-org.apache.felix.dm.lambda.callbacks.InstanceCb-">destroyInstance</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/InstanceCb.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">InstanceCb</a> callback)</code>
<div class="block">Sets an Object instance method reference used as the
"destroy" callback.</div>
</td>
</tr>
-<tr id="i13" class="rowColor">
+<tr id="i12" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#destroyInstance-java.lang.Runnable-">destroyInstance</a></span>(java.lang.Runnable callback)</code>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#destroyInstance-org.apache.felix.dm.lambda.callbacks.InstanceCbComponent-">destroyInstance</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/InstanceCbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">InstanceCbComponent</a> callback)</code>
<div class="block">Sets an Object instance method reference used as the
"destroy" callback.</div>
</td>
</tr>
-<tr id="i14" class="altColor">
+<tr id="i13" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#factory-java.lang.Object-java.lang.String-">factory</a></span>(java.lang.Object factory,
java.lang.String createMethod)</code>
-<div class="block">Sets the factory to use to create the implementation.</div>
+<div class="block">Sets the factory to use when creating the
implementation.</div>
</td>
</tr>
-<tr id="i15" class="rowColor">
+<tr id="i14" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#factory-java.util.function.Supplier-">factory</a></span>(java.util.function.Supplier<?> create)</code>
<div class="block">Configures a factory that can be used to create this
component implementation.</div>
</td>
</tr>
-<tr id="i16" class="altColor">
+<tr id="i15" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#factory-java.util.function.Supplier-java.util.function.Supplier-">factory</a></span>(java.util.function.Supplier<?> factory,
java.util.function.Supplier<java.lang.Object[]> getComposition)</code>
-<div class="block">Configures a factory used to create this component
implementation using a Factory object and a "getComponent" factory method.</div>
+<div class="block">Configures a factory used to create this component
implementation using a Factory object and a "getComposition" factory
method.</div>
</td>
</tr>
-<tr id="i17" class="rowColor">
+<tr id="i16" class="altColor">
<td class="colFirst"><code><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#factory-java.util.function.Supplier-java.util.function.Function-java.util.function.Function-">factory</a></span>(java.util.function.Supplier<U> factory,
java.util.function.Function<U,?> create,
@@ -262,69 +254,68 @@ var activeTableTab = "activeTableTab";
<div class="block">Configures a factory that also returns a composition of
objects for this component implemenation.</div>
</td>
</tr>
-<tr id="i18" class="altColor">
+<tr id="i17" class="rowColor">
<td class="colFirst"><code><U,V> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#factory-java.util.function.Supplier-java.util.function.Function-">factory</a></span>(java.util.function.Supplier<U> factory,
java.util.function.Function<U,V> create)</code>
<div class="block">Configures a factory used to create this component
implementation using a Factory object and a method in the Factory object.</div>
</td>
</tr>
-<tr id="i19" class="rowColor">
+<tr id="i18" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#impl-java.lang.Object-">impl</a></span>(java.lang.Object impl)</code>
<div class="block">Configures the component implementation.</div>
</td>
</tr>
+<tr id="i19" class="rowColor">
+<td class="colFirst"><code><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#init-org.apache.felix.dm.lambda.callbacks.Cb-">init</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/Cb.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">Cb</a><T> callback)</code>
+<div class="block">Sets a reference to a component implementation class "init"
callback method.</div>
+</td>
+</tr>
<tr id="i20" class="altColor">
-<td class="colFirst"><code><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#init-org.apache.felix.dm.lambda.callbacks.CbConsumer-">init</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbConsumer.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbConsumer</a><U> callback)</code>
-<div class="block">Sets a method reference used as the "init" callback.</div>
+<td class="colFirst"><code><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#init-org.apache.felix.dm.lambda.callbacks.CbComponent-">init</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbComponent</a><T> callback)</code>
+<div class="block">Sets a reference to a component implementation class "init"
callback method.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
-<td class="colFirst"><code><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#init-org.apache.felix.dm.lambda.callbacks.CbTypeComponent-">init</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbTypeComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbTypeComponent</a><U> callback)</code>
-<div class="block">Sets a method reference used as the "init" callback.</div>
+<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#init-java.lang.String-">init</a></span>(java.lang.String callback)</code>
+<div class="block">Sets the name of the method used as the "init"
callback.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#init-java.lang.Object-java.lang.String-">init</a></span>(java.lang.Object callbackInstance,
- java.lang.String callback)</code>
-<div class="block">Sets the name of the methods used as init callback that is
invoked on a given Object instance.</div>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#initInstance-org.apache.felix.dm.lambda.callbacks.InstanceCb-">initInstance</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/InstanceCb.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">InstanceCb</a> callback)</code>
+<div class="block">Sets an Object instance method reference used as the "init"
callback.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#init-java.lang.String-">init</a></span>(java.lang.String callback)</code>
-<div class="block">Sets the name of the method used as the "init"
callback.</div>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#initInstance-org.apache.felix.dm.lambda.callbacks.InstanceCbComponent-">initInstance</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/InstanceCbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">InstanceCbComponent</a> callback)</code>
+<div class="block">Sets an Object instance method reference used as the "init"
callback.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#initInstance-org.apache.felix.dm.lambda.callbacks.CbComponent-">initInstance</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbComponent</a> callback)</code>
-<div class="block">Sets an Object instance method reference used as the "init"
callback.</div>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#lifecycleCallbackInstance-java.lang.Object-">lifecycleCallbackInstance</a></span>(java.lang.Object lifecycleCallbackInstance)</code>
+<div class="block">Sets the instance to invoke with the reflection based
lifecycle callbacks.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#initInstance-java.lang.Runnable-">initInstance</a></span>(java.lang.Runnable callback)</code>
-<div class="block">Sets an Object instance method reference used as the "init"
callback.</div>
-</td>
-</tr>
-<tr id="i26" class="altColor">
-<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#properties-java.util.Dictionary-">properties</a></span>(java.util.Dictionary<?,?> properties)</code>
<div class="block">Sets the component's service properties</div>
</td>
</tr>
-<tr id="i27" class="rowColor">
+<tr id="i26" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#properties-org.apache.felix.dm.lambda.FluentProperty...-">properties</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/FluentProperty.html"
title="interface in
org.apache.felix.dm.lambda">FluentProperty</a>... properties)</code>
<div class="block">Sets the components's service properties using List of
lamda properties.</div>
</td>
</tr>
-<tr id="i28" class="altColor">
+<tr id="i27" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#properties-java.lang.String-java.lang.Object-java.lang.Object...-">properties</a></span>(java.lang.String name,
java.lang.Object value,
@@ -332,33 +323,33 @@ var activeTableTab = "activeTableTab";
<div class="block">Sets the components's service properties using
varargs.</div>
</td>
</tr>
-<tr id="i29" class="rowColor">
+<tr id="i28" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.Class-">provides</a></span>(java.lang.Class<?> iface)</code>
-<div class="block">Sets the public interfaces under which this component
should be registered in the OSGi service registry.</div>
+<div class="block">Sets the public interface under which this component should
be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i30" class="altColor">
+<tr id="i29" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.Class:A-">provides</a></span>(java.lang.Class<?>[] ifaces)</code>
<div class="block">Sets the public interfaces under which this component
should be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i31" class="rowColor">
+<tr id="i30" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.Class:A-java.util.Dictionary-">provides</a></span>(java.lang.Class<?>[] ifaces,
java.util.Dictionary<?,?> properties)</code>
<div class="block">Sets the public interfaces under which this component
should be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i32" class="altColor">
+<tr id="i31" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.Class:A-org.apache.felix.dm.lambda.FluentProperty...-">provides</a></span>(java.lang.Class<?>[] ifaces,
<a
href="../../../../../org/apache/felix/dm/lambda/FluentProperty.html"
title="interface in
org.apache.felix.dm.lambda">FluentProperty</a>... properties)</code>
<div class="block">Sets the public interfaces under which this component
should be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i33" class="rowColor">
+<tr id="i32" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.Class:A-java.lang.String-java.lang.Object-java.lang.Object...-">provides</a></span>(java.lang.Class<?>[] ifaces,
java.lang.String name,
@@ -367,21 +358,21 @@ var activeTableTab = "activeTableTab";
<div class="block">Sets the public interfaces under which this component
should be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i34" class="altColor">
+<tr id="i33" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.Class-java.util.Dictionary-">provides</a></span>(java.lang.Class<?> iface,
java.util.Dictionary<?,?> properties)</code>
<div class="block">Sets the public interface under which this component should
be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i35" class="rowColor">
+<tr id="i34" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.Class-org.apache.felix.dm.lambda.FluentProperty...-">provides</a></span>(java.lang.Class<?> iface,
<a
href="../../../../../org/apache/felix/dm/lambda/FluentProperty.html"
title="interface in
org.apache.felix.dm.lambda">FluentProperty</a>... properties)</code>
<div class="block">Sets the public interface under which this component should
be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i36" class="altColor">
+<tr id="i35" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.Class-java.lang.String-java.lang.Object-java.lang.Object...-">provides</a></span>(java.lang.Class<?> iface,
java.lang.String name,
@@ -390,33 +381,33 @@ var activeTableTab = "activeTableTab";
<div class="block">Sets the public interface under which this component should
be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i37" class="rowColor">
+<tr id="i36" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.String-">provides</a></span>(java.lang.String iface)</code>
<div class="block">Sets the public interface under which this component should
be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i38" class="altColor">
+<tr id="i37" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.String:A-">provides</a></span>(java.lang.String[] ifaces)</code>
<div class="block">Sets the public interfaces under which this component
should be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i39" class="rowColor">
+<tr id="i38" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.String:A-java.util.Dictionary-">provides</a></span>(java.lang.String[] ifaces,
java.util.Dictionary<?,?> properties)</code>
<div class="block">Sets the public interfaces under which this component
should be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i40" class="altColor">
+<tr id="i39" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.String:A-org.apache.felix.dm.lambda.FluentProperty...-">provides</a></span>(java.lang.String[] ifaces,
<a
href="../../../../../org/apache/felix/dm/lambda/FluentProperty.html"
title="interface in
org.apache.felix.dm.lambda">FluentProperty</a>... properties)</code>
<div class="block">Sets the public interfaces under which this component
should be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i41" class="rowColor">
+<tr id="i40" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.String:A-java.lang.String-java.lang.Object-java.lang.Object...-">provides</a></span>(java.lang.String[] ifaces,
java.lang.String name,
@@ -425,21 +416,21 @@ var activeTableTab = "activeTableTab";
<div class="block">Sets the public interfaces under which this component
should be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i42" class="altColor">
+<tr id="i41" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.String-java.util.Dictionary-">provides</a></span>(java.lang.String iface,
java.util.Dictionary<?,?> properties)</code>
<div class="block">Sets the public interface under which this component should
be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i43" class="rowColor">
+<tr id="i42" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.String-org.apache.felix.dm.lambda.FluentProperty...-">provides</a></span>(java.lang.String iface,
<a
href="../../../../../org/apache/felix/dm/lambda/FluentProperty.html"
title="interface in
org.apache.felix.dm.lambda">FluentProperty</a>... properties)</code>
<div class="block">Sets the public interface under which this component should
be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i44" class="altColor">
+<tr id="i43" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#provides-java.lang.String-java.lang.String-java.lang.Object-java.lang.Object...-">provides</a></span>(java.lang.String iface,
java.lang.String name,
@@ -448,127 +439,107 @@ var activeTableTab = "activeTableTab";
<div class="block">Sets the public interface under which this component should
be registered in the OSGi service registry.</div>
</td>
</tr>
-<tr id="i45" class="rowColor">
-<td class="colFirst"><code><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#start-org.apache.felix.dm.lambda.callbacks.CbConsumer-">start</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbConsumer.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbConsumer</a><U> callback)</code>
-<div class="block">Sets a method reference used as the "start" callback.</div>
-</td>
-</tr>
-<tr id="i46" class="altColor">
-<td class="colFirst"><code><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#start-org.apache.felix.dm.lambda.callbacks.CbTypeComponent-">start</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbTypeComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbTypeComponent</a><U> callback)</code>
-<div class="block">Sets a method reference used as the "start" callback.</div>
+<tr id="i44" class="altColor">
+<td class="colFirst"><code><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#start-org.apache.felix.dm.lambda.callbacks.Cb-">start</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/Cb.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">Cb</a><T> callback)</code>
+<div class="block">Sets a reference to a component implementation class
"start" callback method.</div>
</td>
</tr>
-<tr id="i47" class="rowColor">
-<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#start-java.lang.Object-java.lang.String-">start</a></span>(java.lang.Object callbackInstance,
- java.lang.String callback)</code>
-<div class="block">Sets the name of the methods used as start callback that is
invoked on a given Object instance.</div>
+<tr id="i45" class="rowColor">
+<td class="colFirst"><code><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#start-org.apache.felix.dm.lambda.callbacks.CbComponent-">start</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbComponent</a><T> callback)</code>
+<div class="block">Sets a reference to a component implementation class
"start" callback method.</div>
</td>
</tr>
-<tr id="i48" class="altColor">
+<tr id="i46" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#start-java.lang.String-">start</a></span>(java.lang.String callback)</code>
<div class="block">Sets the name of the method used as the "start"
callback.</div>
</td>
</tr>
-<tr id="i49" class="rowColor">
+<tr id="i47" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#startInstance-org.apache.felix.dm.lambda.callbacks.CbComponent-">startInstance</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbComponent</a> callback)</code>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#startInstance-org.apache.felix.dm.lambda.callbacks.InstanceCb-">startInstance</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/InstanceCb.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">InstanceCb</a> callback)</code>
<div class="block">Sets an Object instance method reference used as the
"start" callback.</div>
</td>
</tr>
-<tr id="i50" class="altColor">
+<tr id="i48" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#startInstance-java.lang.Runnable-">startInstance</a></span>(java.lang.Runnable callback)</code>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#startInstance-org.apache.felix.dm.lambda.callbacks.InstanceCbComponent-">startInstance</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/InstanceCbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">InstanceCbComponent</a> callback)</code>
<div class="block">Sets an Object instance method reference used as the
"start" callback.</div>
</td>
</tr>
-<tr id="i51" class="rowColor">
-<td class="colFirst"><code><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#stop-org.apache.felix.dm.lambda.callbacks.CbConsumer-">stop</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbConsumer.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbConsumer</a><U> callback)</code>
-<div class="block">Sets a method reference used as the "stop" callback.</div>
-</td>
-</tr>
-<tr id="i52" class="altColor">
-<td class="colFirst"><code><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#stop-org.apache.felix.dm.lambda.callbacks.CbTypeComponent-">stop</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbTypeComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbTypeComponent</a><U> callback)</code>
-<div class="block">Sets a method reference used as the "stop" callback.</div>
+<tr id="i49" class="rowColor">
+<td class="colFirst"><code><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#stop-org.apache.felix.dm.lambda.callbacks.Cb-">stop</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/Cb.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">Cb</a><T> callback)</code>
+<div class="block">Sets a reference to a component implementation class "stop"
callback method.</div>
</td>
</tr>
-<tr id="i53" class="rowColor">
-<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#stop-java.lang.Object-java.lang.String-">stop</a></span>(java.lang.Object callbackInstance,
- java.lang.String callback)</code>
-<div class="block">Sets the name of the methods used as stop callback that is
invoked on a given Object instance.</div>
+<tr id="i50" class="altColor">
+<td class="colFirst"><code><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#stop-org.apache.felix.dm.lambda.callbacks.CbComponent-">stop</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbComponent</a><T> callback)</code>
+<div class="block">Sets a reference to a component implementation class "stop"
callback method.</div>
</td>
</tr>
-<tr id="i54" class="altColor">
+<tr id="i51" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#stop-java.lang.String-">stop</a></span>(java.lang.String callback)</code>
<div class="block">Sets the name of the method used as the "stop"
callback.</div>
</td>
</tr>
-<tr id="i55" class="rowColor">
+<tr id="i52" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#stopInstance-org.apache.felix.dm.lambda.callbacks.CbComponent-">stopInstance</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbComponent</a> callback)</code>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#stopInstance-org.apache.felix.dm.lambda.callbacks.InstanceCb-">stopInstance</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/InstanceCb.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">InstanceCb</a> callback)</code>
<div class="block">Sets an Object instance method reference used as the "stop"
callback.</div>
</td>
</tr>
-<tr id="i56" class="altColor">
+<tr id="i53" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#stopInstance-java.lang.Runnable-">stopInstance</a></span>(java.lang.Runnable callback)</code>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#stopInstance-org.apache.felix.dm.lambda.callbacks.InstanceCbComponent-">stopInstance</a></span>(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/InstanceCbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">InstanceCbComponent</a> callback)</code>
<div class="block">Sets an Object instance method reference used as the "stop"
callback.</div>
</td>
</tr>
-<tr id="i57" class="rowColor">
+<tr id="i54" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#withBundle-java.util.function.Consumer-">withBundle</a></span>(java.util.function.Consumer<<a
href="../../../../../org/apache/felix/dm/lambda/BundleDependencyBuilder.html"
title="interface in
org.apache.felix.dm.lambda">BundleDependencyBuilder</a>> consumer)</code>
<div class="block">Adds a bundle dependency.</div>
</td>
</tr>
-<tr id="i58" class="altColor">
-<td class="colFirst"><code>default <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#withCnf-java.lang.Class...-">withCnf</a></span>(java.lang.Class<?>... pids)</code>
-<div class="block">Adds multiple configuration dependencies in one single
call.</div>
-</td>
-</tr>
-<tr id="i59" class="rowColor">
+<tr id="i55" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#withCnf-java.util.function.Consumer-">withCnf</a></span>(java.util.function.Consumer<<a
href="../../../../../org/apache/felix/dm/lambda/ConfigurationDependencyBuilder.html"
title="interface in
org.apache.felix.dm.lambda">ConfigurationDependencyBuilder</a>> consumer)</code>
<div class="block">Adds a configuration dependency.</div>
</td>
</tr>
-<tr id="i60" class="altColor">
+<tr id="i56" class="altColor">
<td class="colFirst"><code>default <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#withCnf-java.lang.String...-">withCnf</a></span>(java.lang.String... pids)</code>
<div class="block">Adds multiple configuration dependencies in one single
call.</div>
</td>
</tr>
-<tr id="i61" class="rowColor">
+<tr id="i57" class="rowColor">
<td class="colFirst"><code><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#withFuture-java.util.concurrent.CompletableFuture-java.util.function.Consumer-">withFuture</a></span>(java.util.concurrent.CompletableFuture<U> future,
java.util.function.Consumer<<a
href="../../../../../org/apache/felix/dm/lambda/FutureDependencyBuilder.html"
title="interface in
org.apache.felix.dm.lambda">FutureDependencyBuilder</a><U>> consumer)</code>
<div class="block">Adds a CompletableFuture dependency.</div>
</td>
</tr>
-<tr id="i62" class="altColor">
+<tr id="i58" class="altColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#withSrv-java.lang.Class...-">withSrv</a></span>(java.lang.Class<?>... services)</code>
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#withSvc-java.lang.Class...-">withSvc</a></span>(java.lang.Class<?>... services)</code>
<div class="block">Adds in one shot multiple required/autoconfig service
dependencies.</div>
</td>
</tr>
-<tr id="i63" class="rowColor">
+<tr id="i59" class="rowColor">
<td class="colFirst"><code><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#withSrv-java.lang.Class-java.lang.String-">withSrv</a></span>(java.lang.Class<?> service,
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#withSvc-java.lang.Class-java.lang.String-">withSvc</a></span>(java.lang.Class<?> service,
java.lang.String filter)</code>
<div class="block">Adds a required/autoconfig service dependency.</div>
</td>
</tr>
-<tr id="i64" class="altColor">
+<tr id="i60" class="altColor">
<td class="colFirst"><code><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#withSrv-java.lang.Class-java.util.function.Consumer-">withSrv</a></span>(java.lang.Class<U> service,
+<td class="colLast"><code><span class="memberNameLink"><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#withSvc-java.lang.Class-java.util.function.Consumer-">withSvc</a></span>(java.lang.Class<U> service,
java.util.function.Consumer<<a
href="../../../../../org/apache/felix/dm/lambda/ServiceDependencyBuilder.html"
title="interface in
org.apache.felix.dm.lambda">ServiceDependencyBuilder</a><U>> consumer)</code>
<div class="block">Adds a service dependency built using a Consumer lambda
that is provided with a ServiceDependencyBuilder.</div>
</td>
@@ -612,13 +583,13 @@ var activeTableTab = "activeTableTab";
<h4>factory</h4>
<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> factory(java.lang.Object factory,
java.lang.String createMethod)</pre>
-<div class="block">Sets the factory to use to create the implementation. You
can specify both the factory class and method to invoke. The method should
return the implementation,
+<div class="block">Sets the factory to use when creating the implementation.
You can specify both the factory class and method to invoke. The method should
return the implementation,
and can use any method to create it. Actually, this can be used together with
setComposition to create a composition of instances that work together to
implement
a component. The factory itself can also be instantiated lazily by not
specifying an instance, but a Class.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>factory</code> - the factory instance, or the factory class.</dd>
-<dd><code>createMethod</code> - the create method called on the factory in
order to instantiate the component instance.</dd>
+<dd><code>createMethod</code> - the create method called on the factory in
order to instantiate the component.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder</dd>
</dl>
@@ -679,8 +650,9 @@ var activeTableTab = "activeTableTab";
<h4>factory</h4>
<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> factory(java.util.function.Supplier<?> factory,
java.util.function.Supplier<java.lang.Object[]> getComposition)</pre>
-<div class="block">Configures a factory used to create this component
implementation using a Factory object and a "getComponent" factory method.
- the Factory method may then return multiple objects that will be part of this
component implementation.
+<div class="block">Configures a factory used to create this component
implementation using a Factory object and a "getComposition" factory method.
+ the Factory method may then return multiple objects that will be part of this
component implementation, and
+ all of them will be searched when injecting any of the dependencies.
Example:
@@ -715,8 +687,9 @@ var activeTableTab = "activeTableTab";
factory(CompositionManager::new, CompositionManager::create,
CompositionManager::getComposition).
</code></pre>
- Here, the CompositionManager will act as a factory (the create method will
return the component implementation object), and the
- CompositionManager.getComposition() method will return all the objects that
are also part of the component implementation.</div>
+ Here, the CompositionManager will act as a factory (the create method will
return the component implementation object), the
+ CompositionManager.getComposition() method will return all the objects that
are also part of the component implementation,
+ and all of them will be searched for injecting any of the dependencies.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>U</code> - the type of the object returned by the supplier
factory</dd>
@@ -736,10 +709,10 @@ var activeTableTab = "activeTableTab";
<li class="blockList">
<h4>provides</h4>
<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> provides(java.lang.Class<?> iface)</pre>
-<div class="block">Sets the public interfaces under which this component
should be registered in the OSGi service registry.</div>
+<div class="block">Sets the public interface under which this component should
be registered in the OSGi service registry.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>iface</code> - the public interfaces to register in the OSGI service
registry.</dd>
+<dd><code>iface</code> - the public interface to register in the OSGI service
registry.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder</dd>
</dl>
@@ -758,7 +731,7 @@ var activeTableTab = "activeTableTab";
<div class="block">Sets the public interface under which this component should
be registered in the OSGi service registry.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>iface</code> - the public interfaces to register in the OSGI service
registry.</dd>
+<dd><code>iface</code> - the public interface to register in the OSGI service
registry.</dd>
<dd><code>name</code> - a property name for the provided service</dd>
<dd><code>value</code> - a property value for the provided service</dd>
<dd><code>rest</code> - the rest of property name/value pairs.</dd>
@@ -785,7 +758,7 @@ var activeTableTab = "activeTableTab";
</code></pre></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>iface</code> - the public interfaces to register in the OSGI service
registry.</dd>
+<dd><code>iface</code> - the public interface to register in the OSGI service
registry.</dd>
<dd><code>properties</code> - a list of fluent service properties for the
provided service. You can specify a list of lambda expression, each one
implementing the
<a href="../../../../../org/apache/felix/dm/lambda/FluentProperty.html"
title="interface in org.apache.felix.dm.lambda"><code>FluentProperty</code></a>
interface that allows to define a property name using a lambda parameter.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
@@ -804,7 +777,7 @@ var activeTableTab = "activeTableTab";
<div class="block">Sets the public interface under which this component should
be registered in the OSGi service registry.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>iface</code> - the public interfaces to register in the OSGI service
registry.</dd>
+<dd><code>iface</code> - the public interface to register in the OSGI service
registry.</dd>
<dd><code>properties</code> - the properties for the provided service</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
@@ -921,7 +894,7 @@ var activeTableTab = "activeTableTab";
<div class="block">Sets the public interface under which this component should
be registered in the OSGi service registry.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>iface</code> - the public interfaces to register in the OSGI service
registry.</dd>
+<dd><code>iface</code> - the public interface to register in the OSGI service
registry.</dd>
<dd><code>name</code> - a property name for the provided service</dd>
<dd><code>value</code> - a property value for the provided service</dd>
<dd><code>rest</code> - the rest of property name/value pairs.</dd>
@@ -947,7 +920,7 @@ var activeTableTab = "activeTableTab";
</code></pre></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>iface</code> - the public interfaces to register in the OSGI service
registry.</dd>
+<dd><code>iface</code> - the public interface to register in the OSGI service
registry.</dd>
<dd><code>properties</code> - a list of fluent service properties for the
provided service. You can specify a list of lambda expression, each one
implementing the
<a href="../../../../../org/apache/felix/dm/lambda/FluentProperty.html"
title="interface in org.apache.felix.dm.lambda"><code>FluentProperty</code></a>
interface that allows to define a property name using a lambda parameter.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
@@ -966,7 +939,7 @@ var activeTableTab = "activeTableTab";
<div class="block">Sets the public interface under which this component should
be registered in the OSGi service registry.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>iface</code> - the public interfaces to register in the OSGI service
registry.</dd>
+<dd><code>iface</code> - the public interface to register in the OSGI service
registry.</dd>
<dd><code>properties</code> - the properties for the provided service</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
@@ -1119,13 +1092,13 @@ var activeTableTab = "activeTableTab";
</dl>
</li>
</ul>
-<a name="withSrv-java.lang.Class-java.lang.String-">
+<a name="withSvc-java.lang.Class-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
-<h4>withSrv</h4>
-<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> withSrv(java.lang.Class<?> service,
+<h4>withSvc</h4>
+<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> withSvc(java.lang.Class<?> service,
java.lang.String filter)</pre>
<div class="block">Adds a required/autoconfig service dependency.</div>
<dl>
@@ -1137,13 +1110,13 @@ var activeTableTab = "activeTableTab";
</dl>
</li>
</ul>
-<a name="withSrv-java.lang.Class...-">
+<a name="withSvc-java.lang.Class...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
-<h4>withSrv</h4>
-<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> withSrv(java.lang.Class<?>... services)</pre>
+<h4>withSvc</h4>
+<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> withSvc(java.lang.Class<?>... services)</pre>
<div class="block">Adds in one shot multiple required/autoconfig service
dependencies.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
@@ -1153,13 +1126,13 @@ var activeTableTab = "activeTableTab";
</dl>
</li>
</ul>
-<a name="withSrv-java.lang.Class-java.util.function.Consumer-">
+<a name="withSvc-java.lang.Class-java.util.function.Consumer-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
-<h4>withSrv</h4>
-<pre><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> withSrv(java.lang.Class<U> service,
+<h4>withSvc</h4>
+<pre><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> withSvc(java.lang.Class<U> service,
java.util.function.Consumer<<a
href="../../../../../org/apache/felix/dm/lambda/ServiceDependencyBuilder.html"
title="interface in
org.apache.felix.dm.lambda">ServiceDependencyBuilder</a><U>> consumer)</pre>
<div class="block">Adds a service dependency built using a Consumer lambda
that is provided with a ServiceDependencyBuilder.</div>
<dl>
@@ -1205,22 +1178,6 @@ var activeTableTab = "activeTableTab";
</dl>
</li>
</ul>
-<a name="withCnf-java.lang.Class...-">
-<!-- -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>withCnf</h4>
-<pre>default <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> withCnf(java.lang.Class<?>... pids)</pre>
-<div class="block">Adds multiple configuration dependencies in one single
call.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>pids</code> - list of configuration pids</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>this builder</dd>
-</dl>
-</li>
-</ul>
<a name="withBundle-java.util.function.Consumer-">
<!-- -->
</a>
@@ -1257,6 +1214,34 @@ var activeTableTab = "activeTableTab";
</dl>
</li>
</ul>
+<a name="lifecycleCallbackInstance-java.lang.Object-">
+<!-- -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>lifecycleCallbackInstance</h4>
+<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> lifecycleCallbackInstance(java.lang.Object lifecycleCallbackInstance)</pre>
+<div class="block">Sets the instance to invoke with the reflection based
lifecycle callbacks. By default, reflection based
+ lifecycle callbacks (init/start/stop/destroy) methods are invoked on the
component implementation instance(s).
+ But you can set a specific callback instance using this method.
+ <p>
+ Specifying an instance means you can create a manager
+ that will be invoked whenever the life cycle of a component changes and this
manager
+ can then decide how to expose this life cycle to the actual component,
offering an
+ important indirection when developing your own component models.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lifecycleCallbackInstance</code> - the instance the lifecycle
callback will be invoked on.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this builder.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#init-java.lang.String-"><code>init(String)</code></a>,
+<a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#start-java.lang.String-"><code>start(String)</code></a>,
+<a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#stop-java.lang.String-"><code>stop(String)</code></a>,
+<a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#destroy-java.lang.String-"><code>destroy(String)</code></a></dd>
+</dl>
+</li>
+</ul>
<a name="init-java.lang.String-">
<!-- -->
</a>
@@ -1269,7 +1254,7 @@ var activeTableTab = "activeTableTab";
This method is useful because when it is invoked, all required dependencies
defines in the Activator
are already injected, and you can then add more extra dependencies from the
init() method.
And once all extra dependencies will be available and injected, then the
"start" callback will be invoked.
- The dependency manager will look for a method of this name with the following
signatures,
+ <p>The dependency manager will look for a method of this name with the
following signatures,
in this order:
<ol>
<li>method(Component component)</li>
@@ -1291,7 +1276,7 @@ var activeTableTab = "activeTableTab";
<h4>start</h4>
<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> start(java.lang.String callback)</pre>
<div class="block">Sets the name of the method used as the "start" callback.
This method, when found, is
- invoked as part of the life cycle management of the component implementation.
The
+ invoked as part of the life cycle management of the component implementation.
<p>The
dependency manager will look for a method of this name with the following
signatures,
in this order:
<ol>
@@ -1314,7 +1299,7 @@ var activeTableTab = "activeTableTab";
<h4>stop</h4>
<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> stop(java.lang.String callback)</pre>
<div class="block">Sets the name of the method used as the "stop" callback.
This method, when found, is
- invoked as part of the life cycle management of the component implementation.
The
+ invoked as part of the life cycle management of the component implementation.
<p>The
dependency manager will look for a method of this name with the following
signatures,
in this order:
<ol>
@@ -1337,7 +1322,7 @@ var activeTableTab = "activeTableTab";
<h4>destroy</h4>
<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> destroy(java.lang.String callback)</pre>
<div class="block">Sets the name of the method used as the "destroy" callback.
This method, when found, is
- invoked as part of the life cycle management of the component implementation.
The
+ invoked as part of the life cycle management of the component implementation.
<p>The
dependency manager will look for a method of this name with the following
signatures,
in this order:
<ol>
@@ -1352,284 +1337,179 @@ var activeTableTab = "activeTableTab";
</dl>
</li>
</ul>
-<a name="init-java.lang.Object-java.lang.String-">
-<!-- -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>init</h4>
-<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> init(java.lang.Object callbackInstance,
- java.lang.String callback)</pre>
-<div class="block">Sets the name of the methods used as init callback that is
invoked on a given Object instance.
- These methods, when found, are invoked on the specified instance as part of
the life cycle management
- of the component implementation.
- <p>
- Specifying an instance means you can create a manager
- that will be invoked whenever the life cycle of a component changes and this
manager
- can then decide how to expose this life cycle to the actual component,
offering an
- important indirection when developing your own component models.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>callbackInstance</code> - the instance the callback will be invoked
on.</dd>
-<dd><code>callback</code> - the callback name</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>this builder.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#init-java.lang.String-"><code>init(String)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="start-java.lang.Object-java.lang.String-">
-<!-- -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>start</h4>
-<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> start(java.lang.Object callbackInstance,
- java.lang.String callback)</pre>
-<div class="block">Sets the name of the methods used as start callback that is
invoked on a given Object instance.
- These methods, when found, are invoked on the specified instance as part of
the life cycle management
- of the component implementation.
- <p>
- Specifying an instance means you can create a manager
- that will be invoked whenever the life cycle of a component changes and this
manager
- can then decide how to expose this life cycle to the actual component,
offering an
- important indirection when developing your own component models.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>callbackInstance</code> - the instance the callback will be invoked
on.</dd>
-<dd><code>callback</code> - the name of the start method</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>this builder.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#start-java.lang.String-"><code>start(String)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="stop-java.lang.Object-java.lang.String-">
-<!-- -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>stop</h4>
-<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> stop(java.lang.Object callbackInstance,
- java.lang.String callback)</pre>
-<div class="block">Sets the name of the methods used as stop callback that is
invoked on a given Object instance.
- These methods, when found, are invoked on the specified instance as part of
the life cycle management
- of the component implementation.
- <p>
- Specifying an instance means you can create a manager
- that will be invoked whenever the life cycle of a component changes and this
manager
- can then decide how to expose this life cycle to the actual component,
offering an
- important indirection when developing your own component models.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>callbackInstance</code> - the instance the callback will be invoked
on.</dd>
-<dd><code>callback</code> - the name of the stop method</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>this builder.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#stop-java.lang.String-"><code>stop(String)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="destroy-java.lang.Object-java.lang.String-">
-<!-- -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>destroy</h4>
-<pre><a href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in
ComponentBuilder">B</a> destroy(java.lang.Object callbackInstance,
- java.lang.String callback)</pre>
-<div class="block">Sets the name of the methods used as destroy callback that
is invoked on a given Object instance.
- These methods, when found, are invoked on the specified instance as part of
the life cycle management
- of the component implementation.
- <p>
- Specifying an instance means you can create a manager
- that will be invoked whenever the life cycle of a component changes and this
manager
- can then decide how to expose this life cycle to the actual component,
offering an
- important indirection when developing your own component models.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>callbackInstance</code> - the instance the callback will be invoked
on.</dd>
-<dd><code>callback</code> - the name of the destroy method</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>this builder.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html#destroy-java.lang.String-"><code>destroy(String)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="init-org.apache.felix.dm.lambda.callbacks.CbConsumer-">
+<a name="init-org.apache.felix.dm.lambda.callbacks.Cb-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>init</h4>
-<pre><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> init(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbConsumer.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbConsumer</a><U> callback)</pre>
-<div class="block">Sets a method reference used as the "init" callback. This
method reference must point to method from one
- of the component instance classes. It is invoked as part of the life cycle
management of the component implementation.
+<pre><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> init(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/Cb.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">Cb</a><T> callback)</pre>
+<div class="block">Sets a reference to a component implementation class "init"
callback method.
+ This method does not take any arguments and is
+ invoked as part of the life cycle management of the component implementation.
This method is useful because when it is invoked, all required dependencies
defines in the Activator
are already injected, and you can then add more extra dependencies from the
init() method.
- And once all extra dependencies will be available and injected, then the
"start" callback will be invoked.
- The method does not take any parameters.</div>
+ And once all extra dependencies will be available and injected, then the
"start" callback will be invoked.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
-<dd><code>U</code> - the type of the component class on which the callback is
invoked on.</dd>
+<dd><code>T</code> - the type of the component class on which the callback is
invoked on.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>callback</code> - a method reference must point to method from one
of the component instance classes.</dd>
+<dd><code>callback</code> - a method reference must point to method from the
component implementation class(es).</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder</dd>
</dl>
</li>
</ul>
-<a name="start-org.apache.felix.dm.lambda.callbacks.CbConsumer-">
+<a name="start-org.apache.felix.dm.lambda.callbacks.Cb-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>start</h4>
-<pre><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> start(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbConsumer.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbConsumer</a><U> callback)</pre>
-<div class="block">Sets a method reference used as the "start" callback. This
method reference must point to method from one
- of the component instance classes. This method is invoked as part of the life
cycle management of the component implementation.</div>
+<pre><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> start(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/Cb.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">Cb</a><T> callback)</pre>
+<div class="block">Sets a reference to a component implementation class
"start" callback method.
+ This method does not take any arguments and is
+ invoked as part of the life cycle management of the component
implementation.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
-<dd><code>U</code> - the type of the component class on which the callback is
invoked on.</dd>
+<dd><code>T</code> - the type of the component class on which the callback is
invoked on.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>callback</code> - a method reference must point to method from one
of the component instance classes.</dd>
+<dd><code>callback</code> - a method reference must point to method from one
of the component implementation classes.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
</dl>
</li>
</ul>
-<a name="stop-org.apache.felix.dm.lambda.callbacks.CbConsumer-">
+<a name="stop-org.apache.felix.dm.lambda.callbacks.Cb-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stop</h4>
-<pre><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> stop(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbConsumer.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbConsumer</a><U> callback)</pre>
-<div class="block">Sets a method reference used as the "stop" callback. This
method reference must point to method from one
- of the component instance classes. This method is invoked as part of the life
cycle management of the component implementation.</div>
+<pre><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> stop(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/Cb.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">Cb</a><T> callback)</pre>
+<div class="block">Sets a reference to a component implementation class "stop"
callback method.
+ This method does not take any arguments and is
+ invoked as part of the life cycle management of the component
implementation.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
-<dd><code>U</code> - the type of the component class on which the callback is
invoked on.</dd>
+<dd><code>T</code> - the type of the component class on which the callback is
invoked on.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>callback</code> - a method reference must point to method from one
of the component instance classes.</dd>
+<dd><code>callback</code> - a method reference must point to method from one
of the component implementation classes.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
</dl>
</li>
</ul>
-<a name="destroy-org.apache.felix.dm.lambda.callbacks.CbConsumer-">
+<a name="destroy-org.apache.felix.dm.lambda.callbacks.Cb-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>destroy</h4>
-<pre><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> destroy(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbConsumer.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbConsumer</a><U> callback)</pre>
-<div class="block">Sets a method reference used as the "destroy" callback.
This method reference must point to method from one
- of the component instance classes. This method is invoked as part of the life
cycle management of the component implementation.</div>
+<pre><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> destroy(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/Cb.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">Cb</a><T> callback)</pre>
+<div class="block">Sets a reference to a component implementation class
"destroy" callback method.
+ This method does not take any arguments and is
+ invoked as part of the life cycle management of the component
implementation.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
-<dd><code>U</code> - the type of the component class on which the callback is
invoked on.</dd>
+<dd><code>T</code> - the type of the component class on which the callback is
invoked on.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>callback</code> - a method reference must point to method from one
of the component instance classes.</dd>
+<dd><code>callback</code> - a method reference must point to method from one
of the component implementation classes.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
</dl>
</li>
</ul>
-<a name="init-org.apache.felix.dm.lambda.callbacks.CbTypeComponent-">
+<a name="init-org.apache.felix.dm.lambda.callbacks.CbComponent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>init</h4>
-<pre><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> init(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbTypeComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbTypeComponent</a><U> callback)</pre>
-<div class="block">Sets a method reference used as the "init" callback. This
method reference must point to method from one
- of the component instance classes. It is invoked as part of the life cycle
management of the component implementation.
+<pre><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> init(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbComponent</a><T> callback)</pre>
+<div class="block">Sets a reference to a component implementation class "init"
callback method.
+ This method takes a Component argument and is
+ invoked as part of the life cycle management of the component implementation.
This method is useful because when it is invoked, all required dependencies
defines in the Activator
are already injected, and you can then add more extra dependencies from the
init() method.
- And once all extra dependencies will be available and injected, then the
"start" callback will be invoked.
- The method takes as argument a Component parameter.</div>
+ And once all extra dependencies will be available and injected, then the
"start" callback will be invoked.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
-<dd><code>U</code> - the type of the component class on which the callback is
invoked on.</dd>
+<dd><code>T</code> - the type of the component class on which the callback is
invoked on.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>callback</code> - a method reference must point to method from one
of the component instance classes. The method takes as argument a Component
parameter.</dd>
+<dd><code>callback</code> - a method reference must point to method from one
of the component implementation classes. The method takes as argument a
Component parameter.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder</dd>
</dl>
</li>
</ul>
-<a name="start-org.apache.felix.dm.lambda.callbacks.CbTypeComponent-">
+<a name="start-org.apache.felix.dm.lambda.callbacks.CbComponent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>start</h4>
-<pre><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> start(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbTypeComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbTypeComponent</a><U> callback)</pre>
-<div class="block">Sets a method reference used as the "start" callback. This
method reference must point to method from one
- of the component instance classes. This method is invoked as part of the life
cycle management of the component implementation.
- The method takes as argument a Component parameter.</div>
+<pre><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> start(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbComponent</a><T> callback)</pre>
+<div class="block">Sets a reference to a component implementation class
"start" callback method.
+ This method takes a Component argument and is
+ invoked as part of the life cycle management of the component
implementation.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
-<dd><code>U</code> - the type of the component class on which the callback is
invoked on.</dd>
+<dd><code>T</code> - the type of the component class on which the callback is
invoked on.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>callback</code> - a method reference must point to method from one
of the component instance classes. The method takes as argument a Component
parameter.</dd>
+<dd><code>callback</code> - a method reference must point to method from one
of the component implementation classes. The method takes as argument a
Component parameter.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
</dl>
</li>
</ul>
-<a name="stop-org.apache.felix.dm.lambda.callbacks.CbTypeComponent-">
+<a name="stop-org.apache.felix.dm.lambda.callbacks.CbComponent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stop</h4>
-<pre><U> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> stop(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbTypeComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbTypeComponent</a><U> callback)</pre>
-<div class="block">Sets a method reference used as the "stop" callback. This
method reference must point to method from one
- of the component instance classes. This method is invoked as part of the life
cycle management of the component implementation.
- The method takes as argument a Component parameter.</div>
+<pre><T> <a
href="../../../../../org/apache/felix/dm/lambda/ComponentBuilder.html"
title="type parameter in ComponentBuilder">B</a> stop(<a
href="../../../../../org/apache/felix/dm/lambda/callbacks/CbComponent.html"
title="interface in
org.apache.felix.dm.lambda.callbacks">CbComponent</a><T> callback)</pre>
+<div class="block">Sets a reference to a component implementation class "stop"
callback method.
+ This method takes a Component argument and is
+ invoked as part of the life cycle management of the component
implementation.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
-<dd><code>U</code> - the type of the component class on which the callback is
invoked on.</dd>
+<dd><code>T</code> - the type of the component class on which the callback is
invoked on.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>callback</code> - a method reference must point to method from one
of the component instance classes. The method takes as argument a Component
parameter.</dd>
+<dd><code>callback</code> - a method reference must point to method from one
of the component implementation classes. The method takes as argument a
Component parameter.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
</dl>
</li>
</ul>
-<a name="destroy-org.apache.felix.dm.lambda.callbacks.CbTypeComponent-">
+<a name="destroy-org.apache.felix.dm.lambda.callbacks.CbComponent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>destroy</h4>
[... 186 lines stripped ...]