mcconnell 2002/08/27 04:08:27
Modified: assembly/src/etc kernel.xml
assembly/src/java/org/apache/excalibur/merlin/assembly
ContainerManager.java
assembly/src/java/org/apache/excalibur/merlin/container
DefaultContainer.java DefaultContainer.xinfo
assembly/src/xdocs index.xml
Log:
Updates to build (handle i18n gump failure) and other minor updates.
Revision Changes Path
1.39 +19 -3 jakarta-avalon-excalibur/assembly/src/etc/kernel.xml
Index: kernel.xml
===================================================================
RCS file: /home/cvs/jakarta-avalon-excalibur/assembly/src/etc/kernel.xml,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- kernel.xml 23 Aug 2002 09:23:02 -0000 1.38
+++ kernel.xml 27 Aug 2002 11:08:26 -0000 1.39
@@ -1,6 +1,22 @@
<!--
-Assemble a component instance.
+Merlin demonstration kernal configuration.
+
+This configuration assembles a set of component instance within a container
+hierachy and is used as one of several validation points. The example includes
+demonstration of some of the main Merlin features:
+
+ a) automatic component assembly
+ b) multiple candidate resolution
+ c) lifestyle support
+ d) lifecycle extension
+ e) embeded kernel creation
+ f) dynamic component addition
+ g) context management
+ h) configuration management
+ i) use of explicit, packaged and implicit profiles
+ j) nested containers
+
-->
<kernel>
@@ -32,13 +48,13 @@
<!--
Declaration of installed extension directories and kernel level classpath.
In this demo we are referencing the Merlin classes in the embedded demo so
- we need at least to include Merlin in the extensions directory.
+ we need to include Merlin and its' extension depedencies in directory
+ referenced within the library element.
-->
<library dir=".">
<include name="extensions"/>
</library>
-
<!--
Defintion of the lifestyle manager.
1.28 +2 -1
jakarta-avalon-excalibur/assembly/src/java/org/apache/excalibur/merlin/assembly/ContainerManager.java
Index: ContainerManager.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/assembly/src/java/org/apache/excalibur/merlin/assembly/ContainerManager.java,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- ContainerManager.java 23 Aug 2002 09:23:02 -0000 1.27
+++ ContainerManager.java 27 Aug 2002 11:08:26 -0000 1.28
@@ -849,6 +849,7 @@
//
DefaultContext c = new DefaultContext( context );
+ c.put("avalon:name", profile.getName() );
c.put("name", profile.getName() );
c.put("block.name", getPath().replace('/','.').substring(1)
+ "." + profile.getName() );
1.35 +12 -2
jakarta-avalon-excalibur/assembly/src/java/org/apache/excalibur/merlin/container/DefaultContainer.java
Index: DefaultContainer.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/assembly/src/java/org/apache/excalibur/merlin/container/DefaultContainer.java,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- DefaultContainer.java 22 Aug 2002 13:43:01 -0000 1.34
+++ DefaultContainer.java 27 Aug 2002 11:08:26 -0000 1.35
@@ -23,6 +23,7 @@
import org.apache.avalon.framework.activity.Suspendable;
import org.apache.avalon.framework.configuration.Configuration;
import org.apache.avalon.framework.configuration.Configurable;
+import org.apache.avalon.framework.configuration.ConfigurationException;
import org.apache.avalon.framework.context.Context;
import org.apache.avalon.framework.context.Contextualizable;
import org.apache.avalon.framework.context.ContextException;
@@ -196,8 +197,10 @@
* phase.
*
* @param config the container configuration
+ * @exception ConfigurationException not throw locally but provided for
+ * specilizations to handle
*/
- public void configure( Configuration config )
+ public void configure( Configuration config ) throws ConfigurationException
{
m_configuration = config;
}
@@ -254,6 +257,13 @@
*/
public void initialize() throws Exception
{
+ if( m_map == null )
+ {
+ final String error =
+ "Container has not been assembled.";
+ throw new IllegalStateException( error );
+ }
+
synchronized( this )
{
getLogger().debug("initialization");
1.10 +2 -2
jakarta-avalon-excalibur/assembly/src/java/org/apache/excalibur/merlin/container/DefaultContainer.xinfo
Index: DefaultContainer.xinfo
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/assembly/src/java/org/apache/excalibur/merlin/container/DefaultContainer.xinfo,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- DefaultContainer.xinfo 14 Aug 2002 03:03:35 -0000 1.9
+++ DefaultContainer.xinfo 27 Aug 2002 11:08:26 -0000 1.10
@@ -1,7 +1,7 @@
<?xml version="1.0"?>
<!DOCTYPE type
- PUBLIC "-//AVALON/Component Type DTD Version 1.0//EN"
- "http://jakarta.apache.org/avalon/type_1_0.dtd" >
+ PUBLIC "-//AVALON/Component Type DTD Version 1.1//EN"
+ "http://jakarta.apache.org/avalon/type_1_1.dtd" >
<!--
Copyright (C) The Apache Software Foundation. All rights reserved.
1.6 +32 -1 jakarta-avalon-excalibur/assembly/src/xdocs/index.xml
Index: index.xml
===================================================================
RCS file: /home/cvs/jakarta-avalon-excalibur/assembly/src/xdocs/index.xml,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- index.xml 22 Aug 2002 00:58:54 -0000 1.5
+++ index.xml 27 Aug 2002 11:08:27 -0000 1.6
@@ -33,6 +33,37 @@
</s1>
+ <s1 title="Excalibur Dependencies">
+
+ <p>The Merlin 2 container makes extensive use of many of the existing Excalibur
utilities,
+ and builds above the Avalon component model.</p>
+
+ <p>A summary of the main facilities and relationship to Merlin is described in
the following table.</p>
+
+ <table>
+ <tr>
+ <td><p>Facility</p></td>
+ <td><p>Role</p></td>
+ </tr>
+ <tr>
+ <td><p><link
href="http://jakarta.apache.org/avalon/excalibur/container/index.html">Container</link></p></td>
+ <td><p>A set of container independnent utilities defining interfaces and
abstract classes that enable enhanced consistency in component management across
different container. Merlin uses the lifecycle extension interfaces defined in this
package in its internal component deployment engine. In addition, Merlin complies
with all of the proposed context key and meta-info attributes presented under the
<link
href="http://jakarta.apache.org/avalon/excalibur/container/attributes.html">attributes
documentation</link>.</p></td>
+ </tr>
+ <tr>
+ <td><p><link
href="http://jakarta.apache.org/avalon/excalibur/meta/index.html">Meta</link></p></td>
+ <td><p>The Excalibur Meta package contains a container independent meta
model that describes an Avalon component type. The model serves as the foundation on
which Merlin's data-data model is based. Using resources from the Excalibur Meta
package, Merlin is able interoperate with components declared using the Phoenix
blockinfo specification (restriction apply). The model provides complete support for
the declaration of lifecycle extension usage independently of an implementation or
service availability. All meta-info structures (type, logging criteria, proiduced
services, service dependencies, extension provsion, and extension depedencies are
fully supported by the Merlin system.</p></td>
+ </tr>
+ <tr>
+ <td><p><link
href="http://jakarta.apache.org/avalon/excalibur/configuration/index.html">Configuration</link></p></td>
+ <td><p>Used in conjuction with configuration management. Provides
supporting classes through which Merlin enables the association of default
confiurations with component types.</p></td>
+ </tr>
+ <tr>
+ <td><p><link
href="http://jakarta.apache.org/avalon/excalibur/extension/api/index.html">Extensions</link></p></td>
+ <td><p>Merlin uses the extensions package as part of its is type management
system, enabling greater flexibility and management over jar file versions and their
respective dependencies.</p></td>
+ </tr>
+ </table>
+ </s1>
+
<s1 title="Demo">
<p>The Merlin project includes a number of demonstration components. One of
these
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>