blob: 6be79c231ed0578a5c7782c86f0b4246a4937ac9 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>Assembler</title>
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Assembler";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/openejb/spi/ApplicationServer.html" title="interface in org.apache.openejb.spi"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/openejb/spi/CallerPrincipal.html" title="annotation in org.apache.openejb.spi"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/openejb/spi/Assembler.html" target="_top">Frames</a></li>
<li><a href="Assembler.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&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>Constr&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.openejb.spi</div>
<h2 title="Interface Assembler" class="title">Interface Assembler</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../../org/apache/openejb/assembler/classic/Assembler.html" title="class in org.apache.openejb.assembler.classic">Assembler</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">Assembler</span></pre>
<div class="block">Instantiates and assembles a configured, runnable, instance of the
container system and all of its sub-components. Vendors needing extreme control
over the construction of the container system can get it by implementing this class.
Doing this comes with large amounts of responsibility and complexity and should
not be done without a deep understanding of OpenEJB. This class responsbilities are:
<ul>
<li>Instantiate and initialize all Container implementations</li>
<li>Instantiate and initialize TransactionService implementation</li>
<li>Instantiate and initialize SecurityService implementation</li>
<li>Instantiate and initialize all ResourceManagers</li>
<li>Load all deployed beans</li>
<li>Populate each deployment's JNDI ENC</li>
<li>Populate the IntraVM Server's global, client, JNDI namespace</li>
</ul>
<p>
For the concrete implementation please also inspect <a href="../../../../org/apache/openejb/assembler/classic/Assembler.html" title="class in org.apache.openejb.assembler.classic"><code>Assembler</code></a>.
</p></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openejb/spi/Assembler.html#build--">build</a></span>()</code>
<div class="block">Gets the configuration from <a href="../../../../org/apache/openejb/assembler/classic/OpenEjbConfigurationFactory.html" title="interface in org.apache.openejb.assembler.classic"><code>OpenEjbConfigurationFactory</code></a>
and builds the <a href="../../../../org/apache/openejb/spi/ContainerSystem.html" title="interface in org.apache.openejb.spi"><code>ContainerSystem</code></a> and fire <a href="../../../../org/apache/openejb/assembler/classic/event/ContainerSystemPostCreate.html" title="class in org.apache.openejb.assembler.classic.event"><code>ContainerSystemPostCreate</code></a>
event.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openejb/spi/Assembler.html#destroy--">destroy</a></span>()</code>
<div class="block">Destroys the container system and all associated resources.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/openejb/spi/ContainerSystem.html" title="interface in org.apache.openejb.spi">ContainerSystem</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openejb/spi/Assembler.html#getContainerSystem--">getContainerSystem</a></span>()</code>
<div class="block">Gets the configured <a href="../../../../org/apache/openejb/spi/ContainerSystem.html" title="interface in org.apache.openejb.spi"><code>ContainerSystem</code></a> instance.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/openejb/spi/SecurityService.html" title="interface in org.apache.openejb.spi">SecurityService</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openejb/spi/Assembler.html#getSecurityService--">getSecurityService</a></span>()</code>
<div class="block">Gets the system wide configured <a href="../../../../org/apache/openejb/spi/SecurityService.html" title="interface in org.apache.openejb.spi"><code>SecurityService</code></a> instance.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>TransactionManager</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openejb/spi/Assembler.html#getTransactionManager--">getTransactionManager</a></span>()</code>
<div class="block">Gets the system wide configured <code>TransactionManager</code> instance.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openejb/spi/Assembler.html#init-java.util.Properties-">init</a></span>(java.util.Properties&nbsp;props)</code>
<div class="block">Initialize the assembler with the given properties.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="init-java.util.Properties-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>init</h4>
<pre>void&nbsp;init(java.util.Properties&nbsp;props)
throws <a href="../../../../org/apache/openejb/OpenEJBException.html" title="class in org.apache.openejb">OpenEJBException</a></pre>
<div class="block">Initialize the assembler with the given properties.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>props</code> - initialization properties</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/openejb/OpenEJBException.html" title="class in org.apache.openejb">OpenEJBException</a></code> - if the initialization phase faces an exception</dd>
</dl>
</li>
</ul>
<a name="build--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>build</h4>
<pre>void&nbsp;build()
throws <a href="../../../../org/apache/openejb/OpenEJBException.html" title="class in org.apache.openejb">OpenEJBException</a></pre>
<div class="block">Gets the configuration from <a href="../../../../org/apache/openejb/assembler/classic/OpenEjbConfigurationFactory.html" title="interface in org.apache.openejb.assembler.classic"><code>OpenEjbConfigurationFactory</code></a>
and builds the <a href="../../../../org/apache/openejb/spi/ContainerSystem.html" title="interface in org.apache.openejb.spi"><code>ContainerSystem</code></a> and fire <a href="../../../../org/apache/openejb/assembler/classic/event/ContainerSystemPostCreate.html" title="class in org.apache.openejb.assembler.classic.event"><code>ContainerSystemPostCreate</code></a>
event.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/openejb/OpenEJBException.html" title="class in org.apache.openejb">OpenEJBException</a></code> - if the build phase faces an exception</dd>
</dl>
</li>
</ul>
<a name="getContainerSystem--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContainerSystem</h4>
<pre><a href="../../../../org/apache/openejb/spi/ContainerSystem.html" title="interface in org.apache.openejb.spi">ContainerSystem</a>&nbsp;getContainerSystem()</pre>
<div class="block">Gets the configured <a href="../../../../org/apache/openejb/spi/ContainerSystem.html" title="interface in org.apache.openejb.spi"><code>ContainerSystem</code></a> instance.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <a href="../../../../org/apache/openejb/spi/ContainerSystem.html" title="interface in org.apache.openejb.spi"><code>ContainerSystem</code></a> instance</dd>
</dl>
</li>
</ul>
<a name="getTransactionManager--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTransactionManager</h4>
<pre>TransactionManager&nbsp;getTransactionManager()</pre>
<div class="block">Gets the system wide configured <code>TransactionManager</code> instance.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <code>TransactionManager</code> instance.</dd>
</dl>
</li>
</ul>
<a name="getSecurityService--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSecurityService</h4>
<pre><a href="../../../../org/apache/openejb/spi/SecurityService.html" title="interface in org.apache.openejb.spi">SecurityService</a>&nbsp;getSecurityService()</pre>
<div class="block">Gets the system wide configured <a href="../../../../org/apache/openejb/spi/SecurityService.html" title="interface in org.apache.openejb.spi"><code>SecurityService</code></a> instance.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <a href="../../../../org/apache/openejb/spi/SecurityService.html" title="interface in org.apache.openejb.spi"><code>SecurityService</code></a> instance.</dd>
</dl>
</li>
</ul>
<a name="destroy--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>destroy</h4>
<pre>void&nbsp;destroy()</pre>
<div class="block">Destroys the container system and all associated resources.</div>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/openejb/spi/ApplicationServer.html" title="interface in org.apache.openejb.spi"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/openejb/spi/CallerPrincipal.html" title="annotation in org.apache.openejb.spi"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/openejb/spi/Assembler.html" target="_top">Frames</a></li>
<li><a href="Assembler.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&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>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>