mcconnell 2003/06/24 00:31:05
Modified: merlin maven.xml
merlin/merlin-core/src/java/org/apache/avalon/merlin/kernel/impl
DefaultKernel.java
merlin/merlin-platform/examples/james README.TXT
merlin/merlin-platform/examples/james/conf james.xml
merlin/merlin-platform/xdocs/meta/model/block index.xml
info.xml
merlin/merlin-platform/xdocs/meta/model/block/container/engine/classpath/repository
resource.xml
merlin/merlin-platform/xdocs/resources notebook.xml
Log:
General update.
Revision Changes Path
1.16 +2 -0 avalon-sandbox/merlin/maven.xml
Index: maven.xml
===================================================================
RCS file: /home/cvs/avalon-sandbox/merlin/maven.xml,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- maven.xml 20 Jun 2003 05:25:25 -0000 1.15
+++ maven.xml 24 Jun 2003 07:31:03 -0000 1.16
@@ -239,6 +239,8 @@
</j:forEach>
<sourcepath path="${basedir}/../meta-spi/src/java"/>
<sourcepath path="${basedir}/../meta/src/java"/>
+ <sourcepath path="${basedir}/../extension-spi/src/java"/>
+ <sourcepath path="${basedir}/../extension/src/java"/>
<sourcepath path="${basedir}/../assembly-spi/src/java"/>
<sourcepath path="${basedir}/../assembly/src/java"/>
<sourcepath path="${basedir}/../merlin-spi/src/java"/>
1.23 +17 -6
avalon-sandbox/merlin/merlin-core/src/java/org/apache/avalon/merlin/kernel/impl/DefaultKernel.java
Index: DefaultKernel.java
===================================================================
RCS file:
/home/cvs/avalon-sandbox/merlin/merlin-core/src/java/org/apache/avalon/merlin/kernel/impl/DefaultKernel.java,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- DefaultKernel.java 18 Jun 2003 11:28:13 -0000 1.22
+++ DefaultKernel.java 24 Jun 2003 07:31:04 -0000 1.23
@@ -323,11 +323,6 @@
{
m_repository = (Repository) context.get( Repository.KEY );
}
- else
- {
- File repository = new File( m_root, "repository" );
- m_repository = FileRepository.newInstance( repository );
- }
m_common = (ClassLoader) context.get( "urn:merlin:classloader.common" );
m_loader = (ClassLoader) context.get( "urn:merlin:classloader.system" );
@@ -439,6 +434,22 @@
final String error =
"Internal error while establishing the logging subsystem.";
throw new CascadingException( error, e );
+ }
+
+ //
+ // if a jar repository has not been provided during the
+ // contextualization stage, then try to build one based
+ // on the kernel configuration - and if necessary, fallback
+ // on the default merlin/repository file based directory
+ //
+
+ if( m_repository == null )
+ {
+ File local = new File( m_root, "repository" );
+ Configuration rep = m_config.getChild( "repository" );
+ String base = rep.getChild( "root" ).getValue( local.toString() );
+ File repository = new File( base );
+ m_repository = FileRepository.newInstance( repository );
}
//
1.2 +53 -11 avalon-sandbox/merlin/merlin-platform/examples/james/README.TXT
Index: README.TXT
===================================================================
RCS file: /home/cvs/avalon-sandbox/merlin/merlin-platform/examples/james/README.TXT,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- README.TXT 23 Jun 2003 12:58:51 -0000 1.1
+++ README.TXT 24 Jun 2003 07:31:04 -0000 1.2
@@ -1,20 +1,62 @@
Instructions:
+Assumptions:
+------------
+You have installed Maven beta-9 and applied the patch to the jar plugin.
+See "Maven beta-9 issue" for details concerning patch.
+http://avalon.apache.org/sandbox/merlin/resources/notebook.html
+
+
+Preparation:
+------------
+
1. download mail_1_3.jar from sun
2. download activation.jar from sun
3. rename mail_1_3.jar to mail-1.3.jar
4. rename activation.jar to activation-1.0.jar
-5. place the above jar files in [MERLIN-HOME]/repository/james/jars/
-6. checkout jakarta-james from CVS
-7. build the jar files using "ant jar"
-8. copy jakarta-james/build/lib/*.jar to [MERLIN-HOME]/repository/james/jars/
-9. copy jakarta-james/lib/dnsjava-1.3.2 to [MERLIN-HOME]/repository/james/jars/
-10. checkout avalon-components
-11. build using "maven project-install"
-12. copy the [MAVEN-HOME]/repository/cornerstone-*/ directories to the
[MERLIN-HOME] repository
-13. launch james
+5. create the directory [MAVEN-HOME]/repository/james/jars/
+6. place the above jar files in [MERLIN-HOME]/repository/james/jars/
+
+Populate the Maven repository:
+------------------------------
+
+Invoke the default maven target which will result in maven pulling down
+the additional jar dependencies and installing them into your local
+maven repository. This is simply an easy way to get the jar files you
+need.
+
+$ cd merlin/merlin-platform/examples/james
+$ maven
+
+Update Merlin to use Maven's repository:
+----------------------------------------
+
+Update the conf/kernel.xml file to use the Maven repository by adding
+the following configuration fragement inside conf/kernel.xml. This
+is basically telling Merlin to use Maven's repository to locate the
+jar files needed to execute the james block.
+
+ <kernel>
+
+ <!-- ... -->
+
+ <repository>
+ <!--
+ replace >[MAVEN-REPOSITORY-PATH] with you maven repository
+ directory (e.g. C:/tools/maven/repository/) and remove the
+ comments around the root element declaration
+ -->
+ <!--
+ <root>[MAVEN-REPOSITORY-PATH]</root>
+ -->
+ </repository>
+
+ </kernel>
+
+Run James
+---------
- $ cd merlin/merlin-platform/examples/james
- $ merlin conf/block.xml
+ $ cd merlin\merlin-platform\examples\james
+ $ merlin conf\block.xml -kernel conf\kernel.xml
1.3 +1 -1
avalon-sandbox/merlin/merlin-platform/examples/james/conf/james.xml
Index: james.xml
===================================================================
RCS file:
/home/cvs/avalon-sandbox/merlin/merlin-platform/examples/james/conf/james.xml,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- james.xml 23 Jun 2003 14:06:10 -0000 1.2
+++ james.xml 24 Jun 2003 07:31:04 -0000 1.3
@@ -46,7 +46,7 @@
<!-- <resource id="james:mail" version="1.3"/> -->
<!-- <resource id="james:mailet-api" version="1.0"/> -->
<!-- <resource id="james:activation" version="1.0"/> -->
- <resource id="james:dnsjava" version="1.3.2"/>
+ <resource id="dnsjava:dnsjava" version="1.3.2"/>
<resource id="james:mailet" version="1.0"/>
<resource id="james:james" version="3.0a1"/>
</repository>
1.3 +2 -2
avalon-sandbox/merlin/merlin-platform/xdocs/meta/model/block/index.xml
Index: index.xml
===================================================================
RCS file:
/home/cvs/avalon-sandbox/merlin/merlin-platform/xdocs/meta/model/block/index.xml,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- index.xml 22 Jun 2003 13:57:57 -0000 1.2
+++ index.xml 24 Jun 2003 07:31:04 -0000 1.3
@@ -16,7 +16,7 @@
<table>
<tr><th>Element</th><th>Occurance</th><th>Description</th></tr>
<tr>
- <td><a href="info.html">info</a></td><td>1</td>
+ <td><a href="info.html">info</a></td><td>0..1</td>
<td>
Declaration of the block name and version.
</td>
@@ -34,7 +34,7 @@
</td>
</tr>
<tr>
- <td><a href="container/index.html">implementation</a></td><td>0..1</td>
+ <td><a href="container/index.html">implementation</a></td><td>1</td>
<td>
Declaration of the block implementation.
</td>
1.3 +7 -9
avalon-sandbox/merlin/merlin-platform/xdocs/meta/model/block/info.xml
Index: info.xml
===================================================================
RCS file:
/home/cvs/avalon-sandbox/merlin/merlin-platform/xdocs/meta/model/block/info.xml,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- info.xml 15 Jun 2003 17:43:23 -0000 1.2
+++ info.xml 24 Jun 2003 07:31:04 -0000 1.3
@@ -15,19 +15,17 @@
<table>
<tr><th>Element</th><th>Occurance</th><th>Description</th></tr>
<tr>
- <td>name</td><td>1</td>
+ <td>name</td><td>0..1</td>
<td>
- Declaration of the block name. The block name is used
- to construct partition names. A block acting as root is always
- named "/" (the block delimiter character). Subsidiary blocks for
- a partition path commencing with the root ("/") followed by the
- block name.
+ Declaration of the block name. Used for documetation
+ purposes only.
</td>
</tr>
<tr>
<td>version</td><td>0..1</td>
<td>
- Declaration of the block version.
+ Declaration of the block version. Used for documetation
+ purposes only.
</td>
</tr>
</table>
@@ -35,7 +33,7 @@
<subsection name="Description">
<p>
-A block declares a name and an implementation version.
+A block declares a name and an implementation version. The info block is primarily
for documetation purposes. Block names are established relative their inclusion
context. For example, a block may be included va a container or include directive.
The name associated with the container or include directive establishes the block name
used in the creation of partitions.
</p>
</subsection>
1.2 +20 -13
avalon-sandbox/merlin/merlin-platform/xdocs/meta/model/block/container/engine/classpath/repository/resource.xml
Index: resource.xml
===================================================================
RCS file:
/home/cvs/avalon-sandbox/merlin/merlin-platform/xdocs/meta/model/block/container/engine/classpath/repository/resource.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- resource.xml 20 Jun 2003 19:01:39 -0000 1.1
+++ resource.xml 24 Jun 2003 07:31:04 -0000 1.2
@@ -10,7 +10,7 @@
</header>
<body>
- <section name="Resource Include Directive">
+ <section name="Resource Directive">
<subsection name="Attributes">
@@ -35,7 +35,7 @@
<subsection name="Description">
<p>
-A resource directive is a logical reference to a jar file within the enclosing
rerpository. A repository implementation is responsible for the mapping of logical
directives to physical jar URL.
+A resource directive is a logical reference to a jar file within the enclosing
repository. A repository implementation is responsible for the mapping of logical
directives to physical jar URL.
</p>
</subsection>
@@ -46,20 +46,27 @@
<source><![CDATA[
<block>
+ <implementation>
- <info>
- <name>tutorial</name>
- </info>
-
- <implementation>
-
- <include name="publisher">
- <resource id="tutorial:composition-publisher" version="1.0"/>
- </include>
-
- </implementation>
+ <classloader>
+ <classpath>
+ <repository>
+ <resource id="james:mail" version="1.3"/>
+ <resource id="james:activation" version="1.0"/>
+ <resource id="james:mailet-api" version="1.0"/>
+ </repository>
+ </classpath>
+ </classloader>
+
+ <!-- include blocks here -->
+
+ <include name="james">
+ <source path="james.xml"/>
+ </include>
+ </implementation>
</block>
+
]]></source>
</subsection>
1.8 +8 -8
avalon-sandbox/merlin/merlin-platform/xdocs/resources/notebook.xml
Index: notebook.xml
===================================================================
RCS file:
/home/cvs/avalon-sandbox/merlin/merlin-platform/xdocs/resources/notebook.xml,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- notebook.xml 23 Jun 2003 02:04:33 -0000 1.7
+++ notebook.xml 24 Jun 2003 07:31:04 -0000 1.8
@@ -83,6 +83,14 @@
<td>DONE</td>
</tr>
<tr>
+ <td>
+ Fork Excalibur Extension under the Merlin project.
+ </td>
+ <td>
+ DONE
+ </td>
+ </tr>
+ <tr>
<td>dynamic components tutorials</td>
<td>PENDING</td></tr>
<tr>
@@ -92,14 +100,6 @@
targets).
</td>
<td>PENDING</td>
- </tr>
- <tr>
- <td>
- Release Excalibur Extension or include a fork
- under the Merlin project.
- </td>
- <td>
- </td>
</tr>
<tr><td>test and validation</td><td>ONGOING</td></tr>
<tr><td>tag the CVS</td><td></td></tr>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]