blob: e7c594abd03fb370de33be866c11d8203a2c3dd3 [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.11) on Mon Jun 14 16:37:38 EDT 2021 -->
<title>ContainerLifeCycle (Jetty :: Project 9.4.42.v20210604 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2021-06-14">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ContainerLifeCycle (Jetty :: Project 9.4.42.v20210604 API)";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":41,"i12":41,"i13":42,"i14":41,"i15":10,"i16":10,"i17":42,"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};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../";
var useModuleDirectories = false;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ContainerLifeCycle.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>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</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>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.eclipse.jetty.util.component</a></div>
<h2 title="Class ContainerLifeCycle" class="title">Class ContainerLifeCycle</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">org.eclipse.jetty.util.component.AbstractLifeCycle</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.jetty.util.component.ContainerLifeCycle</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code>, <code><a href="Destroyable.html" title="interface in org.eclipse.jetty.util.component">Destroyable</a></code>, <code><a href="Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></code>, <code><a href="Dumpable.DumpableContainer.html" title="interface in org.eclipse.jetty.util.component">Dumpable.DumpableContainer</a></code>, <code><a href="LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a></code></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><code><a href="../../server/AbstractConnectionFactory.html" title="class in org.eclipse.jetty.server">AbstractConnectionFactory</a></code>, <code><a href="../../client/AbstractConnectionPool.html" title="class in org.eclipse.jetty.client">AbstractConnectionPool</a></code>, <code><a href="../../server/AbstractConnector.html" title="class in org.eclipse.jetty.server">AbstractConnector</a></code>, <code><a href="../../server/handler/AbstractHandler.html" title="class in org.eclipse.jetty.server.handler">AbstractHandler</a></code>, <code><a href="../../client/AbstractHttpClientTransport.html" title="class in org.eclipse.jetty.client">AbstractHttpClientTransport</a></code>, <code><a href="../../security/AbstractLoginService.html" title="class in org.eclipse.jetty.security">AbstractLoginService</a></code>, <code><a href="../../server/AbstractNCSARequestLog.html" title="class in org.eclipse.jetty.server">AbstractNCSARequestLog</a></code>, <code><a href="../../server/session/AbstractSessionCache.html" title="class in org.eclipse.jetty.server.session">AbstractSessionCache</a></code>, <code><a href="../../server/session/AbstractSessionDataStore.html" title="class in org.eclipse.jetty.server.session">AbstractSessionDataStore</a></code>, <code><a href="AttributeContainerMap.html" title="class in org.eclipse.jetty.util.component">AttributeContainerMap</a></code>, <code><a href="../../server/session/CachingSessionDataStore.html" title="class in org.eclipse.jetty.server.session">CachingSessionDataStore</a></code>, <code><a href="../../websocket/jsr356/ClientContainer.html" title="class in org.eclipse.jetty.websocket.jsr356">ClientContainer</a></code>, <code><a href="../../security/ConfigurableSpnegoLoginService.html" title="class in org.eclipse.jetty.security">ConfigurableSpnegoLoginService</a></code>, <code><a href="../../websocket/client/io/ConnectionManager.html" title="class in org.eclipse.jetty.websocket.client.io">ConnectionManager</a></code>, <code><a href="../../server/CustomRequestLog.html" title="class in org.eclipse.jetty.server">CustomRequestLog</a></code>, <code><a href="../../server/session/DefaultSessionIdManager.html" title="class in org.eclipse.jetty.server.session">DefaultSessionIdManager</a></code>, <code><a href="../../http/spi/DelegatingThreadPool.html" title="class in org.eclipse.jetty.http.spi">DelegatingThreadPool</a></code>, <code><a href="../../deploy/DeploymentManager.html" title="class in org.eclipse.jetty.deploy">DeploymentManager</a></code>, <code><a href="../thread/strategy/EatWhatYouKill.html" title="class in org.eclipse.jetty.util.thread.strategy">EatWhatYouKill</a></code>, <code><a href="../thread/ExecutorThreadPool.html" title="class in org.eclipse.jetty.util.thread">ExecutorThreadPool</a></code>, <code><a href="../../websocket/common/extensions/ExtensionStack.html" title="class in org.eclipse.jetty.websocket.common.extensions">ExtensionStack</a></code>, <code><a href="../../http2/client/HTTP2Client.html" title="class in org.eclipse.jetty.http2.client">HTTP2Client</a></code>, <code><a href="../../http2/HTTP2Session.html" title="class in org.eclipse.jetty.http2">HTTP2Session</a></code>, <code><a href="../../client/HttpClient.html" title="class in org.eclipse.jetty.client">HttpClient</a></code>, <code><a href="../../client/HttpDestination.html" title="class in org.eclipse.jetty.client">HttpDestination</a></code>, <code><a href="../../jaas/JAASLoginService.html" title="class in org.eclipse.jetty.jaas">JAASLoginService</a></code>, <code><a href="../ssl/KeyStoreScanner.html" title="class in org.eclipse.jetty.util.ssl">KeyStoreScanner</a></code>, <code><a href="../../io/LeakTrackingByteBufferPool.html" title="class in org.eclipse.jetty.io">LeakTrackingByteBufferPool</a></code>, <code><a href="../../server/LowResourceMonitor.html" title="class in org.eclipse.jetty.server">LowResourceMonitor</a></code>, <code><a href="../../io/ManagedSelector.html" title="class in org.eclipse.jetty.io">ManagedSelector</a></code>, <code><a href="../../maven/plugin/MavenServerConnector.html" title="class in org.eclipse.jetty.maven.plugin">MavenServerConnector</a></code>, <code><a href="../../websocket/server/NativeWebSocketConfiguration.html" title="class in org.eclipse.jetty.websocket.server">NativeWebSocketConfiguration</a></code>, <code><a href="../../security/openid/OpenIdConfiguration.html" title="class in org.eclipse.jetty.security.openid">OpenIdConfiguration</a></code>, <code><a href="../../security/openid/OpenIdLoginService.html" title="class in org.eclipse.jetty.security.openid">OpenIdLoginService</a></code>, <code><a href="../thread/QueuedThreadPool.html" title="class in org.eclipse.jetty.util.thread">QueuedThreadPool</a></code>, <code><a href="../../io/SelectorManager.html" title="class in org.eclipse.jetty.io">SelectorManager</a></code>, <code><a href="../../websocket/common/scopes/SimpleContainerScope.html" title="class in org.eclipse.jetty.websocket.common.scopes">SimpleContainerScope</a></code>, <code><a href="../../websocket/client/WebSocketClient.html" title="class in org.eclipse.jetty.websocket.client">WebSocketClient</a></code>, <code><a href="../../websocket/server/WebSocketServerFactory.html" title="class in org.eclipse.jetty.websocket.server">WebSocketServerFactory</a></code>, <code><a href="../../websocket/common/WebSocketSession.html" title="class in org.eclipse.jetty.websocket.common">WebSocketSession</a></code></dd>
</dl>
<hr>
<pre><a href="../annotation/ManagedObject.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedObject</a>("Implementation of Container and LifeCycle")
public class <span class="typeNameLabel">ContainerLifeCycle</span>
extends <a href="AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a>
implements <a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a>, <a href="Destroyable.html" title="interface in org.eclipse.jetty.util.component">Destroyable</a>, <a href="Dumpable.DumpableContainer.html" title="interface in org.eclipse.jetty.util.component">Dumpable.DumpableContainer</a></pre>
<div class="block">A ContainerLifeCycle is an <a href="LifeCycle.html" title="interface in org.eclipse.jetty.util.component"><code>LifeCycle</code></a> implementation for a collection of contained beans.
<p>
Beans can be added to the ContainerLifeCycle either as managed beans or as unmanaged beans.
A managed bean is started, stopped and destroyed with the aggregate.
An unmanaged bean is associated with the aggregate for the purposes of <a href="#dump()"><code>dump()</code></a>, but its
lifecycle must be managed externally.
<p>
When a <a href="LifeCycle.html" title="interface in org.eclipse.jetty.util.component"><code>LifeCycle</code></a> bean is added without a managed state being specified the state is
determined heuristically:
<ul>
<li>If the added bean is running, it will be added as an unmanaged bean.</li>
<li>If the added bean is !running and the container is !running, it will be added as an AUTO bean (see below).</li>
<li>If the added bean is !running and the container is starting, it will be added as a managed bean
and will be started (this handles the frequent case of new beans added during calls to doStart).</li>
<li>If the added bean is !running and the container is started, it will be added as an unmanaged bean.</li>
</ul>
When the container is started, then all contained managed beans will also be started.
Any contained AUTO beans will be check for their status and if already started will be switched unmanaged beans,
else they will be started and switched to managed beans.
Beans added after a container is started are not started and their state needs to be explicitly managed.
<p>
When stopping the container, a contained bean will be stopped by this aggregate only if it
is started by this aggregate.
<p>
The methods <a href="#addBean(java.lang.Object,boolean)"><code>addBean(Object, boolean)</code></a>, <a href="#manage(java.lang.Object)"><code>manage(Object)</code></a> and <a href="#unmanage(java.lang.Object)"><code>unmanage(Object)</code></a> can be used to
explicitly control the life cycle relationship.
<p>
If adding a bean that is shared between multiple <a href="ContainerLifeCycle.html" title="class in org.eclipse.jetty.util.component"><code>ContainerLifeCycle</code></a> instances, then it should be started
before being added, so it is unmanaged, or the API must be used to explicitly set it as unmanaged.
<p>
This class also provides utility methods to dump deep structures of objects.
In the dump, the following symbols are used to indicate the type of contained object:
<pre>
SomeContainerLifeCycleInstance
+- contained POJO instance
+= contained MANAGED object, started and stopped with this instance
+~ referenced UNMANAGED object, with separate lifecycle
+? referenced AUTO object that could become MANAGED or UNMANAGED.
</pre></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.AbstractLifeCycle">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3>
<code><a href="AbstractLifeCycle.AbstractLifeCycleListener.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle.AbstractLifeCycleListener</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.Container">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></h3>
<code><a href="Container.InheritedListener.html" title="interface in org.eclipse.jetty.util.component">Container.InheritedListener</a>, <a href="Container.Listener.html" title="interface in org.eclipse.jetty.util.component">Container.Listener</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.Dumpable">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></h3>
<code><a href="Dumpable.DumpableContainer.html" title="interface in org.eclipse.jetty.util.component">Dumpable.DumpableContainer</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.LifeCycle">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a></h3>
<code><a href="LifeCycle.Listener.html" title="interface in org.eclipse.jetty.util.component">LifeCycle.Listener</a></code></li>
</ul>
</li>
</ul>
</section>
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.org.eclipse.jetty.util.component.AbstractLifeCycle">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3>
<code><a href="AbstractLifeCycle.html#FAILED">FAILED</a>, <a href="AbstractLifeCycle.html#RUNNING">RUNNING</a>, <a href="AbstractLifeCycle.html#STARTED">STARTED</a>, <a href="AbstractLifeCycle.html#STARTING">STARTING</a>, <a href="AbstractLifeCycle.html#STOPPED">STOPPED</a>, <a href="AbstractLifeCycle.html#STOPPING">STOPPING</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.org.eclipse.jetty.util.component.Dumpable">
<!-- -->
</a>
<h3>Fields inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></h3>
<code><a href="Dumpable.html#KEY">KEY</a></code></li>
</ul>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">ContainerLifeCycle</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></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="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addBean(java.lang.Object)">addBean</a></span>&#8203;(java.lang.Object&nbsp;o)</code></th>
<td class="colLast">
<div class="block">Adds the given bean, detecting whether to manage it or not.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addBean(java.lang.Object,boolean)">addBean</a></span>&#8203;(java.lang.Object&nbsp;o,
boolean&nbsp;managed)</code></th>
<td class="colLast">
<div class="block">Adds the given bean, explicitly managing it or not.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addEventListener(org.eclipse.jetty.util.component.Container.Listener)">addEventListener</a></span>&#8203;(<a href="Container.Listener.html" title="interface in org.eclipse.jetty.util.component">Container.Listener</a>&nbsp;listener)</code></th>
<td class="colLast">
<div class="block">Add an event listener.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addManaged(org.eclipse.jetty.util.component.LifeCycle)">addManaged</a></span>&#8203;(<a href="LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a>&nbsp;lifecycle)</code></th>
<td class="colLast">
<div class="block">Adds a managed lifecycle.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#contains(java.lang.Object)">contains</a></span>&#8203;(java.lang.Object&nbsp;bean)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#destroy()">destroy</a></span>()</code></th>
<td class="colLast">
<div class="block">Destroys the managed Destroyable beans in the reverse order they were added.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doStart()">doStart</a></span>()</code></th>
<td class="colLast">
<div class="block">Starts the managed lifecycle beans in the order they were added.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doStop()">doStop</a></span>()</code></th>
<td class="colLast">
<div class="block">Stops the managed lifecycle beans in the reverse order they were added.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dump()">dump</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dump(java.lang.Appendable)">dump</a></span>&#8203;(java.lang.Appendable&nbsp;out)</code></th>
<td class="colLast">
<div class="block">Dump this object to an Appendable with no indent.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dump(java.lang.Appendable,java.lang.String)">dump</a></span>&#8203;(java.lang.Appendable&nbsp;out,
java.lang.String&nbsp;indent)</code></th>
<td class="colLast">
<div class="block">Dump this object (and children) into an Appendable using the provided indent after any new lines.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>static void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dump(java.lang.Appendable,java.lang.String,java.util.Collection...)">dump</a></span>&#8203;(java.lang.Appendable&nbsp;out,
java.lang.String&nbsp;indent,
java.util.Collection&lt;?&gt;...&nbsp;collections)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dump(org.eclipse.jetty.util.component.Dumpable)">dump</a></span>&#8203;(<a href="Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a>&nbsp;dumpable)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">use <a href="Dumpable.html#dump(org.eclipse.jetty.util.component.Dumpable)"><code>Dumpable.dump(Dumpable)</code></a> instead</div>
</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dumpBeans(java.lang.Appendable,java.lang.String,java.util.Collection...)">dumpBeans</a></span>&#8203;(java.lang.Appendable&nbsp;out,
java.lang.String&nbsp;indent,
java.util.Collection&lt;?&gt;...&nbsp;items)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">use <a href="#dumpObjects(java.lang.Appendable,java.lang.String,java.lang.Object...)"><code>dumpObjects(Appendable, String, Object...)</code></a></div>
</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>static void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dumpObject(java.lang.Appendable,java.lang.Object)">dumpObject</a></span>&#8203;(java.lang.Appendable&nbsp;out,
java.lang.Object&nbsp;obj)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">use <a href="Dumpable.html#dumpObject(java.lang.Appendable,java.lang.Object)"><code>Dumpable.dumpObject(Appendable, Object)</code></a> instead</div>
</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dumpObjects(java.lang.Appendable,java.lang.String,java.lang.Object...)">dumpObjects</a></span>&#8203;(java.lang.Appendable&nbsp;out,
java.lang.String&nbsp;indent,
java.lang.Object...&nbsp;items)</code></th>
<td class="colLast">
<div class="block">Dump this object, it's contained beans and additional items to an Appendable</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dumpStdErr()">dumpStdErr</a></span>()</code></th>
<td class="colLast">
<div class="block">Dumps to <code>System.err</code>.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dumpThis(java.lang.Appendable)">dumpThis</a></span>&#8203;(java.lang.Appendable&nbsp;out)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBean(java.lang.Class)">getBean</a></span>&#8203;(java.lang.Class&lt;T&gt;&nbsp;clazz)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>java.util.Collection&lt;java.lang.Object&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBeans()">getBeans</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;java.util.Collection&lt;T&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBeans(java.lang.Class)">getBeans</a></span>&#8203;(java.lang.Class&lt;T&gt;&nbsp;clazz)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;java.util.Collection&lt;T&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getContainedBeans(java.lang.Class)">getContainedBeans</a></span>&#8203;(java.lang.Class&lt;T&gt;&nbsp;clazz)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>protected &lt;T&gt;&nbsp;void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getContainedBeans(java.lang.Class,java.util.Collection)">getContainedBeans</a></span>&#8203;(java.lang.Class&lt;T&gt;&nbsp;clazz,
java.util.Collection&lt;T&gt;&nbsp;beans)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isAuto(java.lang.Object)">isAuto</a></span>&#8203;(java.lang.Object&nbsp;bean)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isManaged(java.lang.Object)">isManaged</a></span>&#8203;(java.lang.Object&nbsp;bean)</code></th>
<td class="colLast">
<div class="block">Test if this container manages a bean</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isUnmanaged(java.lang.Object)">isUnmanaged</a></span>&#8203;(java.lang.Object&nbsp;bean)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#manage(java.lang.Object)">manage</a></span>&#8203;(java.lang.Object&nbsp;bean)</code></th>
<td class="colLast">
<div class="block">Manages a bean already contained by this aggregate, so that it is started/stopped/destroyed with this
aggregate.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#removeBean(java.lang.Object)">removeBean</a></span>&#8203;(java.lang.Object&nbsp;o)</code></th>
<td class="colLast">
<div class="block">Removes the given bean.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#removeBeans()">removeBeans</a></span>()</code></th>
<td class="colLast">
<div class="block">Removes all bean</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#removeEventListener(org.eclipse.jetty.util.component.Container.Listener)">removeEventListener</a></span>&#8203;(<a href="Container.Listener.html" title="interface in org.eclipse.jetty.util.component">Container.Listener</a>&nbsp;listener)</code></th>
<td class="colLast">
<div class="block">Remove an event listener.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setBeans(java.util.Collection)">setBeans</a></span>&#8203;(java.util.Collection&lt;java.lang.Object&gt;&nbsp;beans)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setStopTimeout(long)">setStopTimeout</a></span>&#8203;(long&nbsp;stopTimeout)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#start(org.eclipse.jetty.util.component.LifeCycle)">start</a></span>&#8203;(<a href="LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a>&nbsp;l)</code></th>
<td class="colLast">
<div class="block">Starts the given lifecycle.</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#stop(org.eclipse.jetty.util.component.LifeCycle)">stop</a></span>&#8203;(<a href="LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a>&nbsp;l)</code></th>
<td class="colLast">
<div class="block">Stops the given lifecycle.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#unmanage(java.lang.Object)">unmanage</a></span>&#8203;(java.lang.Object&nbsp;bean)</code></th>
<td class="colLast">
<div class="block">Unmanages a bean already contained by this aggregate, so that it is not started/stopped/destroyed with this
aggregate.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#updateBean(java.lang.Object,java.lang.Object)">updateBean</a></span>&#8203;(java.lang.Object&nbsp;oldBean,
java.lang.Object&nbsp;newBean)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#updateBean(java.lang.Object,java.lang.Object,boolean)">updateBean</a></span>&#8203;(java.lang.Object&nbsp;oldBean,
java.lang.Object&nbsp;newBean,
boolean&nbsp;managed)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#updateBeans(java.lang.Object%5B%5D,java.lang.Object%5B%5D)">updateBeans</a></span>&#8203;(java.lang.Object[]&nbsp;oldBeans,
java.lang.Object[]&nbsp;newBeans)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.AbstractLifeCycle">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3>
<code><a href="AbstractLifeCycle.html#addLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">addLifeCycleListener</a>, <a href="AbstractLifeCycle.html#getState()">getState</a>, <a href="AbstractLifeCycle.html#getState(org.eclipse.jetty.util.component.LifeCycle)">getState</a>, <a href="AbstractLifeCycle.html#getStopTimeout()">getStopTimeout</a>, <a href="AbstractLifeCycle.html#isFailed()">isFailed</a>, <a href="AbstractLifeCycle.html#isRunning()">isRunning</a>, <a href="AbstractLifeCycle.html#isStarted()">isStarted</a>, <a href="AbstractLifeCycle.html#isStarting()">isStarting</a>, <a href="AbstractLifeCycle.html#isStopped()">isStopped</a>, <a href="AbstractLifeCycle.html#isStopping()">isStopping</a>, <a href="AbstractLifeCycle.html#removeLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">removeLifeCycleListener</a>, <a href="AbstractLifeCycle.html#start()">start</a>, <a href="AbstractLifeCycle.html#stop()">stop</a>, <a href="AbstractLifeCycle.html#toString()">toString</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="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>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.Dumpable">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></h3>
<code><a href="Dumpable.html#dumpSelf()">dumpSelf</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.Dumpable.DumpableContainer">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="Dumpable.DumpableContainer.html" title="interface in org.eclipse.jetty.util.component">Dumpable.DumpableContainer</a></h3>
<code><a href="Dumpable.DumpableContainer.html#isDumpable(java.lang.Object)">isDumpable</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ContainerLifeCycle</h4>
<pre>public&nbsp;ContainerLifeCycle()</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="doStart()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doStart</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;doStart()
throws java.lang.Exception</pre>
<div class="block">Starts the managed lifecycle beans in the order they were added.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="AbstractLifeCycle.html#doStart()">doStart</a></code>&nbsp;in class&nbsp;<code><a href="AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Exception</code></dd>
</dl>
</li>
</ul>
<a id="start(org.eclipse.jetty.util.component.LifeCycle)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>start</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;start&#8203;(<a href="LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a>&nbsp;l)
throws java.lang.Exception</pre>
<div class="block">Starts the given lifecycle.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>l</code> - the lifecycle to start</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Exception</code> - if unable to start lifecycle</dd>
</dl>
</li>
</ul>
<a id="stop(org.eclipse.jetty.util.component.LifeCycle)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stop</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;stop&#8203;(<a href="LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a>&nbsp;l)
throws java.lang.Exception</pre>
<div class="block">Stops the given lifecycle.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>l</code> - the lifecycle to stop</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Exception</code> - if unable to stop the lifecycle</dd>
</dl>
</li>
</ul>
<a id="doStop()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doStop</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;doStop()
throws java.lang.Exception</pre>
<div class="block">Stops the managed lifecycle beans in the reverse order they were added.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="AbstractLifeCycle.html#doStop()">doStop</a></code>&nbsp;in class&nbsp;<code><a href="AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Exception</code></dd>
</dl>
</li>
</ul>
<a id="destroy()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>destroy</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;destroy()</pre>
<div class="block">Destroys the managed Destroyable beans in the reverse order they were added.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Destroyable.html#destroy()">destroy</a></code>&nbsp;in interface&nbsp;<code><a href="Destroyable.html" title="interface in org.eclipse.jetty.util.component">Destroyable</a></code></dd>
</dl>
</li>
</ul>
<a id="contains(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>contains</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;contains&#8203;(java.lang.Object&nbsp;bean)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>bean</code> - the bean to test</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether this aggregate contains the bean</dd>
</dl>
</li>
</ul>
<a id="isManaged(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isManaged</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isManaged&#8203;(java.lang.Object&nbsp;bean)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Container.html#isManaged(java.lang.Object)">Container</a></code></span></div>
<div class="block">Test if this container manages a bean</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Container.html#isManaged(java.lang.Object)">isManaged</a></code>&nbsp;in interface&nbsp;<code><a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>bean</code> - the bean to test</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether this aggregate contains and manages the bean</dd>
</dl>
</li>
</ul>
<a id="isAuto(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAuto</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isAuto&#8203;(java.lang.Object&nbsp;bean)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>bean</code> - the bean to test</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether this aggregate contains the bean in auto state</dd>
</dl>
</li>
</ul>
<a id="isUnmanaged(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isUnmanaged</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isUnmanaged&#8203;(java.lang.Object&nbsp;bean)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>bean</code> - the bean to test</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether this aggregate contains the bean in auto state</dd>
</dl>
</li>
</ul>
<a id="addBean(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addBean</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;addBean&#8203;(java.lang.Object&nbsp;o)</pre>
<div class="block">Adds the given bean, detecting whether to manage it or not.
If the bean is a <a href="LifeCycle.html" title="interface in org.eclipse.jetty.util.component"><code>LifeCycle</code></a>, then it will be managed if it is not
already started and not managed if it is already started.
The <a href="#addBean(java.lang.Object,boolean)"><code>addBean(Object, boolean)</code></a>
method should be used if this is not correct, or the <a href="#manage(java.lang.Object)"><code>manage(Object)</code></a> and <a href="#unmanage(java.lang.Object)"><code>unmanage(Object)</code></a>
methods may be used after an add to change the status.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Container.html#addBean(java.lang.Object)">addBean</a></code>&nbsp;in interface&nbsp;<code><a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>o</code> - the bean object to add</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the bean was added, false if it was already present</dd>
</dl>
</li>
</ul>
<a id="addBean(java.lang.Object,boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addBean</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;addBean&#8203;(java.lang.Object&nbsp;o,
boolean&nbsp;managed)</pre>
<div class="block">Adds the given bean, explicitly managing it or not.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Container.html#addBean(java.lang.Object,boolean)">addBean</a></code>&nbsp;in interface&nbsp;<code><a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>o</code> - The bean object to add</dd>
<dd><code>managed</code> - whether to managed the lifecycle of the bean</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the bean was added, false if it was already present</dd>
</dl>
</li>
</ul>
<a id="addManaged(org.eclipse.jetty.util.component.LifeCycle)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addManaged</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;addManaged&#8203;(<a href="LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a>&nbsp;lifecycle)</pre>
<div class="block">Adds a managed lifecycle.
<p>This is a convenience method that uses addBean(lifecycle,true)
and then ensures that the added bean is started iff this container
is running. Exception from nested calls to start are caught and
wrapped as RuntimeExceptions</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lifecycle</code> - the managed lifecycle to add</dd>
</dl>
</li>
</ul>
<a id="addEventListener(org.eclipse.jetty.util.component.Container.Listener)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addEventListener</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;addEventListener&#8203;(<a href="Container.Listener.html" title="interface in org.eclipse.jetty.util.component">Container.Listener</a>&nbsp;listener)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Container.html#addEventListener(org.eclipse.jetty.util.component.Container.Listener)">Container</a></code></span></div>
<div class="block">Add an event listener.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Container.html#addEventListener(org.eclipse.jetty.util.component.Container.Listener)">addEventListener</a></code>&nbsp;in interface&nbsp;<code><a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to add</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Container.html#addBean(java.lang.Object)"><code>Container.addBean(Object)</code></a></dd>
</dl>
</li>
</ul>
<a id="manage(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>manage</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;manage&#8203;(java.lang.Object&nbsp;bean)</pre>
<div class="block">Manages a bean already contained by this aggregate, so that it is started/stopped/destroyed with this
aggregate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Container.html#manage(java.lang.Object)">manage</a></code>&nbsp;in interface&nbsp;<code><a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>bean</code> - The bean to manage (must already have been added).</dd>
</dl>
</li>
</ul>
<a id="unmanage(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unmanage</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;unmanage&#8203;(java.lang.Object&nbsp;bean)</pre>
<div class="block">Unmanages a bean already contained by this aggregate, so that it is not started/stopped/destroyed with this
aggregate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Container.html#unmanage(java.lang.Object)">unmanage</a></code>&nbsp;in interface&nbsp;<code><a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>bean</code> - The bean to unmanage (must already have been added).</dd>
</dl>
</li>
</ul>
<a id="getBeans()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBeans</h4>
<pre class="methodSignature">public&nbsp;java.util.Collection&lt;java.lang.Object&gt;&nbsp;getBeans()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Container.html#getBeans()">getBeans</a></code>&nbsp;in interface&nbsp;<code><a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the collection of beans known to this aggregate, in the order they were added.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Container.html#getBean(java.lang.Class)"><code>Container.getBean(Class)</code></a></dd>
</dl>
</li>
</ul>
<a id="setBeans(java.util.Collection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBeans</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setBeans&#8203;(java.util.Collection&lt;java.lang.Object&gt;&nbsp;beans)</pre>
</li>
</ul>
<a id="getBeans(java.lang.Class)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBeans</h4>
<pre class="methodSignature">public&nbsp;&lt;T&gt;&nbsp;java.util.Collection&lt;T&gt;&nbsp;getBeans&#8203;(java.lang.Class&lt;T&gt;&nbsp;clazz)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Container.html#getBeans(java.lang.Class)">getBeans</a></code>&nbsp;in interface&nbsp;<code><a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code></dd>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - the Bean type</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clazz</code> - the class of the beans</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a list of beans of the given class (or subclass), in the order they were added.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Container.html#getBeans()"><code>Container.getBeans()</code></a>,
<a href="Container.html#getContainedBeans(java.lang.Class)"><code>Container.getContainedBeans(Class)</code></a></dd>
</dl>
</li>
</ul>
<a id="getBean(java.lang.Class)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBean</h4>
<pre class="methodSignature">public&nbsp;&lt;T&gt;&nbsp;T&nbsp;getBean&#8203;(java.lang.Class&lt;T&gt;&nbsp;clazz)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Container.html#getBean(java.lang.Class)">getBean</a></code>&nbsp;in interface&nbsp;<code><a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code></dd>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - the Bean type</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clazz</code> - the class of the bean</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the first bean (in order added) of a specific class (or subclass), or null if no such bean exist</dd>
</dl>
</li>
</ul>
<a id="removeBeans()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeBeans</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;removeBeans()</pre>
<div class="block">Removes all bean</div>
</li>
</ul>
<a id="removeBean(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeBean</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;removeBean&#8203;(java.lang.Object&nbsp;o)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Container.html#removeBean(java.lang.Object)">Container</a></code></span></div>
<div class="block">Removes the given bean.
If the bean is-a <a href="Container.Listener.html" title="interface in org.eclipse.jetty.util.component"><code>Container.Listener</code></a>, then also do an implicit <a href="Container.html#removeEventListener(org.eclipse.jetty.util.component.Container.Listener)"><code>Container.removeEventListener(Listener)</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Container.html#removeBean(java.lang.Object)">removeBean</a></code>&nbsp;in interface&nbsp;<code><a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>o</code> - the bean to remove</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether the bean was removed</dd>
</dl>
</li>
</ul>
<a id="removeEventListener(org.eclipse.jetty.util.component.Container.Listener)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeEventListener</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;removeEventListener&#8203;(<a href="Container.Listener.html" title="interface in org.eclipse.jetty.util.component">Container.Listener</a>&nbsp;listener)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Container.html#removeEventListener(org.eclipse.jetty.util.component.Container.Listener)">Container</a></code></span></div>
<div class="block">Remove an event listener.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Container.html#removeEventListener(org.eclipse.jetty.util.component.Container.Listener)">removeEventListener</a></code>&nbsp;in interface&nbsp;<code><a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to remove</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Container.html#removeBean(java.lang.Object)"><code>Container.removeBean(Object)</code></a></dd>
</dl>
</li>
</ul>
<a id="setStopTimeout(long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setStopTimeout</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setStopTimeout&#8203;(long&nbsp;stopTimeout)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="AbstractLifeCycle.html#setStopTimeout(long)">setStopTimeout</a></code>&nbsp;in class&nbsp;<code><a href="AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></code></dd>
</dl>
</li>
</ul>
<a id="dumpStdErr()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dumpStdErr</h4>
<pre class="methodSignature"><a href="../annotation/ManagedOperation.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedOperation</a>("Dump the object to stderr")
public&nbsp;void&nbsp;dumpStdErr()</pre>
<div class="block">Dumps to <code>System.err</code>.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#dump()"><code>dump()</code></a></dd>
</dl>
</li>
</ul>
<a id="dump()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dump</h4>
<pre class="methodSignature"><a href="../annotation/ManagedOperation.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedOperation</a>("Dump the object to a string")
public&nbsp;java.lang.String&nbsp;dump()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Dumpable.html#dump()">dump</a></code>&nbsp;in interface&nbsp;<code><a href="Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></code></dd>
</dl>
</li>
</ul>
<a id="dump(org.eclipse.jetty.util.component.Dumpable)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dump</h4>
<pre class="methodSignature">@Deprecated
public static&nbsp;java.lang.String&nbsp;dump&#8203;(<a href="Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a>&nbsp;dumpable)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">use <a href="Dumpable.html#dump(org.eclipse.jetty.util.component.Dumpable)"><code>Dumpable.dump(Dumpable)</code></a> instead</div>
</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Dumpable.html#dump(org.eclipse.jetty.util.component.Dumpable)">Dumpable</a></code></span></div>
<div class="block">Utility method to implement <a href="Dumpable.html#dump()"><code>Dumpable.dump()</code></a> by calling <a href="Dumpable.html#dump(java.lang.Appendable,java.lang.String)"><code>Dumpable.dump(Appendable, String)</code></a></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>dumpable</code> - the object to dump</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the string representation of the given Dumpable</dd>
</dl>
</li>
</ul>
<a id="dump(java.lang.Appendable,java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dump</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;dump&#8203;(java.lang.Appendable&nbsp;out,
java.lang.String&nbsp;indent)
throws java.io.IOException</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Dumpable.html#dump(java.lang.Appendable,java.lang.String)">Dumpable</a></code></span></div>
<div class="block">Dump this object (and children) into an Appendable using the provided indent after any new lines.
The indent should not be applied to the first object dumped.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Dumpable.html#dump(java.lang.Appendable,java.lang.String)">dump</a></code>&nbsp;in interface&nbsp;<code><a href="Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>out</code> - The appendable to dump to</dd>
<dd><code>indent</code> - The indent to apply after any new lines.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if unable to write to Appendable</dd>
</dl>
</li>
</ul>
<a id="dump(java.lang.Appendable)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dump</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;dump&#8203;(java.lang.Appendable&nbsp;out)
throws java.io.IOException</pre>
<div class="block">Dump this object to an Appendable with no indent.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>out</code> - The appendable to dump to.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - May be thrown by the Appendable</dd>
</dl>
</li>
</ul>
<a id="dumpThis(java.lang.Appendable)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dumpThis</h4>
<pre class="methodSignature">@Deprecated
protected&nbsp;void&nbsp;dumpThis&#8203;(java.lang.Appendable&nbsp;out)
throws java.io.IOException</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
<div class="block">Dump just this object, but not it's children. Typically used to
implement <a href="#dump(java.lang.Appendable,java.lang.String)"><code>dump(Appendable, String)</code></a></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>out</code> - The appendable to dump to</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - May be thrown by the Appendable</dd>
</dl>
</li>
</ul>
<a id="dumpObject(java.lang.Appendable,java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dumpObject</h4>
<pre class="methodSignature">@Deprecated
public static&nbsp;void&nbsp;dumpObject&#8203;(java.lang.Appendable&nbsp;out,
java.lang.Object&nbsp;obj)
throws java.io.IOException</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">use <a href="Dumpable.html#dumpObject(java.lang.Appendable,java.lang.Object)"><code>Dumpable.dumpObject(Appendable, Object)</code></a> instead</div>
</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Dumpable.html#dumpObject(java.lang.Appendable,java.lang.Object)">Dumpable</a></code></span></div>
<div class="block">Dump just an Object (but not it's contained items) to an Appendable.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>out</code> - The Appendable to dump to</dd>
<dd><code>obj</code> - The object to dump</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - May be thrown by the Appendable</dd>
</dl>
</li>
</ul>
<a id="dumpObjects(java.lang.Appendable,java.lang.String,java.lang.Object...)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dumpObjects</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;dumpObjects&#8203;(java.lang.Appendable&nbsp;out,
java.lang.String&nbsp;indent,
java.lang.Object...&nbsp;items)
throws java.io.IOException</pre>
<div class="block">Dump this object, it's contained beans and additional items to an Appendable</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>out</code> - The appendable to dump to</dd>
<dd><code>indent</code> - The indent to apply after any new lines</dd>
<dd><code>items</code> - Additional items to be dumped as contained.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - May be thrown by the Appendable</dd>
</dl>
</li>
</ul>
<a id="dumpBeans(java.lang.Appendable,java.lang.String,java.util.Collection...)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dumpBeans</h4>
<pre class="methodSignature">@Deprecated
protected&nbsp;void&nbsp;dumpBeans&#8203;(java.lang.Appendable&nbsp;out,
java.lang.String&nbsp;indent,
java.util.Collection&lt;?&gt;...&nbsp;items)
throws java.io.IOException</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">use <a href="#dumpObjects(java.lang.Appendable,java.lang.String,java.lang.Object...)"><code>dumpObjects(Appendable, String, Object...)</code></a></div>
</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>out</code> - The appendable to dump to</dd>
<dd><code>indent</code> - The indent to apply after any new lines</dd>
<dd><code>items</code> - Additional collections to be dumped</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - May be thrown by the Appendable</dd>
</dl>
</li>
</ul>
<a id="dump(java.lang.Appendable,java.lang.String,java.util.Collection...)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dump</h4>
<pre class="methodSignature">@Deprecated
public static&nbsp;void&nbsp;dump&#8203;(java.lang.Appendable&nbsp;out,
java.lang.String&nbsp;indent,
java.util.Collection&lt;?&gt;...&nbsp;collections)
throws java.io.IOException</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code></dd>
</dl>
</li>
</ul>
<a id="updateBean(java.lang.Object,java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateBean</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;updateBean&#8203;(java.lang.Object&nbsp;oldBean,
java.lang.Object&nbsp;newBean)</pre>
</li>
</ul>
<a id="updateBean(java.lang.Object,java.lang.Object,boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateBean</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;updateBean&#8203;(java.lang.Object&nbsp;oldBean,
java.lang.Object&nbsp;newBean,
boolean&nbsp;managed)</pre>
</li>
</ul>
<a id="updateBeans(java.lang.Object[],java.lang.Object[])">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateBeans</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;updateBeans&#8203;(java.lang.Object[]&nbsp;oldBeans,
java.lang.Object[]&nbsp;newBeans)</pre>
</li>
</ul>
<a id="getContainedBeans(java.lang.Class)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContainedBeans</h4>
<pre class="methodSignature">public&nbsp;&lt;T&gt;&nbsp;java.util.Collection&lt;T&gt;&nbsp;getContainedBeans&#8203;(java.lang.Class&lt;T&gt;&nbsp;clazz)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Container.html#getContainedBeans(java.lang.Class)">getContainedBeans</a></code>&nbsp;in interface&nbsp;<code><a href="Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code></dd>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - the Bean type</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clazz</code> - the class of the beans</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the list of beans of the given class from the entire Container hierarchy. The order is primarily depth first
and secondarily added order.</dd>
</dl>
</li>
</ul>
<a id="getContainedBeans(java.lang.Class,java.util.Collection)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getContainedBeans</h4>
<pre class="methodSignature">protected&nbsp;&lt;T&gt;&nbsp;void&nbsp;getContainedBeans&#8203;(java.lang.Class&lt;T&gt;&nbsp;clazz,
java.util.Collection&lt;T&gt;&nbsp;beans)</pre>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ContainerLifeCycle.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>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses.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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</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>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 1995&#x2013;2021 <a href="https://webtide.com">Webtide</a>. All rights reserved.</small></p>
</footer>
</body>
</html>