<!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 (version 1.7.0_25) on Tue Oct 08 19:30:27 CEST 2013 -->
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>HandlerManagerFactory (Apache Felix iPOJO ~ JavaDoc 1.10.1 API)</title>
<meta name="date" content="2013-10-08">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="HandlerManagerFactory (Apache Felix iPOJO ~ JavaDoc 1.10.1 API)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><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="class-use/HandlerManagerFactory.html">Use</a></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>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/felix/ipojo/HandlerManager.html" title="class in org.apache.felix.ipojo"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.HandlerTypeDescription.html" title="class in org.apache.felix.ipojo"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/felix/ipojo/HandlerManagerFactory.html" target="_top">Frames</a></li>
<li><a href="HandlerManagerFactory.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested_class_summary">Nested</a>&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.ipojo</div>
<h2 title="Class HandlerManagerFactory" class="title">Class HandlerManagerFactory</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../org/apache/felix/ipojo/IPojoFactory.html" title="class in org.apache.felix.ipojo">org.apache.felix.ipojo.IPojoFactory</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html" title="class in org.apache.felix.ipojo">org.apache.felix.ipojo.ComponentFactory</a></li>
<li>
<ul class="inheritance">
<li>org.apache.felix.ipojo.HandlerManagerFactory</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../org/apache/felix/ipojo/Factory.html" title="interface in org.apache.felix.ipojo">Factory</a>, <a href="../../../../org/apache/felix/ipojo/HandlerFactory.html" title="interface in org.apache.felix.ipojo">HandlerFactory</a>, <a href="../../../../org/apache/felix/ipojo/util/TrackerCustomizer.html" title="interface in org.apache.felix.ipojo.util">TrackerCustomizer</a></dd>
</dl>
<hr>
<br>
<pre>public class <a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.35">HandlerManagerFactory</a>
extends <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html" title="class in org.apache.felix.ipojo">ComponentFactory</a>
implements <a href="../../../../org/apache/felix/ipojo/HandlerFactory.html" title="interface in org.apache.felix.ipojo">HandlerFactory</a></pre>
<div class="block">Implementation of the handler factory interface.
 This factory is able to create handler manager.
 A handler manager is an iPOJO instance containing a handler object.</div>
<dl><dt><span class="strong">Author:</span></dt>
  <dd><a href="mailto:dev@felix.apache.org">Felix Project Team</a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested_class_summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private class&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.HandlerTypeDescription.html" title="class in org.apache.felix.ipojo">HandlerManagerFactory.HandlerTypeDescription</a></strong></code>
<div class="block">Defines the handler type description.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="nested_classes_inherited_from_class_org.apache.felix.ipojo.IPojoFactory">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;org.apache.felix.ipojo.<a href="../../../../org/apache/felix/ipojo/IPojoFactory.html" title="class in org.apache.felix.ipojo">IPojoFactory</a></h3>
<code><a href="../../../../org/apache/felix/ipojo/IPojoFactory.DefaultNameGenerator.html" title="class in org.apache.felix.ipojo">IPojoFactory.DefaultNameGenerator</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.NameGenerator.html" title="interface in org.apache.felix.ipojo">IPojoFactory.NameGenerator</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.RequiredHandler.html" title="class in org.apache.felix.ipojo">IPojoFactory.RequiredHandler</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.RetryNameGenerator.html" title="class in org.apache.felix.ipojo">IPojoFactory.RetryNameGenerator</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="overviewSummary" 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>private int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.html#m_level">m_level</a></strong></code>
<div class="block">The handler start level.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.html#m_namespace">m_namespace</a></strong></code>
<div class="block">The iPOJO Handler Namespace.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.html#m_type">m_type</a></strong></code>
<div class="block">The Handler type (<code>composite</code> or <code>primitive</code>).</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_org.apache.felix.ipojo.ComponentFactory">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.felix.ipojo.<a href="../../../../org/apache/felix/ipojo/ComponentFactory.html" title="class in org.apache.felix.ipojo">ComponentFactory</a></h3>
<code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#HANDLER_AUTO_PRIMITIVE">HANDLER_AUTO_PRIMITIVE</a>, <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#m_tracker">m_tracker</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_org.apache.felix.ipojo.IPojoFactory">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.felix.ipojo.<a href="../../../../org/apache/felix/ipojo/IPojoFactory.html" title="class in org.apache.felix.ipojo">IPojoFactory</a></h3>
<code><a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#INSTANCE_NAME">INSTANCE_NAME</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#m_componentDesc">m_componentDesc</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#m_componentInstances">m_componentInstances</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#m_componentMetadata">m_componentMetadata</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#m_context">m_context</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#m_factoryName">m_factoryName</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#m_isPublic">m_isPublic</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#m_listeners">m_listeners</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#m_logger">m_logger</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#m_requiredHandlers">m_requiredHandlers</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#m_sr">m_sr</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#m_state">m_state</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#m_version">m_version</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_org.apache.felix.ipojo.HandlerFactory">
<!--   -->
</a>
<h3>Fields inherited from interface&nbsp;org.apache.felix.ipojo.<a href="../../../../org/apache/felix/ipojo/HandlerFactory.html" title="interface in org.apache.felix.ipojo">HandlerFactory</a></h3>
<code><a href="../../../../org/apache/felix/ipojo/HandlerFactory.html#IPOJO_NAMESPACE">IPOJO_NAMESPACE</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_org.apache.felix.ipojo.Factory">
<!--   -->
</a>
<h3>Fields inherited from interface&nbsp;org.apache.felix.ipojo.<a href="../../../../org/apache/felix/ipojo/Factory.html" title="interface in org.apache.felix.ipojo">Factory</a></h3>
<code><a href="../../../../org/apache/felix/ipojo/Factory.html#FACTORY_VERSION_PROPERTY">FACTORY_VERSION_PROPERTY</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#INSTANCE_NAME_PROPERTY">INSTANCE_NAME_PROPERTY</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#INVALID">INVALID</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#VALID">VALID</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="overviewSummary" 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><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.html#HandlerManagerFactory(org.osgi.framework.BundleContext, org.apache.felix.ipojo.metadata.Element)">HandlerManagerFactory</a></strong>(<a href="http://www.osgi.org/javadoc/r4v43/core/org/osgi/framework/BundleContext.html?is-external=true" title="class or interface in org.osgi.framework">BundleContext</a>&nbsp;context,
                                          <a href="../../../../org/apache/felix/ipojo/metadata/Element.html" title="class in org.apache.felix.ipojo.metadata">Element</a>&nbsp;metadata)</code>
<div class="block">Creates a handler factory.</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="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/felix/ipojo/ComponentInstance.html" title="interface in org.apache.felix.ipojo">ComponentInstance</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.html#createInstance(java.util.Dictionary, org.apache.felix.ipojo.IPojoContext, org.apache.felix.ipojo.HandlerManager[])">createInstance</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Dictionary.html?is-external=true" title="class or interface in java.util">Dictionary</a>&nbsp;configuration,
                            <a href="../../../../org/apache/felix/ipojo/IPojoContext.html" title="class in org.apache.felix.ipojo">IPojoContext</a>&nbsp;context,
                            <a href="../../../../org/apache/felix/ipojo/HandlerManager.html" title="class in org.apache.felix.ipojo">HandlerManager</a>[]&nbsp;handlers)</code>
<div class="block">Creates an instance.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/felix/ipojo/architecture/ComponentTypeDescription.html" title="class in org.apache.felix.ipojo.architecture">ComponentTypeDescription</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.html#getComponentTypeDescription()">getComponentTypeDescription</a></strong>()</code>
<div class="block">Gets the component type description of the current factory.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.html#getFactoryName()">getFactoryName</a></strong>()</code>
<div class="block">Computes the factory name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.html#getHandlerName()">getHandlerName</a></strong>()</code>
<div class="block">Gets the name associated with this handler factory.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.html#getNamespace()">getNamespace</a></strong>()</code>
<div class="block">Gets the namespace associated with this handler factory.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/felix/ipojo/IPojoFactory.RequiredHandler.html" title="class in org.apache.felix.ipojo">IPojoFactory.RequiredHandler</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.html#getRequiredHandlerList()">getRequiredHandlerList</a></strong>()</code>
<div class="block">Computes required handlers.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.html#getStartLevel()">getStartLevel</a></strong>()</code>
<div class="block">Gets the start level of the handler objects created by this factory.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.html#getType()">getType</a></strong>()</code>
<div class="block">Gets the type of the handler factory.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.html#stopping()">stopping</a></strong>()</code>
<div class="block">Stops the factory.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.felix.ipojo.ComponentFactory">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.felix.ipojo.<a href="../../../../org/apache/felix/ipojo/ComponentFactory.html" title="class in org.apache.felix.ipojo">ComponentFactory</a></h3>
<code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#addedService(org.osgi.framework.ServiceReference)">addedService</a>, <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#addingService(org.osgi.framework.ServiceReference)">addingService</a>, <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#check(org.apache.felix.ipojo.metadata.Element)">check</a>, <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#defineClass(java.lang.String, byte[], java.security.ProtectionDomain)">defineClass</a>, <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#getBundleClassLoader()">getBundleClassLoader</a>, <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#getClassName()">getClassName</a>, <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#getPojoMetadata()">getPojoMetadata</a>, <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#getVersion()">getVersion</a>, <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#loadClass(java.lang.String)">loadClass</a>, <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#modifiedService(org.osgi.framework.ServiceReference, java.lang.Object)">modifiedService</a>, <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#removedService(org.osgi.framework.ServiceReference, java.lang.Object)">removedService</a>, <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#setUseFactoryClassloader(boolean)">setUseFactoryClassloader</a>, <a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#starting()">starting</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.felix.ipojo.IPojoFactory">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.felix.ipojo.<a href="../../../../org/apache/felix/ipojo/IPojoFactory.html" title="class in org.apache.felix.ipojo">IPojoFactory</a></h3>
<code><a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#addFactoryStateListener(org.apache.felix.ipojo.FactoryStateListener)">addFactoryStateListener</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#checkAcceptability(java.util.Dictionary)">checkAcceptability</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#computeDescription()">computeDescription</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#computeFactoryState()">computeFactoryState</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#createComponentInstance(java.util.Dictionary)">createComponentInstance</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#createComponentInstance(java.util.Dictionary, org.apache.felix.ipojo.ServiceContext)">createComponentInstance</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#deleted(java.lang.String)">deleted</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#dispose()">dispose</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#disposed(org.apache.felix.ipojo.ComponentInstance)">disposed</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getBundleContext()">getBundleContext</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getComponentDescription()">getComponentDescription</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getComponentMetadata()">getComponentMetadata</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getDescription()">getDescription</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getHandler(org.apache.felix.ipojo.IPojoFactory.RequiredHandler, org.apache.felix.ipojo.ServiceContext)">getHandler</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getInstanceByName(java.lang.String)">getInstanceByName</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getInstances()">getInstances</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getInstancesNames()">getInstancesNames</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getIPOJOBundleContext()">getIPOJOBundleContext</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getLogger()">getLogger</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getMissingHandlers()">getMissingHandlers</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getName()">getName</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getRequiredHandlers()">getRequiredHandlers</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getState()">getState</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#isAcceptable(java.util.Dictionary)">isAcceptable</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#match(org.apache.felix.ipojo.IPojoFactory.RequiredHandler, org.osgi.framework.ServiceReference)">match</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#reconfigure(java.util.Dictionary)">reconfigure</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#removeFactoryStateListener(org.apache.felix.ipojo.FactoryStateListener)">removeFactoryStateListener</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#restart()">restart</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#start()">start</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#stop()">stop</a>, <a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#updated(java.lang.String, java.util.Dictionary)">updated</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.felix.ipojo.Factory">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.felix.ipojo.<a href="../../../../org/apache/felix/ipojo/Factory.html" title="interface in org.apache.felix.ipojo">Factory</a></h3>
<code><a href="../../../../org/apache/felix/ipojo/Factory.html#addFactoryStateListener(org.apache.felix.ipojo.FactoryStateListener)">addFactoryStateListener</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#createComponentInstance(java.util.Dictionary)">createComponentInstance</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#createComponentInstance(java.util.Dictionary, org.apache.felix.ipojo.ServiceContext)">createComponentInstance</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#getBundleContext()">getBundleContext</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#getClassName()">getClassName</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#getComponentDescription()">getComponentDescription</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#getComponentMetadata()">getComponentMetadata</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#getDescription()">getDescription</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#getInstances()">getInstances</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#getInstancesNames()">getInstancesNames</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#getMissingHandlers()">getMissingHandlers</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#getName()">getName</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#getRequiredHandlers()">getRequiredHandlers</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#getState()">getState</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#getVersion()">getVersion</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#isAcceptable(java.util.Dictionary)">isAcceptable</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#reconfigure(java.util.Dictionary)">reconfigure</a>, <a href="../../../../org/apache/felix/ipojo/Factory.html#removeFactoryStateListener(org.apache.felix.ipojo.FactoryStateListener)">removeFactoryStateListener</a></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_type">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>m_type</h4>
<pre>private final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.40">m_type</a></pre>
<div class="block">The Handler type (<code>composite</code> or <code>primitive</code>).</div>
</li>
</ul>
<a name="m_namespace">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>m_namespace</h4>
<pre>private final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.46">m_namespace</a></pre>
<div class="block">The iPOJO Handler Namespace.
 (Uses the iPOJO default namespace is not specified)</div>
</li>
</ul>
<a name="m_level">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>m_level</h4>
<pre>private final&nbsp;int <a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.53">m_level</a></pre>
<div class="block">The handler start level.
 Lower levels are priority and so are configured and started
 before higher levels, and are stopped after.</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="HandlerManagerFactory(org.osgi.framework.BundleContext, org.apache.felix.ipojo.metadata.Element)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>HandlerManagerFactory</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.61">HandlerManagerFactory</a>(<a href="http://www.osgi.org/javadoc/r4v43/core/org/osgi/framework/BundleContext.html?is-external=true" title="class or interface in org.osgi.framework">BundleContext</a>&nbsp;context,
                     <a href="../../../../org/apache/felix/ipojo/metadata/Element.html" title="class in org.apache.felix.ipojo.metadata">Element</a>&nbsp;metadata)
                      throws <a href="../../../../org/apache/felix/ipojo/ConfigurationException.html" title="class in org.apache.felix.ipojo">ConfigurationException</a></pre>
<div class="block">Creates a handler factory.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>context</code> - the bundle context</dd><dd><code>metadata</code> - the metadata of the component to create</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/felix/ipojo/ConfigurationException.html" title="class in org.apache.felix.ipojo">ConfigurationException</a></code> - if the element describing the factory is malformed.</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="getNamespace()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNamespace</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.92">getNamespace</a>()</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../org/apache/felix/ipojo/HandlerFactory.html#getNamespace()">HandlerFactory</a></code></strong></div>
<div class="block">Gets the namespace associated with this handler factory.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../org/apache/felix/ipojo/HandlerFactory.html#getNamespace()">getNamespace</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/felix/ipojo/HandlerFactory.html" title="interface in org.apache.felix.ipojo">HandlerFactory</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>the namespace used by this handler</dd></dl>
</li>
</ul>
<a name="getHandlerName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHandlerName</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.96">getHandlerName</a>()</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../org/apache/felix/ipojo/HandlerFactory.html#getHandlerName()">HandlerFactory</a></code></strong></div>
<div class="block">Gets the name associated with this handler factory.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../org/apache/felix/ipojo/HandlerFactory.html#getHandlerName()">getHandlerName</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/felix/ipojo/HandlerFactory.html" title="interface in org.apache.felix.ipojo">HandlerFactory</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>the name used by this handler</dd></dl>
</li>
</ul>
<a name="getType()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getType</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.100">getType</a>()</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../org/apache/felix/ipojo/HandlerFactory.html#getType()">HandlerFactory</a></code></strong></div>
<div class="block">Gets the type of the handler factory.
 The handler can only be plugged on instance container with the same type.
 Basically, types are <code>primitive</code> and <code>composite</code>.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../org/apache/felix/ipojo/HandlerFactory.html#getType()">getType</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/felix/ipojo/HandlerFactory.html" title="interface in org.apache.felix.ipojo">HandlerFactory</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>the type of the handler</dd></dl>
</li>
</ul>
<a name="getStartLevel()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStartLevel</h4>
<pre>public&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.104">getStartLevel</a>()</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../org/apache/felix/ipojo/HandlerFactory.html#getStartLevel()">HandlerFactory</a></code></strong></div>
<div class="block">Gets the start level of the handler objects created by this factory.
 Handlers with a low start level are configured and started before 
 handlers with an higher start level. Moreover, these handlers are
 stopped and disposed after.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../org/apache/felix/ipojo/HandlerFactory.html#getStartLevel()">getStartLevel</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/felix/ipojo/HandlerFactory.html" title="interface in org.apache.felix.ipojo">HandlerFactory</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>the handler's start level</dd></dl>
</li>
</ul>
<a name="getComponentTypeDescription()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getComponentTypeDescription</h4>
<pre>public&nbsp;<a href="../../../../org/apache/felix/ipojo/architecture/ComponentTypeDescription.html" title="class in org.apache.felix.ipojo.architecture">ComponentTypeDescription</a>&nbsp;<a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.108">getComponentTypeDescription</a>()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#getComponentTypeDescription()">ComponentFactory</a></code></strong></div>
<div class="block">Gets the component type description of the current factory.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#getComponentTypeDescription()">getComponentTypeDescription</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html" title="class in org.apache.felix.ipojo">ComponentFactory</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>the description of the component type attached to this factory.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/felix/ipojo/IPojoFactory.html#getComponentTypeDescription()"><code>IPojoFactory.getComponentTypeDescription()</code></a></dd></dl>
</li>
</ul>
<a name="getFactoryName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFactoryName</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.112">getFactoryName</a>()</pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#getFactoryName()">ComponentFactory</a></code></strong></div>
<div class="block">Computes the factory name. The factory name is computed from
 the 'name' and 'classname' attributes.
 This method does not manipulate any non-immutable fields,
 so does not need to be synchronized.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#getFactoryName()">getFactoryName</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html" title="class in org.apache.felix.ipojo">ComponentFactory</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>the factory name.</dd></dl>
</li>
</ul>
<a name="stopping()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stopping</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.126">stopping</a>()</pre>
<div class="block">Stops the factory.
 This method does not disposed created instances.
 These instances will be disposed by the instance managers.
 This method is called with the lock.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#stopping()">stopping</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html" title="class in org.apache.felix.ipojo">ComponentFactory</a></code></dd>
</dl>
</li>
</ul>
<a name="createInstance(java.util.Dictionary, org.apache.felix.ipojo.IPojoContext, org.apache.felix.ipojo.HandlerManager[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createInstance</h4>
<pre>public&nbsp;<a href="../../../../org/apache/felix/ipojo/ComponentInstance.html" title="interface in org.apache.felix.ipojo">ComponentInstance</a>&nbsp;<a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.143">createInstance</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Dictionary.html?is-external=true" title="class or interface in java.util">Dictionary</a>&nbsp;configuration,
                               <a href="../../../../org/apache/felix/ipojo/IPojoContext.html" title="class in org.apache.felix.ipojo">IPojoContext</a>&nbsp;context,
                               <a href="../../../../org/apache/felix/ipojo/HandlerManager.html" title="class in org.apache.felix.ipojo">HandlerManager</a>[]&nbsp;handlers)
                                 throws <a href="../../../../org/apache/felix/ipojo/ConfigurationException.html" title="class in org.apache.felix.ipojo">ConfigurationException</a></pre>
<div class="block">Creates an instance. The given configuration needs to contain the 'name'
 property. This method is called when holding the lock.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#createInstance(java.util.Dictionary, org.apache.felix.ipojo.IPojoContext, org.apache.felix.ipojo.HandlerManager[])">createInstance</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html" title="class in org.apache.felix.ipojo">ComponentFactory</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>configuration</code> - the configuration of the created instance.</dd><dd><code>context</code> - the service context to push for this instance.</dd><dd><code>handlers</code> - the handler array to attach to the instance.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the created <a href="../../../../org/apache/felix/ipojo/HandlerManager.html" title="class in org.apache.felix.ipojo"><code>HandlerManager</code></a>.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/felix/ipojo/ConfigurationException.html" title="class in org.apache.felix.ipojo">ConfigurationException</a></code> - if the instance configuration failed.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/felix/ipojo/Factory.html#createComponentInstance(java.util.Dictionary)"><code>Factory.createComponentInstance(java.util.Dictionary)</code></a></dd></dl>
</li>
</ul>
<a name="getRequiredHandlerList()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getRequiredHandlerList</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/felix/ipojo/IPojoFactory.RequiredHandler.html" title="class in org.apache.felix.ipojo">IPojoFactory.RequiredHandler</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/felix/ipojo/HandlerManagerFactory.html#line.158">getRequiredHandlerList</a>()</pre>
<div class="block">Computes required handlers. This method does not manipulate any
 non-immutable fields, so does not need to be synchronized.
 This method is overridden to avoid using the same detection rules
 than 'primitive' components. Indeed, architecture is disable by default,
 and a handler is never immediate.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html#getRequiredHandlerList()">getRequiredHandlerList</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/felix/ipojo/ComponentFactory.html" title="class in org.apache.felix.ipojo">ComponentFactory</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>the required handler list.</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><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="class-use/HandlerManagerFactory.html">Use</a></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>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/felix/ipojo/HandlerManager.html" title="class in org.apache.felix.ipojo"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/apache/felix/ipojo/HandlerManagerFactory.HandlerTypeDescription.html" title="class in org.apache.felix.ipojo"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/felix/ipojo/HandlerManagerFactory.html" target="_top">Frames</a></li>
<li><a href="HandlerManagerFactory.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested_class_summary">Nested</a>&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 ======= -->
<p class="legalCopy"><small>Copyright &#169; 2013. All rights reserved.</small></p>
</body>
</html>
