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]>