You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by bu...@apache.org on 2017/02/14 07:01:03 UTC

svn commit: r1006730 [10/16] - in /websites/staging/felix/trunk/content: ./ apidocs/dependencymanager/r9/ apidocs/dependencymanager/r9/org/ apidocs/dependencymanager/r9/org/apache/ apidocs/dependencymanager/r9/org/apache/felix/ apidocs/dependencymanage...

Added: websites/staging/felix/trunk/content/apidocs/dependencymanager/r9/org/apache/felix/dm/context/AbstractDependency.html
==============================================================================
--- websites/staging/felix/trunk/content/apidocs/dependencymanager/r9/org/apache/felix/dm/context/AbstractDependency.html (added)
+++ websites/staging/felix/trunk/content/apidocs/dependencymanager/r9/org/apache/felix/dm/context/AbstractDependency.html Tue Feb 14 07:01:02 2017
@@ -0,0 +1,1458 @@
+<!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_102) on Tue Feb 14 07:57:56 CET 2017 -->
+<title>AbstractDependency</title>
+<meta name="date" content="2017-02-14">
+<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="AbstractDependency";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":6,"i3":10,"i4":10,"i5":6,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":6,"i14":10,"i15":6,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete 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&nbsp;Class</li>
+<li><a href="../../../../../org/apache/felix/dm/context/ComponentContext.html" title="interface in org.apache.felix.dm.context"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/felix/dm/context/AbstractDependency.html" target="_top">Frames</a></li>
+<li><a href="AbstractDependency.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;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:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</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.context</div>
+<h2 title="Class AbstractDependency" class="title">Class AbstractDependency&lt;T extends <a href="../../../../../org/apache/felix/dm/Dependency.html" title="interface in org.apache.felix.dm">Dependency</a>&gt;</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li>java.lang.Object</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.felix.dm.context.AbstractDependency&lt;T&gt;</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - The type of the interface representing a Dependency Manager Dependency (must extends the Dependency interface).</dd>
+</dl>
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html" title="interface in org.apache.felix.dm">ComponentDependencyDeclaration</a>, <a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a>, <a href="../../../../../org/apache/felix/dm/Dependency.html" title="interface in org.apache.felix.dm">Dependency</a></dd>
+</dl>
+<hr>
+<br>
+<pre>public abstract class <span class="typeNameLabel">AbstractDependency&lt;T extends <a href="../../../../../org/apache/felix/dm/Dependency.html" title="interface in org.apache.felix.dm">Dependency</a>&gt;</span>
+extends java.lang.Object
+implements <a href="../../../../../org/apache/felix/dm/Dependency.html" title="interface in org.apache.felix.dm">Dependency</a>, <a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a>, <a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html" title="interface in org.apache.felix.dm">ComponentDependencyDeclaration</a></pre>
+<div class="block">Abstract class for implementing Dependencies.
+ You can extends this class in order to supply your own custom dependencies to any Dependency Manager Component.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected static java.util.Dictionary&lt;java.lang.Object,java.lang.Object&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#EMPTY_PROPERTIES">EMPTY_PROPERTIES</a></span></code>
+<div class="block">Default empty dependency properties.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_add">m_add</a></span></code>
+<div class="block">Component callback used to inject an added dependency.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_autoConfig">m_autoConfig</a></span></code>
+<div class="block">Can this Dependency be auto configured in the component instance fields ?</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_autoConfigInstance">m_autoConfigInstance</a></span></code>
+<div class="block">The Component field name where the Dependency can be injected (null means any field with a compatible type
+ will be injected).</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_autoConfigInvoked">m_autoConfigInvoked</a></span></code>
+<div class="block">Indicates if the setAutoConfig method has been invoked.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_available">m_available</a></span></code>
+<div class="block">Is this Dependency available ? Volatile because the getState method (part of the 
+ <a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html" title="interface in org.apache.felix.dm"><code>ComponentDependencyDeclaration</code></a> interface) may be called by any thread, at any time.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected java.lang.Object</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_callbackInstance">m_callbackInstance</a></span></code>
+<div class="block">The object instance on which the dependency callbacks are invoked on.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_change">m_change</a></span></code>
+<div class="block">Component callback invoked when the dependency has changed.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected <a href="../../../../../org/apache/felix/dm/context/ComponentContext.html" title="interface in org.apache.felix.dm.context">ComponentContext</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_component">m_component</a></span></code>
+<div class="block">The Component implementation is exposed to Dependencies through this interface.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_instanceBound">m_instanceBound</a></span></code>
+<div class="block">Is this Dependency "instance bound" ? A dependency is "instance bound" if it is defined within the component's 
+ init method, meaning that it won't deactivate the component if it is not currently available when being added
+ from the component's init method.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_isStarted">m_isStarted</a></span></code>
+<div class="block">Has this Dependency been started by the Component implementation ? Volatile because the getState method 
+ (part of the <a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html" title="interface in org.apache.felix.dm"><code>ComponentDependencyDeclaration</code></a> interface) may be called by any thread, at any time.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_propagate">m_propagate</a></span></code>
+<div class="block">Tells if the dependency service properties have to be propagated to the Component service properties.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected java.lang.Object</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_propagateCallbackInstance">m_propagateCallbackInstance</a></span></code>
+<div class="block">The propagate callback instance that is invoked in order to supply dynamically some dependency service properties.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_propagateCallbackMethod">m_propagateCallbackMethod</a></span></code>
+<div class="block">The propagate callback method that is invoked in order to supply dynamically some dependency service properties.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>protected java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_remove">m_remove</a></span></code>
+<div class="block">Component callback invoked when the dependency becomes unavailable.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#m_required">m_required</a></span></code>
+<div class="block">Is this dependency required (false by default) ?</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="fields.inherited.from.class.org.apache.felix.dm.ComponentDependencyDeclaration">
+<!--   -->
+</a>
+<h3>Fields inherited from interface&nbsp;org.apache.felix.dm.<a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html" title="interface in org.apache.felix.dm">ComponentDependencyDeclaration</a></h3>
+<code><a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html#STATE_AVAILABLE_OPTIONAL">STATE_AVAILABLE_OPTIONAL</a>, <a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html#STATE_AVAILABLE_REQUIRED">STATE_AVAILABLE_REQUIRED</a>, <a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html#STATE_NAMES">STATE_NAMES</a>, <a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html#STATE_OPTIONAL">STATE_OPTIONAL</a>, <a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html#STATE_REQUIRED">STATE_REQUIRED</a>, <a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html#STATE_UNAVAILABLE_OPTIONAL">STATE_UNAVAILABLE_OPTIONAL</a>, <a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html#STATE_UNAVAILABLE_REQUIRED">STATE_UNAVAILABLE_REQUIRED</a></code></li>
+</ul>
+</li>
+</ul>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#AbstractDependency--">AbstractDependency</a></span>()</code>
+<div class="block">Creates a new Dependency.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#AbstractDependency-org.apache.felix.dm.context.AbstractDependency-">AbstractDependency</a></span>(<a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="class in org.apache.felix.dm.context">AbstractDependency</a>&lt;<a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a>&gt;&nbsp;prototype)</code>
+<div class="block">Create a clone of a given Dependency.</div>
+</td>
+</tr>
+</table>
+</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">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</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>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#copyToCollection-java.util.Collection-">copyToCollection</a></span>(java.util.Collection&lt;java.lang.Object&gt;&nbsp;services)</code>
+<div class="block">Copy all dependency service instances to the given collection.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#copyToMap-java.util.Map-">copyToMap</a></span>(java.util.Map&lt;java.lang.Object,java.util.Dictionary&lt;?,?&gt;&gt;&nbsp;map)</code>
+<div class="block">Copy all dependency service instances to the given map (key = dependency service, value = dependency service properties.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>abstract <a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#createCopy--">createCopy</a></span>()</code>
+<div class="block">Creates a copy of this Dependency.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#ensureNotActive--">ensureNotActive</a></span>()</code>
+<div class="block">Checks if the component dependency is not started.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#getAutoConfigName--">getAutoConfigName</a></span>()</code>
+<div class="block">Returns the field name when the dependency can be injected to.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>abstract java.lang.Class&lt;?&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#getAutoConfigType--">getAutoConfigType</a></span>()</code>
+<div class="block">Returns the type of the field where this dependency can be injected (auto config), or return null
+ if autoconfig is not supported.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/felix/dm/context/ComponentContext.html" title="interface in org.apache.felix.dm.context">ComponentContext</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#getComponentContext--">getComponentContext</a></span>()</code>
+<div class="block">Returns the component implementation context</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>protected java.lang.Object</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#getDefaultService-boolean-">getDefaultService</a></span>(boolean&nbsp;nullObject)</code>
+<div class="block">Returns the default service, or null.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#getFilter--">getFilter</a></span>()</code>
+<div class="block">Returns the dependency filter, if any.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>java.lang.Object[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#getInstances--">getInstances</a></span>()</code>
+<div class="block">Returns the dependency callback instances</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#getName--">getName</a></span>()</code>
+<div class="block">Returns a description of this dependency (like the dependency service class name with associated filters)</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>&lt;K,V&gt;&nbsp;java.util.Dictionary&lt;K,V&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#getProperties--">getProperties</a></span>()</code>
+<div class="block">Returns the dependency service properties (empty by default).</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/felix/dm/context/Event.html" title="class in org.apache.felix.dm.context">Event</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#getService--">getService</a></span>()</code>
+<div class="block">Get the highest ranked available dependency service, or null.</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>abstract java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#getSimpleName--">getSimpleName</a></span>()</code>
+<div class="block">Returns a simple name for this dependency (like the dependency service class name).</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#getState--">getState</a></span>()</code>
+<div class="block">Returns this dependency state.</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code>abstract java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#getType--">getType</a></span>()</code>
+<div class="block">Returns the dependency symbolic type.</div>
+</td>
+</tr>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#invokeCallback-org.apache.felix.dm.context.EventType-org.apache.felix.dm.context.Event...-">invokeCallback</a></span>(<a href="../../../../../org/apache/felix/dm/context/EventType.html" title="enum in org.apache.felix.dm.context">EventType</a>&nbsp;type,
+              <a href="../../../../../org/apache/felix/dm/context/Event.html" title="class in org.apache.felix.dm.context">Event</a>...&nbsp;events)</code>
+<div class="block">A Component callback must be invoked with dependency event(s).</div>
+</td>
+</tr>
+<tr id="i17" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#isAutoConfig--">isAutoConfig</a></span>()</code>
+<div class="block">Can this dependency be injected in a component class field (by reflexion, true by default) ?</div>
+</td>
+</tr>
+<tr id="i18" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#isAvailable--">isAvailable</a></span>()</code>
+<div class="block">Is this Dependency satisfied and available ?</div>
+</td>
+</tr>
+<tr id="i19" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#isInstanceBound--">isInstanceBound</a></span>()</code>
+<div class="block">Is this Dependency "instance bound" (has been defined within the component's init method) ?</div>
+</td>
+</tr>
+<tr id="i20" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#isPropagated--">isPropagated</a></span>()</code>
+<div class="block">Returns the propagate callback method that is invoked in order to supply dynamically some dependency service properties.</div>
+</td>
+</tr>
+<tr id="i21" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#isRequired--">isRequired</a></span>()</code>
+<div class="block">Is this Dependency required (false by default) ?</div>
+</td>
+</tr>
+<tr id="i22" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#isStarted--">isStarted</a></span>()</code>
+<div class="block">Indicates if this dependency has been started by the Component implementation.</div>
+</td>
+</tr>
+<tr id="i23" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#needsInstance--">needsInstance</a></span>()</code>
+<div class="block">Tells if the Component must be first instantiated before starting this dependency (false by default).</div>
+</td>
+</tr>
+<tr id="i24" class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#setAutoConfig-boolean-">setAutoConfig</a></span>(boolean&nbsp;autoConfig)</code>&nbsp;</td>
+</tr>
+<tr id="i25" class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#setAutoConfig-java.lang.String-">setAutoConfig</a></span>(java.lang.String&nbsp;instanceName)</code>&nbsp;</td>
+</tr>
+<tr id="i26" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#setAvailable-boolean-">setAvailable</a></span>(boolean&nbsp;available)</code>
+<div class="block">Called by the Component implementation when the dependency is considered to be available.</div>
+</td>
+</tr>
+<tr id="i27" class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#setCallbacks-java.lang.Object-java.lang.String-java.lang.String-">setCallbacks</a></span>(java.lang.Object&nbsp;instance,
+            java.lang.String&nbsp;add,
+            java.lang.String&nbsp;remove)</code>
+<div class="block">Sets the callbacks for this service.</div>
+</td>
+</tr>
+<tr id="i28" class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#setCallbacks-java.lang.Object-java.lang.String-java.lang.String-java.lang.String-">setCallbacks</a></span>(java.lang.Object&nbsp;instance,
+            java.lang.String&nbsp;add,
+            java.lang.String&nbsp;change,
+            java.lang.String&nbsp;remove)</code>
+<div class="block">Sets the callbacks for this service.</div>
+</td>
+</tr>
+<tr id="i29" class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#setCallbacks-java.lang.String-java.lang.String-">setCallbacks</a></span>(java.lang.String&nbsp;add,
+            java.lang.String&nbsp;remove)</code>
+<div class="block">Sets the add/remove callbacks.</div>
+</td>
+</tr>
+<tr id="i30" class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#setCallbacks-java.lang.String-java.lang.String-java.lang.String-">setCallbacks</a></span>(java.lang.String&nbsp;add,
+            java.lang.String&nbsp;change,
+            java.lang.String&nbsp;remove)</code>
+<div class="block">Sets the add/change/remove callbacks.</div>
+</td>
+</tr>
+<tr id="i31" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#setComponentContext-org.apache.felix.dm.context.ComponentContext-">setComponentContext</a></span>(<a href="../../../../../org/apache/felix/dm/context/ComponentContext.html" title="interface in org.apache.felix.dm.context">ComponentContext</a>&nbsp;component)</code>
+<div class="block">Called by the Component implementation before the Dependency can be started.</div>
+</td>
+</tr>
+<tr id="i32" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#setInstanceBound-boolean-">setInstanceBound</a></span>(boolean&nbsp;instanceBound)</code>
+<div class="block">Called by the Component implementation when the dependency is declared within the Component's init method.</div>
+</td>
+</tr>
+<tr id="i33" class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#setPropagate-boolean-">setPropagate</a></span>(boolean&nbsp;propagate)</code>
+<div class="block">Activates Dependency service properties propagation (to the service properties of the component to which this
+ dependency is added).</div>
+</td>
+</tr>
+<tr id="i34" class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#setPropagate-java.lang.Object-java.lang.String-">setPropagate</a></span>(java.lang.Object&nbsp;instance,
+            java.lang.String&nbsp;method)</code>
+<div class="block">Sets a callback instance which can ba invoked with the given method in order to dynamically retrieve the 
+ dependency service properties.</div>
+</td>
+</tr>
+<tr id="i35" class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#setRequired-boolean-">setRequired</a></span>(boolean&nbsp;required)</code>&nbsp;</td>
+</tr>
+<tr id="i36" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#start--">start</a></span>()</code>
+<div class="block">Starts this dependency.</div>
+</td>
+</tr>
+<tr id="i37" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#stop--">stop</a></span>()</code>
+<div class="block">Starts this dependency.</div>
+</td>
+</tr>
+<tr id="i38" class="altColor">
+<td class="colFirst"><code>java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html#toString--">toString</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
+<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="m_component">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_component</h4>
+<pre>protected&nbsp;<a href="../../../../../org/apache/felix/dm/context/ComponentContext.html" title="interface in org.apache.felix.dm.context">ComponentContext</a> m_component</pre>
+<div class="block">The Component implementation is exposed to Dependencies through this interface.</div>
+</li>
+</ul>
+<a name="m_available">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_available</h4>
+<pre>protected volatile&nbsp;boolean m_available</pre>
+<div class="block">Is this Dependency available ? Volatile because the getState method (part of the 
+ <a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html" title="interface in org.apache.felix.dm"><code>ComponentDependencyDeclaration</code></a> interface) may be called by any thread, at any time.</div>
+</li>
+</ul>
+<a name="m_instanceBound">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_instanceBound</h4>
+<pre>protected&nbsp;boolean m_instanceBound</pre>
+<div class="block">Is this Dependency "instance bound" ? A dependency is "instance bound" if it is defined within the component's 
+ init method, meaning that it won't deactivate the component if it is not currently available when being added
+ from the component's init method.</div>
+</li>
+</ul>
+<a name="m_required">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_required</h4>
+<pre>protected volatile&nbsp;boolean m_required</pre>
+<div class="block">Is this dependency required (false by default) ?</div>
+</li>
+</ul>
+<a name="m_add">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_add</h4>
+<pre>protected volatile&nbsp;java.lang.String m_add</pre>
+<div class="block">Component callback used to inject an added dependency.</div>
+</li>
+</ul>
+<a name="m_change">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_change</h4>
+<pre>protected volatile&nbsp;java.lang.String m_change</pre>
+<div class="block">Component callback invoked when the dependency has changed.</div>
+</li>
+</ul>
+<a name="m_remove">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_remove</h4>
+<pre>protected volatile&nbsp;java.lang.String m_remove</pre>
+<div class="block">Component callback invoked when the dependency becomes unavailable.</div>
+</li>
+</ul>
+<a name="m_autoConfig">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_autoConfig</h4>
+<pre>protected volatile&nbsp;boolean m_autoConfig</pre>
+<div class="block">Can this Dependency be auto configured in the component instance fields ?</div>
+</li>
+</ul>
+<a name="m_autoConfigInstance">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_autoConfigInstance</h4>
+<pre>protected volatile&nbsp;java.lang.String m_autoConfigInstance</pre>
+<div class="block">The Component field name where the Dependency can be injected (null means any field with a compatible type
+ will be injected).</div>
+</li>
+</ul>
+<a name="m_autoConfigInvoked">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_autoConfigInvoked</h4>
+<pre>protected volatile&nbsp;boolean m_autoConfigInvoked</pre>
+<div class="block">Indicates if the setAutoConfig method has been invoked. This flag is used to force autoconfig to "false" 
+ when the setCallbacks method is invoked, unless the setAutoConfig method has been called.</div>
+</li>
+</ul>
+<a name="m_isStarted">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_isStarted</h4>
+<pre>protected volatile&nbsp;boolean m_isStarted</pre>
+<div class="block">Has this Dependency been started by the Component implementation ? Volatile because the getState method 
+ (part of the <a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html" title="interface in org.apache.felix.dm"><code>ComponentDependencyDeclaration</code></a> interface) may be called by any thread, at any time.</div>
+</li>
+</ul>
+<a name="m_callbackInstance">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_callbackInstance</h4>
+<pre>protected volatile&nbsp;java.lang.Object m_callbackInstance</pre>
+<div class="block">The object instance on which the dependency callbacks are invoked on. Null means the dependency will be
+ injected to the Component implementation instance(s).</div>
+</li>
+</ul>
+<a name="m_propagate">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_propagate</h4>
+<pre>protected volatile&nbsp;boolean m_propagate</pre>
+<div class="block">Tells if the dependency service properties have to be propagated to the Component service properties.</div>
+</li>
+</ul>
+<a name="m_propagateCallbackInstance">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_propagateCallbackInstance</h4>
+<pre>protected volatile&nbsp;java.lang.Object m_propagateCallbackInstance</pre>
+<div class="block">The propagate callback instance that is invoked in order to supply dynamically some dependency service properties.</div>
+</li>
+</ul>
+<a name="m_propagateCallbackMethod">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>m_propagateCallbackMethod</h4>
+<pre>protected volatile&nbsp;java.lang.String m_propagateCallbackMethod</pre>
+<div class="block">The propagate callback method that is invoked in order to supply dynamically some dependency service properties.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><code>#m_propagateCallbackInstance}</code></dd>
+</dl>
+</li>
+</ul>
+<a name="EMPTY_PROPERTIES">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>EMPTY_PROPERTIES</h4>
+<pre>protected static final&nbsp;java.util.Dictionary&lt;java.lang.Object,java.lang.Object&gt; EMPTY_PROPERTIES</pre>
+<div class="block">Default empty dependency properties.</div>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="AbstractDependency--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>AbstractDependency</h4>
+<pre>public&nbsp;AbstractDependency()</pre>
+<div class="block">Creates a new Dependency. By default, the dependency is optional and autoconfig.</div>
+</li>
+</ul>
+<a name="AbstractDependency-org.apache.felix.dm.context.AbstractDependency-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>AbstractDependency</h4>
+<pre>public&nbsp;AbstractDependency(<a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="class in org.apache.felix.dm.context">AbstractDependency</a>&lt;<a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a>&gt;&nbsp;prototype)</pre>
+<div class="block">Create a clone of a given Dependency.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>prototype</code> - all the fields of the prototype will be copied to this dependency.</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;java.lang.String&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code>toString</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
+</dl>
+</li>
+</ul>
+<a name="isRequired--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isRequired</h4>
+<pre>public&nbsp;boolean&nbsp;isRequired()</pre>
+<div class="block">Is this Dependency required (false by default) ?</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/Dependency.html#isRequired--">isRequired</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/Dependency.html" title="interface in org.apache.felix.dm">Dependency</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if the dependency is required</dd>
+</dl>
+</li>
+</ul>
+<a name="isAvailable--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isAvailable</h4>
+<pre>public&nbsp;boolean&nbsp;isAvailable()</pre>
+<div class="block">Is this Dependency satisfied and available ?</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/Dependency.html#isAvailable--">isAvailable</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/Dependency.html" title="interface in org.apache.felix.dm">Dependency</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if the dependency is available</dd>
+</dl>
+</li>
+</ul>
+<a name="isAutoConfig--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isAutoConfig</h4>
+<pre>public&nbsp;boolean&nbsp;isAutoConfig()</pre>
+<div class="block">Can this dependency be injected in a component class field (by reflexion, true by default) ?</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/Dependency.html#isAutoConfig--">isAutoConfig</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/Dependency.html" title="interface in org.apache.felix.dm">Dependency</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if auto configuration is enabled for this dependency</dd>
+</dl>
+</li>
+</ul>
+<a name="getAutoConfigName--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getAutoConfigName</h4>
+<pre>public&nbsp;java.lang.String&nbsp;getAutoConfigName()</pre>
+<div class="block">Returns the field name when the dependency can be injected to.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/Dependency.html#getAutoConfigName--">getAutoConfigName</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/Dependency.html" title="interface in org.apache.felix.dm">Dependency</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the name of the member in the class of the component instance to inject into</dd>
+</dl>
+</li>
+</ul>
+<a name="isPropagated--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isPropagated</h4>
+<pre>public&nbsp;boolean&nbsp;isPropagated()</pre>
+<div class="block">Returns the propagate callback method that is invoked in order to supply dynamically some dependency service properties.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/Dependency.html#isPropagated--">isPropagated</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/Dependency.html" title="interface in org.apache.felix.dm">Dependency</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if the properties should be propagated</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><code>#m_propagateCallbackInstance}</code></dd>
+</dl>
+</li>
+</ul>
+<a name="getProperties--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getProperties</h4>
+<pre>public&nbsp;&lt;K,V&gt;&nbsp;java.util.Dictionary&lt;K,V&gt;&nbsp;getProperties()</pre>
+<div class="block">Returns the dependency service properties (empty by default).</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/Dependency.html#getProperties--">getProperties</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/Dependency.html" title="interface in org.apache.felix.dm">Dependency</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the properties</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../org/apache/felix/dm/Dependency.html#isPropagated--"><code>Dependency.isPropagated()</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="setComponentContext-org.apache.felix.dm.context.ComponentContext-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setComponentContext</h4>
+<pre>public&nbsp;void&nbsp;setComponentContext(<a href="../../../../../org/apache/felix/dm/context/ComponentContext.html" title="interface in org.apache.felix.dm.context">ComponentContext</a>&nbsp;component)</pre>
+<div class="block">Called by the Component implementation before the Dependency can be started.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#setComponentContext-org.apache.felix.dm.context.ComponentContext-">setComponentContext</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>component</code> - the Component implementation context</dd>
+</dl>
+</li>
+</ul>
+<a name="invokeCallback-org.apache.felix.dm.context.EventType-org.apache.felix.dm.context.Event...-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>invokeCallback</h4>
+<pre>public&nbsp;void&nbsp;invokeCallback(<a href="../../../../../org/apache/felix/dm/context/EventType.html" title="enum in org.apache.felix.dm.context">EventType</a>&nbsp;type,
+                           <a href="../../../../../org/apache/felix/dm/context/Event.html" title="class in org.apache.felix.dm.context">Event</a>...&nbsp;events)</pre>
+<div class="block">A Component callback must be invoked with dependency event(s).</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#invokeCallback-org.apache.felix.dm.context.EventType-org.apache.felix.dm.context.Event...-">invokeCallback</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>type</code> - the dependency event type</dd>
+<dd><code>events</code> - the dependency service event to inject in the component. 
+ The number of events depends on the dependency event type: ADDED/CHANGED/REMOVED types only has one event parameter, 
+ but the SWAPPED type has two event parameters: the first one is the old event which must be replaced by the second one.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../org/apache/felix/dm/context/ComponentContext.html#handleEvent-org.apache.felix.dm.context.DependencyContext-org.apache.felix.dm.context.EventType-org.apache.felix.dm.context.Event...-"><code>ComponentContext.handleEvent(DependencyContext, EventType, Event...)</code></a>, 
+<a href="../../../../../org/apache/felix/dm/context/EventType.html" title="enum in org.apache.felix.dm.context"><code>EventType</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="start--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>start</h4>
+<pre>public&nbsp;void&nbsp;start()</pre>
+<div class="block">Starts this dependency. Subclasses can override this method but must then call super.start().</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#start--">start</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="stop--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>stop</h4>
+<pre>public&nbsp;void&nbsp;stop()</pre>
+<div class="block">Starts this dependency. Subclasses can override this method but must then call super.stop().</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#stop--">stop</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="isStarted--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isStarted</h4>
+<pre>public&nbsp;boolean&nbsp;isStarted()</pre>
+<div class="block">Indicates if this dependency has been started by the Component implementation.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#isStarted--">isStarted</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the dependency has been started, false if not</dd>
+</dl>
+</li>
+</ul>
+<a name="setAvailable-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setAvailable</h4>
+<pre>public&nbsp;void&nbsp;setAvailable(boolean&nbsp;available)</pre>
+<div class="block">Called by the Component implementation when the dependency is considered to be available.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#setAvailable-boolean-">setAvailable</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>available</code> - true to mark this dependency as available, false to mark it as unavailable</dd>
+</dl>
+</li>
+</ul>
+<a name="isInstanceBound--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isInstanceBound</h4>
+<pre>public&nbsp;boolean&nbsp;isInstanceBound()</pre>
+<div class="block">Is this Dependency "instance bound" (has been defined within the component's init method) ?</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#isInstanceBound--">isInstanceBound</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if this dependency is instance bound, false if not</dd>
+</dl>
+</li>
+</ul>
+<a name="setInstanceBound-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setInstanceBound</h4>
+<pre>public&nbsp;void&nbsp;setInstanceBound(boolean&nbsp;instanceBound)</pre>
+<div class="block">Called by the Component implementation when the dependency is declared within the Component's init method.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#setInstanceBound-boolean-">setInstanceBound</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="needsInstance--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>needsInstance</h4>
+<pre>public&nbsp;boolean&nbsp;needsInstance()</pre>
+<div class="block">Tells if the Component must be first instantiated before starting this dependency (false by default).</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#needsInstance--">needsInstance</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the dependency need the component instances before it can be started, false if not.</dd>
+</dl>
+</li>
+</ul>
+<a name="getAutoConfigType--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getAutoConfigType</h4>
+<pre>public abstract&nbsp;java.lang.Class&lt;?&gt;&nbsp;getAutoConfigType()</pre>
+<div class="block">Returns the type of the field where this dependency can be injected (auto config), or return null
+ if autoconfig is not supported.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#getAutoConfigType--">getAutoConfigType</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the type of the field which can be injected with the dependency service, or null if the dependency does not 
+ support auto config mode.</dd>
+</dl>
+</li>
+</ul>
+<a name="getService--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getService</h4>
+<pre>public&nbsp;<a href="../../../../../org/apache/felix/dm/context/Event.html" title="class in org.apache.felix.dm.context">Event</a>&nbsp;getService()</pre>
+<div class="block">Get the highest ranked available dependency service, or null.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#getService--">getService</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the highest ranked available dependency service instance, or null</dd>
+</dl>
+</li>
+</ul>
+<a name="copyToCollection-java.util.Collection-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>copyToCollection</h4>
+<pre>public&nbsp;void&nbsp;copyToCollection(java.util.Collection&lt;java.lang.Object&gt;&nbsp;services)</pre>
+<div class="block">Copy all dependency service instances to the given collection.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#copyToCollection-java.util.Collection-">copyToCollection</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>services</code> - the collection where the dependency service instances will be copied</dd>
+</dl>
+</li>
+</ul>
+<a name="copyToMap-java.util.Map-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>copyToMap</h4>
+<pre>public&nbsp;void&nbsp;copyToMap(java.util.Map&lt;java.lang.Object,java.util.Dictionary&lt;?,?&gt;&gt;&nbsp;map)</pre>
+<div class="block">Copy all dependency service instances to the given map (key = dependency service, value = dependency service properties.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#copyToMap-java.util.Map-">copyToMap</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>map</code> - the map where the dependency service instances (with the corresponding service properties)</dd>
+</dl>
+</li>
+</ul>
+<a name="createCopy--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>createCopy</h4>
+<pre>public abstract&nbsp;<a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a>&nbsp;createCopy()</pre>
+<div class="block">Creates a copy of this Dependency.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#createCopy--">createCopy</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a clone of this dependency.</dd>
+</dl>
+</li>
+</ul>
+<a name="getName--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getName</h4>
+<pre>public&nbsp;java.lang.String&nbsp;getName()</pre>
+<div class="block">Returns a description of this dependency (like the dependency service class name with associated filters)</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html#getName--">getName</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html" title="interface in org.apache.felix.dm">ComponentDependencyDeclaration</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="getSimpleName--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getSimpleName</h4>
+<pre>public abstract&nbsp;java.lang.String&nbsp;getSimpleName()</pre>
+<div class="block">Returns a simple name for this dependency (like the dependency service class name).</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html#getSimpleName--">getSimpleName</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html" title="interface in org.apache.felix.dm">ComponentDependencyDeclaration</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="getType--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getType</h4>
+<pre>public abstract&nbsp;java.lang.String&nbsp;getType()</pre>
+<div class="block">Returns the dependency symbolic type.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html#getType--">getType</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html" title="interface in org.apache.felix.dm">ComponentDependencyDeclaration</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="getFilter--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getFilter</h4>
+<pre>public&nbsp;java.lang.String&nbsp;getFilter()</pre>
+<div class="block">Returns the dependency filter, if any.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html#getFilter--">getFilter</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html" title="interface in org.apache.felix.dm">ComponentDependencyDeclaration</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="getState--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getState</h4>
+<pre>public&nbsp;int&nbsp;getState()</pre>
+<div class="block">Returns this dependency state.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html#getState--">getState</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/ComponentDependencyDeclaration.html" title="interface in org.apache.felix.dm">ComponentDependencyDeclaration</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="setPropagate-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setPropagate</h4>
+<pre>public&nbsp;<a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a>&nbsp;setPropagate(boolean&nbsp;propagate)</pre>
+<div class="block">Activates Dependency service properties propagation (to the service properties of the component to which this
+ dependency is added).</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propagate</code> - true if the dependency service properties must be propagated to the service properties of 
+ the component to which this dependency is added.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this dependency instance</dd>
+</dl>
+</li>
+</ul>
+<a name="setPropagate-java.lang.Object-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setPropagate</h4>
+<pre>public&nbsp;<a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a>&nbsp;setPropagate(java.lang.Object&nbsp;instance,
+                      java.lang.String&nbsp;method)</pre>
+<div class="block">Sets a callback instance which can ba invoked with the given method in order to dynamically retrieve the 
+ dependency service properties.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>instance</code> - the callback instance</dd>
+<dd><code>method</code> - the method to invoke on the callback instance</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this dependency instance</dd>
+</dl>
+</li>
+</ul>
+<a name="setCallbacks-java.lang.String-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setCallbacks</h4>
+<pre>public&nbsp;<a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a>&nbsp;setCallbacks(java.lang.String&nbsp;add,
+                      java.lang.String&nbsp;remove)</pre>
+<div class="block">Sets the add/remove callbacks.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>add</code> - the callback to invoke when a dependency is added</dd>
+<dd><code>remove</code> - the callback to invoke when a dependency is removed</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this dependency instance</dd>
+</dl>
+</li>
+</ul>
+<a name="setCallbacks-java.lang.String-java.lang.String-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setCallbacks</h4>
+<pre>public&nbsp;<a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a>&nbsp;setCallbacks(java.lang.String&nbsp;add,
+                      java.lang.String&nbsp;change,
+                      java.lang.String&nbsp;remove)</pre>
+<div class="block">Sets the add/change/remove callbacks.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>add</code> - the callback to invoke when a dependency is added</dd>
+<dd><code>change</code> - the callback to invoke when a dependency has changed</dd>
+<dd><code>remove</code> - the callback to invoke when a dependency is removed</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this dependency instance</dd>
+</dl>
+</li>
+</ul>
+<a name="setCallbacks-java.lang.Object-java.lang.String-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setCallbacks</h4>
+<pre>public&nbsp;<a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a>&nbsp;setCallbacks(java.lang.Object&nbsp;instance,
+                      java.lang.String&nbsp;add,
+                      java.lang.String&nbsp;remove)</pre>
+<div class="block">Sets the callbacks for this service. These callbacks can be used as hooks whenever a
+ dependency is added or removed. They are called on the instance you provide. When you
+ specify callbacks, the auto configuration feature is automatically turned off, because
+ we're assuming you don't need it in this case.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>instance</code> - the instance to call the callbacks on</dd>
+<dd><code>add</code> - the method to call when a service was added</dd>
+<dd><code>remove</code> - the method to call when a service was removed</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this service dependency</dd>
+</dl>
+</li>
+</ul>
+<a name="setCallbacks-java.lang.Object-java.lang.String-java.lang.String-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setCallbacks</h4>
+<pre>public&nbsp;<a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a>&nbsp;setCallbacks(java.lang.Object&nbsp;instance,
+                      java.lang.String&nbsp;add,
+                      java.lang.String&nbsp;change,
+                      java.lang.String&nbsp;remove)</pre>
+<div class="block">Sets the callbacks for this service. These callbacks can be used as hooks whenever a
+ dependency is added, changed or removed. They are called on the instance you provide. When you
+ specify callbacks, the auto configuration feature is automatically turned off, because
+ we're assuming you don't need it in this case.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>instance</code> - the instance to call the callbacks on</dd>
+<dd><code>add</code> - the method to call when a service was added</dd>
+<dd><code>change</code> - the method to call when a service was changed</dd>
+<dd><code>remove</code> - the method to call when a service was removed</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this service dependency</dd>
+</dl>
+</li>
+</ul>
+<a name="getInstances--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getInstances</h4>
+<pre>public&nbsp;java.lang.Object[]&nbsp;getInstances()</pre>
+<div class="block">Returns the dependency callback instances</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the dependency callback instances</dd>
+</dl>
+</li>
+</ul>
+<a name="setRequired-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setRequired</h4>
+<pre>public&nbsp;<a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a>&nbsp;setRequired(boolean&nbsp;required)</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><code>ServiceDependency#setRequired(boolean)}</code></dd>
+</dl>
+</li>
+</ul>
+<a name="setAutoConfig-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setAutoConfig</h4>
+<pre>public&nbsp;<a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a>&nbsp;setAutoConfig(boolean&nbsp;autoConfig)</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><code>ServiceDependency#setAutoConfig(boolean)}</code></dd>
+</dl>
+</li>
+</ul>
+<a name="setAutoConfig-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setAutoConfig</h4>
+<pre>public&nbsp;<a href="../../../../../org/apache/felix/dm/context/AbstractDependency.html" title="type parameter in AbstractDependency">T</a>&nbsp;setAutoConfig(java.lang.String&nbsp;instanceName)</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><code>ServiceDependency#setAutoConfig(String instanceName)}</code></dd>
+</dl>
+</li>
+</ul>
+<a name="getComponentContext--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getComponentContext</h4>
+<pre>public&nbsp;<a href="../../../../../org/apache/felix/dm/context/ComponentContext.html" title="interface in org.apache.felix.dm.context">ComponentContext</a>&nbsp;getComponentContext()</pre>
+<div class="block">Returns the component implementation context</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html#getComponentContext--">getComponentContext</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/felix/dm/context/DependencyContext.html" title="interface in org.apache.felix.dm.context">DependencyContext</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the component implementation context</dd>
+</dl>
+</li>
+</ul>
+<a name="getDefaultService-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDefaultService</h4>
+<pre>protected&nbsp;java.lang.Object&nbsp;getDefaultService(boolean&nbsp;nullObject)</pre>
+<div class="block">Returns the default service, or null.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>nullObject</code> - if true, a null object may be returned.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the default service</dd>
+</dl>
+</li>
+</ul>
+<a name="ensureNotActive--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>ensureNotActive</h4>
+<pre>protected&nbsp;void&nbsp;ensureNotActive()</pre>
+<div class="block">Checks if the component dependency is not started.</div>
+</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&nbsp;Class</li>
+<li><a href="../../../../../org/apache/felix/dm/context/ComponentContext.html" title="interface in org.apache.felix.dm.context"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/felix/dm/context/AbstractDependency.html" target="_top">Frames</a></li>
+<li><a href="AbstractDependency.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;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:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</body>
+</html>