mcconnell    2003/02/12 08:28:21

  Modified:    .        build.xml checkstyle.properties
               assembly .cvsignore build.xml default.properties
               assembly/src/etc project.mf
               assembly/src/java/org/apache/avalon/assembly/lifecycle/context
                        DefaultContextManager.xinfo
               assembly/src/java/org/apache/avalon/assembly/logging
                        DefaultLoggingManager.java
               assembly/src/test/org/apache/avalon/assembly
                        TestCaseBase.java
               lifecycle .cvsignore build.xml default.properties
               merlin   .cvsignore build.xml default.properties
               merlin/bin merlin.bat
               merlin/src/java/org/apache/avalon/merlin/block/impl
                        DefaultBlock.java DefaultBlockLoader.java
               merlin/src/java/org/apache/avalon/merlin/container/impl
                        DefaultContainer.java
               merlin/src/java/org/apache/avalon/merlin/kernel/impl
                        DefaultKernel.java
               merlin/src/test/config demo.xml
               merlin-bootstrap build.xml default.properties
               meta     .cvsignore build.xml default.properties
  Added:       lifecycle LICENSE.TXT
               merlin/src/bin merlin.bat
  Removed:     merlin/src/java BootstrapRuntimeException.java Merlin.java
                        Resources.properties Resources_fr.properties
                        package.html
  Log:
  Updating build to be independent of the avalon and excalibur cvs.
  
  Revision  Changes    Path
  1.2       +8 -0      avalon-sandbox/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/build.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- build.xml 27 Jan 2003 23:52:03 -0000      1.1
  +++ build.xml 12 Feb 2003 16:28:14 -0000      1.2
  @@ -33,4 +33,12 @@
       <ant antfile="${merlin.home}/build.xml" inheritall="false"/>
     </target>
   
  +  <target name="patch">
  +    <replace dir="." summary="true"
  +       token="http://avalon.apache.org/dtds/";
  +       value="http://avalon.apache.org/dtds/"; >
  +     <include name="**/*.x*"/>
  +    </replace>
  +  </target>
  +
   </project>
  
  
  
  1.2       +1 -1      avalon-sandbox/checkstyle.properties
  
  Index: checkstyle.properties
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/checkstyle.properties,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- checkstyle.properties     7 Feb 2003 23:09:49 -0000       1.1
  +++ checkstyle.properties     12 Feb 2003 16:28:14 -0000      1.2
  @@ -10,7 +10,7 @@
   checkstyle.ignore.whitespace=yes
   checkstyle.ignore.whitespace.cast=yes
   
  -checkstyle.paren.pad=space
  +checkstyle.parent.pad=space
   
   # TODO: Try to get the files ot match the default values
   # default 80 maxlinelen
  
  
  
  1.4       +1 -0      avalon-sandbox/assembly/.cvsignore
  
  Index: .cvsignore
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/assembly/.cvsignore,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- .cvsignore        7 Feb 2003 23:08:55 -0000       1.3
  +++ .cvsignore        12 Feb 2003 16:28:14 -0000      1.4
  @@ -10,3 +10,4 @@
   project.properties
   target
   xdocs
  +velocity.log
  \ No newline at end of file
  
  
  
  1.17      +108 -12   avalon-sandbox/assembly/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/assembly/build.xml,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- build.xml 7 Feb 2003 23:08:55 -0000       1.16
  +++ build.xml 12 Feb 2003 16:28:14 -0000      1.17
  @@ -10,7 +10,7 @@
   @version 1.0 12/03/2001
   -->
   
  -<project name="assembly" default="main" basedir=".">
  +<project name="assembly" default="install" basedir=".">
   
     <property file="${basedir}/../ant.properties"/>
     <property file="${basedir}/ant.properties"/>
  @@ -20,16 +20,15 @@
   
     <!-- Classpath for product -->
     <path id="project.class.path">
  -    <pathelement location="${logkit.jar}"/>
  +    <pathelement location="${avalon-logkit.jar}"/>
       <pathelement location="${avalon-framework.jar}"/>
       <pathelement location="${excalibur-i18n.jar}"/>
       <pathelement location="${avalon-meta.jar}"/>
       <pathelement location="${avalon-lifecycle.jar}"/>
  -    <!--<pathelement location="${excalibur-logger.jar}"/>-->
       <pathelement location="${excalibur-extension.jar}"/>
       <pathelement location="${excalibur-configuration.jar}"/>
       <pathelement location="${excalibur-event.jar}"/>
  -    <pathelement location="${util.concurrent.jar}"/>
  +    <pathelement location="${excalibur-util-concurrent.jar}"/>
       <pathelement location="${commons-collections.jar}"/>
       <pathelement location="${build.classes}"/>
       <pathelement location="${checkstyle.jar}"/>
  @@ -77,9 +76,102 @@
       <ant dir="../lifecycle" inheritAll="false"/>
     </target>
   
  -  <target name="dependencies" depends="lifecycle,meta" description="Check 
dependencies" />
  +  <target name="flags">
  +        <available property="framework.present"
  +               classname="org.apache.avalon.framework.Version"
  +               classpathref="project.class.path" />
  +        <available property="configuration.present"
  +               classname="org.apache.excalibur.configuration.ConfigurationUtil"
  +               classpathref="project.class.path" />
  +        <available property="i18n.present"
  +               classname="org.apache.avalon.excalibur.i18n.Resources"
  +               classpathref="project.class.path" />
  +        <available property="extension.present"
  +               classname="org.apache.avalon.excalibur.extension.Specification"
  +               classpathref="project.class.path" />
  +        <available property="event.present"
  +               classname="org.apache.excalibur.event.Signal"
  +               classpathref="project.class.path" />
  +        <available property="concurrent.present"
  +               classname="${excalibur-util-concurrent.key}"
  +               classpathref="project.class.path" />
  +        <available property="collections.present"
  +               classname="org.apache.commons.collections.Bag"
  +               classpathref="project.class.path" />
  +        <available property="logkit.present"
  +               classname="org.apache.log.Logger"
  +               classpathref="project.class.path" />
  +  </target>
  +
  +  <target name="dependencies" depends="external-dependencies,lifecycle,meta" 
description="Check dependencies"/>
  +
  +  <target name="external-dependencies" 
depends="check-framework,check-i18n,check-configuration,check-extension,check-event,check-excalibur-util-concurrent,check-commons-collections,check-avalon-logkit"/>
  +
  +  <target name="check-framework" depends="flags" unless="framework.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${avalon-framework.id}/jars/${avalon-framework.name}"
  +             dest="${local.repository}/${avalon-framework.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-configuration" depends="flags" unless="configuration.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-configuration.id}/jars/${excalibur-configuration.name}"
  +             dest="${local.repository}/${excalibur-configuration.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-i18n" depends="flags" unless="i18n.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-i18n.id}/jars/${excalibur-i18n.name}"
  +             dest="${local.repository}/${excalibur-i18n.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-extension" depends="flags" unless="extension.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-extension.id}/jars/${excalibur-extension.name}"
  +             dest="${local.repository}/${excalibur-extension.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-event" depends="flags" unless="event.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-event.id}/jars/${excalibur-event.name}"
  +             dest="${local.repository}/${excalibur-event.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-excalibur-util-concurrent" depends="flags" 
unless="concurrent.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-util-concurrent.id}/jars/${excalibur-util-concurrent.name}"
  +             dest="${local.repository}/${excalibur-util-concurrent.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-commons-collections" depends="flags" 
unless="collections.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${commons-collections.id}/jars/${commons-collections.name}"
  +             dest="${local.repository}/${commons-collections.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-avalon-logkit" depends="flags" unless="logkit.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get src="${remote.repository}/${avalon-logkit.id}/jars/${avalon-logkit.name}"
  +             dest="${local.repository}/${avalon-logkit.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
   
  -  <target name="context">
  +  <target name="context" depends="dependencies">
       <uptodate property="uptodate" targetfile="${build.lib}/${jar.name}">
         <srcfiles dir="${src.dir}">
           <include name="**/*.*"/>
  @@ -88,7 +180,7 @@
     </target>
   
     <!-- Compiles the source code -->
  -  <target name="compile" depends="context,dependencies" 
  +  <target name="compile" depends="context" 
          description="Compiles the source code" unless="uptodate">
       
       <echo message="compiling ${ant.project.name}"/>
  @@ -144,6 +236,11 @@
   
     </target>
   
  +  <target name="install" depends="jar,jar-playground">
  +      <mkdir dir="${local.repository}"/>
  +      <copy toDir="${local.repository}" file="${build.dir}/lib/${jar.name}"/>
  +  </target> 
  +
     <!-- Creates all the Javadocs -->
     <target name="javadocs" depends="compile" 
             description="Generates the javadocs" unless="skip.javadocs">
  @@ -378,6 +475,7 @@
        <copy todir="${common.dir}" file="${avalon-meta.jar}"/>
        <copy todir="${common.dir}" file="${excalibur-configuration.jar}"/>
        <copy todir="${common.dir}" file="${excalibur-i18n.jar}"/>
  +     <copy todir="${common.dir}" file="${logkit.jar}"/>
   
        <!--
        <copy todir="${common.dir}" preservelastmodified="true">
  @@ -390,13 +488,11 @@
        -->
   
        <mkdir dir="${lib.dir}"/>
  -     <copy todir="${lib.dir}" file="${logkit.jar}"/>
        <copy todir="${lib.dir}" file="${excalibur-extension.jar}"/>
  -     <!--<copy todir="${lib.dir}" file="${excalibur-logger.jar}"/>-->
        <copy todir="${lib.dir}" file="${excalibur-event.jar}"/>
        <copy todir="${lib.dir}" file="${commons-collections.jar}"/>
        <copy todir="${lib.dir}" file="${util.concurrent.jar}"/>
  -     <!--<copy todir="${lib.dir}" file="${excalibur-thread.jar}"/>-->
  +     <copy todir="${lib.dir}" file="${excalibur-thread.jar}"/>
        <copy todir="${lib.dir}" file="${avalon-lifecycle.jar}"/>
        <copy todir="${lib.dir}" file="${avalon-assembly.jar}"/>
   
  @@ -447,8 +543,8 @@
   
     <target name="patch">
       <replace dir="src" summary="true"
  -       token="assembly:appliance.manager"
  -       value="assembly:appliance.repository" >
  +       token="-2002 The Apache Software Foundation"
  +       value="-2003 The Apache Software Foundation" >
        <include name="**/*.java"/>
       </replace>
     </target>
  
  
  
  1.15      +56 -42    avalon-sandbox/assembly/default.properties
  
  Index: default.properties
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/assembly/default.properties,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- default.properties        7 Feb 2003 23:08:55 -0000       1.14
  +++ default.properties        12 Feb 2003 16:28:14 -0000      1.15
  @@ -12,15 +12,66 @@
   package-version=1.0
   year=2002
   
  +remote.repository = http://www.osm.net/repository
  +local.repository = ../lib
   
   # --------------------------------------------------
   #                REQUIRED LIBRARIES
   # --------------------------------------------------
   
  -# ----- Avalon Framework -----
  -avalon-framework.home=${basedir}/../../avalon
  -avalon-framework.lib=${avalon-framework.home}/target/lib
  -avalon-framework.jar=${avalon-framework.lib}/avalon-framework.jar
  +# ----- Avalon Framework, version 4.1 or later -----
  +avalon-framework.id = avalon-framework
  +avalon-framework.version = 4.1.4
  +avalon-framework.name = ${avalon-framework.id}-${avalon-framework.version}.jar
  +avalon-framework.jar=${local.repository}/${avalon-framework.name}
  +
  +# ----- Excalibur i18n, 1.0 -----
  +excalibur-i18n.id = excalibur-i18n
  +excalibur-i18n.version = 1.0
  +excalibur-i18n.name = ${excalibur-i18n.id}-${excalibur-i18n.version}.jar
  +excalibur-i18n.jar=${local.repository}/${excalibur-i18n.name}
  +
  +# ----- Excalibur Configuration, version 1.0 -----
  +excalibur-configuration.id = excalibur-configuration
  +excalibur-configuration.version = 1.0
  +excalibur-configuration.name = 
${excalibur-configuration.id}-${excalibur-configuration.version}.jar
  +excalibur-configuration.jar=${local.repository}/${excalibur-configuration.name}
  +
  +# ----- Excalibur Extension -----
  +excalibur-extension.id = excalibur-extension
  +excalibur-extension.version = 1.0
  +excalibur-extension.name = 
${excalibur-extension.id}-${excalibur-extension.version}.jar
  +excalibur-extension.jar=${local.repository}/${excalibur-extension.name}
  +
  +# ----- Excalibur Event -----
  +excalibur-event.id = excalibur-event
  +excalibur-event.version = 2.0
  +excalibur-event.name = ${excalibur-event.id}-${excalibur-event.version}.jar
  +excalibur-event.jar=${local.repository}/${excalibur-event.name}
  +
  +# ----- Excalibur Util Concurrent -----
  +excalibur-util-concurrent.key = EDU.oswego.cs.dl.util.concurrent.Callable
  +excalibur-util-concurrent.id = excalibur-util-concurrent
  +excalibur-util-concurrent.version = 1.3.1
  +excalibur-util-concurrent.name = 
${excalibur-util-concurrent.id}-${excalibur-util-concurrent.version}.jar
  +excalibur-util-concurrent.jar=${local.repository}/${excalibur-util-concurrent.name}
  +
  +# ----- Excalibur Util Concurrent -----
  +commons-collections.id = commons-collections
  +commons-collections.version = 2.1
  +commons-collections.name = 
${commons-collections.id}-${commons-collections.version}.jar
  +commons-collections.jar=${local.repository}/${commons-collections.name}
  +
  +# ----- Avalon Logkit -----
  +avalon-logkit.id = avalon-logkit
  +avalon-logkit.version = 1.2
  +avalon-logkit.name = ${avalon-logkit.id}-${avalon-logkit.version}.jar
  +avalon-logkit.jar=${local.repository}/${avalon-logkit.name}
  +
  +
  +# --------------------------------------------------
  +#                SANDBOX LIBRARIES
  +# --------------------------------------------------
   
   # ----- Avalon Sandbox -----
   avalon-sandbox.home=${basedir}/..
  @@ -35,49 +86,12 @@
   avalon-lifecycle.lib=${avalon-lifecycle.home}/build/lib
   avalon-lifecycle.jar=${avalon-lifecycle.lib}/avalon-lifecycle-1.0.jar
   
  -# ----- Excalibur -----
  -excalibur.home=${basedir}/../../avalon-excalibur
  -
  -# ----- Excalibur i18n, version 1.1 or later -----
  -excalibur-i18n.home=${excalibur.home}/i18n
  -excalibur-i18n.lib=${excalibur-i18n.home}/build/lib
  -excalibur-i18n.jar=${excalibur-i18n.lib}/excalibur-i18n-1.0.jar
  -
  -# ----- Excalibur Extension -----
  -excalibur-extension.home=${excalibur.home}/extension
  -excalibur-extension.lib=${excalibur-extension.home}/build/lib
  -excalibur-extension.jar=${excalibur-extension.lib}/excalibur-extension-1.0a.jar
  -
  -# ----- Excalibur Configuration -----
  -excalibur-configuration.home=${excalibur.home}/configuration
  -excalibur-configuration.lib=${excalibur-configuration.home}/build/lib
  
-excalibur-configuration.jar=${excalibur-configuration.lib}/excalibur-configuration-1.0.jar
  -
  -# ----- Excalibur event, version 1.0 or later -----
  -excalibur-event.home=${excalibur.home}/event
  -excalibur-event.lib=${excalibur-event.home}/build/lib
  -excalibur-event.jar=${excalibur-event.lib}/excalibur-event-1.0.2.jar
  -util.concurrent.jar=${excalibur-event.home}/lib/util.concurrent-1.3.1.jar
  -
  -# ----- Commons collections -----
  -commons-collections.jar=${excalibur-event.home}/lib/commons-collections-2.1.jar
  -
  -# ----- Excalibur thread, version 1.0 or later -----
  -#excalibur-thread.home=${excalibur.home}/thread
  -#excalibur-thread.lib=${excalibur-thread.home}/build/lib
  -#excalibur-thread.jar=${excalibur-thread.lib}/excalibur-thread-1.1.jar
  -
  -# ----- Logkit -----
  -logkit.home=${basedir}/../../avalon-logkit
  -logkit.lib=${logkit.home}/build/lib
  -logkit.jar=${logkit.lib}/logkit.jar
  -
   # --------------------------------------------------
   
   #  Settings used to configure compile environment
   build.debug = on
   build.optimize = off
  -build.deprecation = off
  +build.deprecation = true
   build.compress = false
   junit.failonerror = false
   
  
  
  
  1.7       +5 -5      avalon-sandbox/assembly/src/etc/project.mf
  
  Index: project.mf
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/assembly/src/etc/project.mf,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- project.mf        28 Jan 2003 00:00:23 -0000      1.6
  +++ project.mf        12 Feb 2003 16:28:16 -0000      1.7
  @@ -5,7 +5,7 @@
   Specification-Version: 1.0
   Implementation-Vendor-Id: ASF
   Implementation-Version: 1.0
  -Extension-List: framework meta lifecycle configuration i18n logger
  +Extension-List: framework meta lifecycle configuration i18n logkit
   framework-Implementation-Vendor-Id: ASF
   framework-Extension-Name: avalon-framework
   framework-Specification-Version: 1.0
  @@ -26,7 +26,7 @@
   i18n-Specification-Version: 1.0
   i18n-Implementation-Vendor-Id: ASF
   i18n-Implementation-Version: 1.0
  -logger-Extension-Name: excalibur-logger
  -logger-Implementation-Vendor-Id: ASF
  -logger-Specification-Version: 1.0
  -logger-Implementation-Version: 1.0
  +logkit-Extension-Name: avalon-logkit
  +logkit-Implementation-Vendor-Id: ASF
  +logkit-Specification-Version: 1.0
  +logkit-Implementation-Version: 1.2
  
  
  
  1.2       +1 -1      
avalon-sandbox/assembly/src/java/org/apache/avalon/assembly/lifecycle/context/DefaultContextManager.xinfo
  
  Index: DefaultContextManager.xinfo
  ===================================================================
  RCS file: 
/home/cvs/avalon-sandbox/assembly/src/java/org/apache/avalon/assembly/lifecycle/context/DefaultContextManager.xinfo,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DefaultContextManager.xinfo       19 Dec 2002 10:42:24 -0000      1.1
  +++ DefaultContextManager.xinfo       12 Feb 2003 16:28:17 -0000      1.2
  @@ -1,7 +1,7 @@
   <?xml version="1.0"?>
   <!DOCTYPE type
         PUBLIC "-//AVALON/Component Type DTD Version 1.0//EN"
  -             "http://jakarta.apache.org/avalon/dtds/meta/type_1_1.dtd"; >
  +             "http://avalon.apache.org/dtds/meta/type_1_1.dtd"; >
   
   <!--  
   Copyright (C) The Apache Software Foundation. All rights reserved.
  
  
  
  1.9       +1 -1      
avalon-sandbox/assembly/src/java/org/apache/avalon/assembly/logging/DefaultLoggingManager.java
  
  Index: DefaultLoggingManager.java
  ===================================================================
  RCS file: 
/home/cvs/avalon-sandbox/assembly/src/java/org/apache/avalon/assembly/logging/DefaultLoggingManager.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- DefaultLoggingManager.java        7 Feb 2003 15:39:14 -0000       1.8
  +++ DefaultLoggingManager.java        12 Feb 2003 16:28:17 -0000      1.9
  @@ -429,7 +429,7 @@
           if( notify && getLogger().isInfoEnabled() )
           {
               final String message =
  -                REZ.getString( "category-create", name, target, 
logger.getPriority() );
  +                REZ.getString( "category-create", name, target, priority );
               getLogger().info( message );
           }
   
  
  
  
  1.9       +1 -1      
avalon-sandbox/assembly/src/test/org/apache/avalon/assembly/TestCaseBase.java
  
  Index: TestCaseBase.java
  ===================================================================
  RCS file: 
/home/cvs/avalon-sandbox/assembly/src/test/org/apache/avalon/assembly/TestCaseBase.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- TestCaseBase.java 7 Feb 2003 15:39:14 -0000       1.8
  +++ TestCaseBase.java 12 Feb 2003 16:28:17 -0000      1.9
  @@ -47,7 +47,7 @@
           m_base = new File( System.getProperty( "user.dir" ) );
           LoggingDescriptor logging = 
              new LoggingDescriptor( 
  -             "", "DEBUG", null, 
  +             "", "WARN", null, 
                new TargetDescriptor[ 0 ], 
                new Category( "logging", "WARN" ) );
   
  
  
  
  1.2       +6 -0      avalon-sandbox/lifecycle/.cvsignore
  
  Index: .cvsignore
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/lifecycle/.cvsignore,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- .cvsignore        24 Nov 2002 12:56:06 -0000      1.1
  +++ .cvsignore        12 Feb 2003 16:28:17 -0000      1.2
  @@ -6,3 +6,9 @@
   excalibur-*
   *.el
   *.ipr
  +velocity.log
  +project.xml
  +maven.xml
  +project.properties
  +maven.log
  +xdocs
  \ No newline at end of file
  
  
  
  1.4       +20 -10    avalon-sandbox/lifecycle/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/lifecycle/build.xml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- build.xml 24 Jan 2003 18:38:58 -0000      1.3
  +++ build.xml 12 Feb 2003 16:28:18 -0000      1.4
  @@ -1,6 +1,6 @@
   <?xml version="1.0"?>
   
  -<project name="Avalon Lifecycle Extension" default="main" basedir=".">
  +<project name="Avalon Lifecycle Extension" default="install" basedir=".">
   
       <property file="${user.home}/build.properties"/>
       <property file="${basedir}/../ant.properties"/>
  @@ -32,7 +32,7 @@
       <target name="main" depends="context,jar" description="Build the project"/>
       <target name="rebuild" depends="clean,main" description="Rebuild the project"/>
   
  -    <target name="context">
  +    <target name="context" depends="dependencies">
         <uptodate property="uptodate" targetfile="${build.lib}/${jar.name}">
           <srcfiles dir="src">
             <include name="**/*.*"/>
  @@ -40,14 +40,19 @@
         </uptodate>
       </target>
   
  -    <target name="dependencies" description="Check dependencies" 
unless="skip.dependencies"/>
  +    <target name="flags">
  +        <available property="framework.present"
  +               classname="org.apache.avalon.framework.Version"
  +               classpathref="project.class.path" />
  +    </target>
   
  -    <target name="dependencies-test" depends="dist-jar, dependencies"
  -        description="Check unit test dependencies" unless="skip.dependencies">
  -        <!-- Need the jar to prevent recursive deps. -->
  -        <!--
  -        <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkJUnit"/>
  -        -->
  +    <target name="dependencies" depends="flags" unless="framework.present">
  +      <echo>Framework not present - downloading from: ${remote.repository}</echo>
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${avalon-framework.id}/jars/${avalon-framework.name}"
  +             dest="${local.repository}/${avalon-framework.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
       </target>
   
       <!-- Compiles the source code -->
  @@ -78,7 +83,7 @@
       </target>
   
       <!-- Compiles the unit test source code -->
  -    <target name="compile-test" depends="compile, dependencies-test" 
description="Compiles the source code">
  +    <target name="compile-test" depends="compile" description="Compiles the source 
code">
           <mkdir dir="${build.testsrc}"/>
   
           <!-- Copy over all of the tests applying test filters -->
  @@ -135,6 +140,11 @@
               </zipfileset>
           </jar>
       </target>
  +
  +    <target name="install" depends="jar">
  +      <mkdir dir="${local.repository}"/>
  +      <copy toDir="${local.repository}" file="${build.dir}/lib/${jar.name}"/>
  +    </target> 
   
       <!-- Creates all the Javadocs -->
       <target name="javadocs" depends="compile" description="Generates the javadocs" 
unless="skip.javadocs">
  
  
  
  1.4       +7 -3      avalon-sandbox/lifecycle/default.properties
  
  Index: default.properties
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/lifecycle/default.properties,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- default.properties        7 Feb 2003 23:08:55 -0000       1.3
  +++ default.properties        12 Feb 2003 16:28:18 -0000      1.4
  @@ -12,14 +12,18 @@
   package-version=1.0
   year=2000-2002
   
  +remote.repository = http://www.osm.net/repository
  +local.repository = ../lib
  +
   # --------------------------------------------------
   #                REQUIRED LIBRARIES
   # --------------------------------------------------
   
   # ----- Avalon Framework, version 4.1 or later -----
  -avalon-framework.home=${basedir}/../../avalon
  -avalon-framework.lib=${avalon-framework.home}/target/lib
  -avalon-framework.jar=${avalon-framework.lib}/avalon-framework.jar
  +avalon-framework.id = avalon-framework
  +avalon-framework.version = 4.1.4
  +avalon-framework.name = ${avalon-framework.id}-${avalon-framework.version}.jar
  +avalon-framework.jar=${local.repository}/${avalon-framework.name}
   
   # ----- Avalon Sandbox -----
   avalon-sandbox.home=${basedir}/..
  
  
  
  1.1                  avalon-sandbox/lifecycle/LICENSE.TXT
  
  Index: LICENSE.TXT
  ===================================================================
  /*
  
   ============================================================================
                     The Apache Software License, Version 1.1
   ============================================================================
  
   Copyright (C) 1999-2002 The Apache Software Foundation. All rights reserved.
  
   Redistribution and use in source and binary forms, with or without modifica-
   tion, are permitted provided that the following conditions are met:
  
   1. Redistributions of  source code must  retain the above copyright  notice,
      this list of conditions and the following disclaimer.
  
   2. Redistributions in binary form must reproduce the above copyright notice,
      this list of conditions and the following disclaimer in the documentation
      and/or other materials provided with the distribution.
  
   3. The end-user documentation included with the redistribution, if any, must
      include  the following  acknowledgment:  "This product includes  software
      developed  by the  Apache Software Foundation  (http://www.apache.org/)."
      Alternately, this  acknowledgment may  appear in the software itself,  if
      and wherever such third-party acknowledgments normally appear.
  
   4. The names "Jakarta", "Apache Avalon", "Avalon Framework" and
      "Apache Software Foundation"  must not be used to endorse or promote
      products derived  from this  software without  prior written
      permission. For written permission, please contact [EMAIL PROTECTED]
  
   5. Products  derived from this software may not  be called "Apache", nor may
      "Apache" appear  in their name,  without prior written permission  of the
      Apache Software Foundation.
  
   THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
   INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
   FITNESS  FOR A PARTICULAR  PURPOSE ARE  DISCLAIMED.  IN NO  EVENT SHALL  THE
   APACHE SOFTWARE  FOUNDATION  OR ITS CONTRIBUTORS  BE LIABLE FOR  ANY DIRECT,
   INDIRECT, INCIDENTAL, SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL  DAMAGES (INCLU-
   DING, BUT NOT LIMITED TO, PROCUREMENT  OF SUBSTITUTE GOODS OR SERVICES; LOSS
   OF USE, DATA, OR  PROFITS; OR BUSINESS  INTERRUPTION)  HOWEVER CAUSED AND ON
   ANY  THEORY OF LIABILITY,  WHETHER  IN CONTRACT,  STRICT LIABILITY,  OR TORT
   (INCLUDING  NEGLIGENCE OR  OTHERWISE) ARISING IN  ANY WAY OUT OF THE  USE OF
   THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  
   This software  consists of voluntary contributions made  by many individuals
   on  behalf of the Apache Software  Foundation. For more  information on the
   Apache Software Foundation, please see <http://www.apache.org/>.
  
  */
  
  
  
  1.5       +3 -1      avalon-sandbox/merlin/.cvsignore
  
  Index: .cvsignore
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/merlin/.cvsignore,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- .cvsignore        7 Feb 2003 23:08:55 -0000       1.4
  +++ .cvsignore        12 Feb 2003 16:28:18 -0000      1.5
  @@ -12,4 +12,6 @@
   project.xml
   project.properties
   maven.log
  -target
  \ No newline at end of file
  +maven.xml
  +target
  +xdocs
  \ No newline at end of file
  
  
  
  1.19      +238 -105  avalon-sandbox/merlin/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/merlin/build.xml,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- build.xml 8 Feb 2003 23:33:40 -0000       1.18
  +++ build.xml 12 Feb 2003 16:28:18 -0000      1.19
  @@ -10,7 +10,7 @@
   @version 1.0 12/03/2001
   -->
   
  -<project name="merlin" default="main" basedir=".">
  +<project name="merlin" default="install" basedir=".">
   
     <property file="${basedir}/../ant.properties"/>
     <property file="${basedir}/ant.properties"/>
  @@ -19,27 +19,23 @@
     <property file="${basedir}/default.properties"/>
   
     <!-- Classpath for product -->
  -  <path id="bootstrap.class.path">
  -    <pathelement location="${commons-cli.jar}"/>
  -    <pathelement location="${excalibur-i18n.jar}"/>
  -  </path>
  -
  -  <!-- Classpath for product -->
     <path id="project.class.path">
  -    <pathelement location="${logkit.jar}"/>
  +    <pathelement location="${avalon-logkit.jar}"/>
  +    <pathelement location="${commons-collections.jar}"/>
       <pathelement location="${avalon-framework.jar}"/>
       <pathelement location="${excalibur-i18n.jar}"/>
  -    <pathelement location="${avalon-meta.jar}"/>
  -    <pathelement location="${avalon-lifecycle.jar}"/>
  -    <pathelement location="${avalon-assembly.jar}"/>
  -    <!--<pathelement location="${excalibur-logger.jar}"/>-->
  +    <pathelement location="${excalibur-extension.jar}"/>
  +    <pathelement location="${excalibur-util-concurrent.jar}"/>
       <pathelement location="${excalibur-configuration.jar}"/>
  +    <pathelement location="${excalibur-collections.jar}"/>
       <pathelement location="${excalibur-pool.jar}"/>
       <pathelement location="${excalibur-thread.jar}"/>
  +    <pathelement location="${excalibur-threadcontext.jar}"/>
       <pathelement location="${excalibur-event.jar}"/>
  -    <!--<pathelement location="${excalibur-sourceresolve.jar}"/>-->
  -    <pathelement location="${util.concurrent.jar}"/>
  -    <pathelement location="${commons-collections.jar}"/>
  +    <pathelement location="${avalon-assembly.jar}"/>
  +    <pathelement location="${avalon-meta.jar}"/>
  +    <pathelement location="${avalon-lifecycle.jar}"/>
  +    <pathelement location="${merlin-bootstrap.jar}"/>
       <pathelement location="${build.classes}"/>
       <pathelement location="${checkstyle.jar}"/>
       <!--<pathelement location="${xml-apis.jar}"/>-->
  @@ -74,21 +70,203 @@
       <ant dir="../assembly" inheritAll="false"/>
     </target>
   
  -  <target name="meta-context">
  -    <uptodate property="meta-uptodate" targetfile="${avalon-meta.jar}">
  -      <srcfiles dir="${avalon-meta.home}/src">
  +  <target name="bootstrap-context">
  +    <uptodate property="bootstrap-uptodate" targetfile="${merlin-bootstrap.jar}">
  +      <srcfiles dir="../merlin-bootstrap/src">
           <include name="**/*.*"/>
         </srcfiles>
       </uptodate>
     </target>
   
  -  <target name="meta" depends="meta-context" description="Meta dependency" 
unless="meta-uptodate">
  -    <ant dir="../meta" inheritAll="false"/>
  +  <target name="bootstrap" depends="bootstrap-context" 
  +      description="Bootstrap dependency" unless="bootstrap-uptodate">
  +    <ant dir="../merlin-bootstrap" inheritAll="false"/>
  +  </target>
  +
  +  <target name="flags">
  +        <available property="framework.present"
  +               classname="${avalon-framework.key}"
  +               classpathref="project.class.path" />
  +        <available property="configuration.present"
  +               classname="${excalibur-configuration.key}"
  +               classpathref="project.class.path" />
  +        <available property="i18n.present"
  +               classname="${excalibur-i18n.key}"
  +               classpathref="project.class.path" />
  +        <available property="extension.present"
  +               classname="${excalibur-extension.key}"
  +               classpathref="project.class.path" />
  +        <available property="excalibur-collections.present"
  +               classname="${excalibur-collections.key}"
  +               classpathref="project.class.path" />
  +        <available property="event.present"
  +               classname="${excalibur-event.key}"
  +               classpathref="project.class.path" />
  +        <available property="concurrent.present"
  +               classname="${excalibur-util-concurrent.key}"
  +               classpathref="project.class.path" />
  +        <available property="collections.present"
  +               classname="${commons-collections.key}"
  +               classpathref="project.class.path" />
  +        <available property="logkit.present"
  +               classname="${avalon-logkit.key}"
  +               classpathref="project.class.path" />
  +        <available property="thread.present"
  +               classname="${excalibur-thread.key}"
  +               classpathref="project.class.path" />
  +        <available property="threadcontext.present"
  +               classname="${excalibur-threadcontext.key}"
  +               classpathref="project.class.path" />
  +        <available property="pool.present"
  +               classname="${excalibur-pool.key}"
  +               classpathref="project.class.path" />
  +        <available property="lifecycle.present"
  +               classname="${avalon-lifecycle.key}"
  +               classpathref="project.class.path" />
  +        <available property="meta.present"
  +               classname="${avalon-meta.key}"
  +               classpathref="project.class.path" />
  +        <available property="assembly.present"
  +               classname="${avalon-assembly.key}"
  +               classpathref="project.class.path" />
  +        <available property="bootstrap.present"
  +               classname="${merlin-bootstrap.key}"
  +               classpathref="project.class.path" />
  +  </target>
  +
  +  <target name="dependencies" depends="external-dependencies,assembly,bootstrap" 
description="Check dependencies"/>
  +
  +  <target name="external-dependencies" 
depends="check-framework,check-i18n,check-configuration,check-extension,check-event,check-excalibur-util-concurrent,check-commons-collections,check-excalibur-collections,check-avalon-logkit,check-thread,check-thread-context,check-pool,check-lifecycle,check-meta,check-assembly,check-bootstrap"/>
  +
  +  <target name="check-framework" depends="flags" unless="framework.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${avalon-framework.id}/jars/${avalon-framework.name}"
  +             dest="${local.repository}/${avalon-framework.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-configuration" depends="flags" unless="configuration.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-configuration.id}/jars/${excalibur-configuration.name}"
  +             dest="${local.repository}/${excalibur-configuration.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-i18n" depends="flags" unless="i18n.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-i18n.id}/jars/${excalibur-i18n.name}"
  +             dest="${local.repository}/${excalibur-i18n.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-extension" depends="flags" unless="extension.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-extension.id}/jars/${excalibur-extension.name}"
  +             dest="${local.repository}/${excalibur-extension.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-event" depends="flags" unless="event.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-event.id}/jars/${excalibur-event.name}"
  +             dest="${local.repository}/${excalibur-event.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-excalibur-collections" depends="flags" 
unless="excalibur-collections.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-collections.id}/jars/${excalibur-collections.name}"
  +             dest="${local.repository}/${excalibur-collections.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-excalibur-util-concurrent" depends="flags" 
unless="concurrent.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-util-concurrent.id}/jars/${excalibur-util-concurrent.name}"
  +             dest="${local.repository}/${excalibur-util-concurrent.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-commons-collections" depends="flags" 
unless="collections.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${commons-collections.id}/jars/${commons-collections.name}"
  +             dest="${local.repository}/${commons-collections.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-avalon-logkit" depends="flags" unless="logkit.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get src="${remote.repository}/${avalon-logkit.id}/jars/${avalon-logkit.name}"
  +             dest="${local.repository}/${avalon-logkit.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-thread" depends="flags" unless="thread.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-thread.id}/jars/${excalibur-thread.name}"
  +             dest="${local.repository}/${excalibur-thread.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-thread-context" depends="flags" 
unless="threadcontext.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-threadcontext.id}/jars/${excalibur-threadcontext.name}"
  +             dest="${local.repository}/${excalibur-threadcontext.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-pool" depends="flags" unless="pool.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-pool.id}/jars/${excalibur-pool.name}"
  +             dest="${local.repository}/${excalibur-pool.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-lifecycle" depends="flags" unless="lifecycle.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${avalon-lifecycle.id}/jars/${avalon-lifecycle.name}"
  +             dest="${local.repository}/${avalon-lifecycle.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-meta" depends="flags" unless="meta.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get src="${remote.repository}/${avalon-meta.id}/jars/${avalon-meta.name}"
  +             dest="${local.repository}/${avalon-meta.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-assembly" depends="flags" unless="meta.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${avalon-assembly.id}/jars/${avalon-assembly.name}"
  +             dest="${local.repository}/${avalon-assembly.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-bootstrap" depends="flags" unless="bootstrap.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${merlin-bootstrap.id}/jars/${merlin-bootstrap.name}"
  +             dest="${local.repository}/${merlin-bootstrap.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
     </target>
   
  -  <target name="dependencies" depends="meta,assembly" description="Check 
dependencies" />
  -
  -  <target name="context">
  +  <target name="context" depends="dependencies">
       <mkdir dir="${lib.dir}"/>
       <uptodate property="uptodate" targetfile="${build.lib}/${jar.name}">
         <srcfiles dir="${src.dir}">
  @@ -100,21 +278,8 @@
       </uptodate>
     </target>
   
  -  <target name="context-bootstrap">
  -    <mkdir dir="${lib.dir}"/>
  -    <uptodate property="uptodate-bootstrap" 
targetfile="${build.lib}/${bootstrap.jar}">
  -      <srcfiles dir="${java.dir}">
  -        <include name="**/bootstrap/**/*.*"/>
  -        <include name="*.*"/>
  -      </srcfiles>
  -      <srcfiles dir="${lib.dir}">
  -        <include name="**/*.*"/>
  -      </srcfiles>
  -    </uptodate>
  -  </target>
  -
     <!-- Compiles the source code -->
  -  <target name="compile" depends="context,dependencies" 
  +  <target name="compile" depends="context" 
          description="Compiles the source code" unless="uptodate">
       
       <echo message="compiling ${ant.project.name}"/>
  @@ -148,33 +313,7 @@
   
     </target>
   
  -  <!-- Compiles the bootstrap source code -->
  -  <target name="compile-bootstrap" depends="context-bootstrap" 
  -       description="Compiles the bootstrap source code" unless="uptodate-bootstrap">
  -    
  -    <echo message="compiling bootstrap"/>
  -    <ant antfile="${excalibur.home}/i18n/build.xml" inheritall="false"/>
  -    <mkdir dir="${build.bootstrap}"/>
  -
  -    <javac srcdir="${java.dir}"
  -       destdir="${build.bootstrap}"
  -       debug="${build.debug}"
  -       optimize="${build.optimize}"
  -       deprecation="${build.deprecation}"
  -       target="1.2">
  -      <src path="${java.dir}" />
  -      <include name="Merlin.java"/>
  -      <include name="BootstrapRuntimeException.java"/>
  -      <include name="Resources.properties"/>
  -      <classpath refid="bootstrap.class.path" />
  -    </javac>
  -
  -  </target>
  -
  -  <!-- Creates the merlin jar files -->
  -  <target name="jar" depends="merlin.jar,bootstrap.jar" description="Generates the 
jar files"/>
  -
  -  <target name="merlin.jar" depends="compile" description="Generates the merlin jar 
file" unless="uptodate">
  +  <target name="jar" depends="compile" description="Generates the merlin jar file" 
unless="uptodate">
   
       <mkdir dir="${build.conf}"/>
       <copy todir="${build.conf}" flatten="true">
  @@ -206,40 +345,10 @@
   
     </target>
   
  -
  -  <!--
  -  Creation of the bootstrap jar file.  This contains the Excalibut i18n classes and 
the 
  -  commons CLI classes together with a Merlin bootstrap and related i18n resource 
class.
  -  -->
  -
  -  <target name="bootstrap.jar" depends="compile-bootstrap" 
  -      description="Generates the jar files" unless="uptodate-bootstrap">
  -
  -    <mkdir dir="${build.lib}"/>
  -
  -    <unzip src="${excalibur-i18n.jar}" dest="${build.bootstrap}"/>
  -    <unzip src="${commons-cli.jar}" dest="${build.bootstrap}"/>
  -
  -    <copy todir="${build.bootstrap}">
  -      <fileset dir="${java.dir}">
  -        <exclude name="*.java"/>
  -      </fileset>
  -    </copy>
  -
  -    <jar jarfile="${build.lib}/${bootstrap.jar}"
  -       basedir="${build.bootstrap}"
  -       compress="${build.compress}" >
  -
  -      <exclude name="META-INF/**/*.*"/>
  -
  -      <manifest>
  -        <attribute name="Main-Class" value="Merlin"/>
  -      </manifest>
  -
  -    </jar>
  -
  -  </target>
  -
  +  <target name="install" depends="jar,jar-playground">
  +      <mkdir dir="${local.repository}"/>
  +      <copy toDir="${local.repository}" file="${build.dir}/lib/${jar.name}"/>
  +  </target> 
   
     <target name="deploy" depends="jar">
   
  @@ -247,23 +356,22 @@
        <copy todir="${common.dir}" file="${avalon-framework.jar}"/>
        <copy todir="${common.dir}" file="${avalon-meta.jar}"/>
        <copy todir="${common.dir}" file="${excalibur-i18n.jar}"/>
  -     <copy todir="${common.dir}" file="${logkit.jar}"/>
  +     <copy todir="${common.dir}" file="${avalon-logkit.jar}"/>
        <copy todir="${common.dir}" file="${excalibur-configuration.jar}"/>
   
        <mkdir dir="${lib.dir}"/>
        <copy todir="${lib.dir}" file="${build.lib}/${jar.name}"/>
        <copy todir="${lib.dir}" file="${excalibur-collections.jar}"/>
        <copy todir="${lib.dir}" file="${excalibur-extension.jar}"/>
  -     <!--<copy todir="${lib.dir}" file="${excalibur-logger.jar}"/>-->
        <copy todir="${lib.dir}" file="${excalibur-event.jar}"/>
        <copy todir="${lib.dir}" file="${commons-collections.jar}"/>
  -     <copy todir="${lib.dir}" file="${util.concurrent.jar}"/>
  +     <copy todir="${lib.dir}" file="${excalibur-util-concurrent.jar}"/>
        <copy todir="${lib.dir}" file="${excalibur-threadcontext.jar}"/>
  -     <!--<copy todir="${lib.dir}" file="${excalibur-sourceresolve.jar}"/>-->
        <copy todir="${lib.dir}" file="${excalibur-pool.jar}"/>
        <copy todir="${lib.dir}" file="${excalibur-thread.jar}"/>
        <copy todir="${lib.dir}" file="${avalon-lifecycle.jar}"/>
        <copy todir="${lib.dir}" file="${avalon-assembly.jar}"/>
  +     <copy todir="${lib.dir}" file="${merlin-bootstrap.jar}"/>
        <!--
        <copy todir="${lib.dir}" preservelastmodified="true">
          <fileset dir="${tools.dir}/lib">
  @@ -558,9 +666,34 @@
     -->
   
     <target name="patch">
  -    <replace dir="src" summary="true"
  -       token="xxxx"
  -       value="yyyy" >
  +    <replace dir="xdocs" summary="true"
  +       token="s1 title="
  +       value="section name=">
  +     <include name="**/*.*"/>
  +    </replace>
  +    <replace dir="xdocs" summary="true"
  +       token="/s1"
  +       value="/section">
  +     <include name="**/*.*"/>
  +    </replace>
  +    <replace dir="xdocs" summary="true"
  +       token="s2 title="
  +       value="subsection name=">
  +     <include name="**/*.*"/>
  +    </replace>
  +    <replace dir="xdocs" summary="true"
  +       token="/s2"
  +       value="/subsection">
  +     <include name="**/*.*"/>
  +    </replace>
  +    <replace dir="xdocs" summary="true"
  +       token="/link"
  +       value="/a" >
  +     <include name="**/*.*"/>
  +    </replace>
  +    <replace dir="xdocs" summary="true"
  +       token="link href="
  +       value="a href=" >
        <include name="**/*.*"/>
       </replace>
     </target>
  
  
  
  1.18      +110 -81   avalon-sandbox/merlin/default.properties
  
  Index: default.properties
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/merlin/default.properties,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- default.properties        8 Feb 2003 03:32:06 -0000       1.17
  +++ default.properties        12 Feb 2003 16:28:18 -0000      1.18
  @@ -6,7 +6,7 @@
   # Not user-editable; use ant.properties files instead
   
   codename=merlin
  -name=avalon-${codename}
  +name=${codename}
   Name=Merlin Service Management System
   dir-name=merlin
   version=2.0
  @@ -15,96 +15,125 @@
   year=2002-2003
   
   
  +remote.repository = http://www.osm.net/repository
  +local.repository = ../lib
  +
   # --------------------------------------------------
   #                REQUIRED LIBRARIES
   # --------------------------------------------------
   
  -# ----- External jars -----
  -external.lib=${basedir}/external
  -commons-cli.jar=${external.lib}/commons-cli-1.0.jar
  -
  -# ----- Avalon Framework -----
  -avalon-framework.home=${basedir}/../../avalon
  -avalon-framework.lib=${avalon-framework.home}/target/lib
  -avalon-framework.jar=${avalon-framework.lib}/avalon-framework.jar
  -
  -# ----- Avalon Sandbox -----
  -avalon-sandbox.home=${basedir}/..
  +# ----- Avalon Framework, version 4.1 or later -----
  +avalon-framework.id = avalon-framework
  +avalon-framework.version = 4.1.4
  +avalon-framework.name = ${avalon-framework.id}-${avalon-framework.version}.jar
  +avalon-framework.key = org.apache.avalon.framework.Version
  +avalon-framework.jar=${local.repository}/${avalon-framework.name}
  +
  +# ----- Excalibur i18n, 1.0 -----
  +excalibur-i18n.id = excalibur-i18n
  +excalibur-i18n.version = 1.0
  +excalibur-i18n.key = org.apache.avalon.excalibur.i18n.Resources
  +excalibur-i18n.name = ${excalibur-i18n.id}-${excalibur-i18n.version}.jar
  +excalibur-i18n.jar=${local.repository}/${excalibur-i18n.name}
  +
  +# ----- Excalibur Configuration, version 1.0 -----
  +excalibur-configuration.id = excalibur-configuration
  +excalibur-configuration.version = 1.0
  +excalibur-configuration.key = org.apache.excalibur.configuration.ConfigurationUtil
  +excalibur-configuration.name = 
${excalibur-configuration.id}-${excalibur-configuration.version}.jar
  +excalibur-configuration.jar=${local.repository}/${excalibur-configuration.name}
  +
  +# ----- Excalibur Extension -----
  +excalibur-extension.id = excalibur-extension
  +excalibur-extension.version = 1.0
  +excalibur-extension.key = org.apache.avalon.excalibur.extension.Specification
  +excalibur-extension.name = 
${excalibur-extension.id}-${excalibur-extension.version}.jar
  +excalibur-extension.jar=${local.repository}/${excalibur-extension.name}
  +
  +# ----- Excalibur Event -----
  +excalibur-event.id = excalibur-event
  +excalibur-event.version = 2.0
  +excalibur-event.key = org.apache.excalibur.event.Signal
  +excalibur-event.name = ${excalibur-event.id}-${excalibur-event.version}.jar
  +excalibur-event.jar=${local.repository}/${excalibur-event.name}
  +
  +# ----- Excalibur Util Concurrent -----
  +excalibur-util-concurrent.id = excalibur-util-concurrent
  +excalibur-util-concurrent.version = 1.3.1
  +excalibur-util-concurrent.key = EDU.oswego.cs.dl.util.concurrent.Callable
  +excalibur-util-concurrent.name = 
${excalibur-util-concurrent.id}-${excalibur-util-concurrent.version}.jar
  +excalibur-util-concurrent.jar=${local.repository}/${excalibur-util-concurrent.name}
  +
  +# ----- Commons Collections -----
  +commons-collections.id = commons-collections
  +commons-collections.version = 2.1
  +commons-collections.key = org.apache.commons.collections.Bag
  +commons-collections.name = 
${commons-collections.id}-${commons-collections.version}.jar
  +commons-collections.jar=${local.repository}/${commons-collections.name}
  +
  +# ----- Avalon Logkit -----
  +avalon-logkit.id = avalon-logkit
  +avalon-logkit.version = 1.2
  +avalon-logkit.key = org.apache.log.Logger
  +avalon-logkit.name = ${avalon-logkit.id}-${avalon-logkit.version}.jar
  +avalon-logkit.jar=${local.repository}/${avalon-logkit.name}
   
   # ----- Avalon Meta -----
  -avalon-meta.home=${avalon-sandbox.home}/meta
  -avalon-meta.lib=${avalon-meta.home}/build/lib
  -avalon-meta.jar=${avalon-meta.lib}/avalon-meta-1.0.jar
  +avalon-meta.id = avalon-meta
  +avalon-meta.version = 1.0
  +avalon-meta.key = org.apache.avalon.meta.info.Type
  +avalon-meta.name = ${avalon-meta.id}-${avalon-meta.version}.jar
  +avalon-meta.jar=${local.repository}/${avalon-meta.name}
   
   # ----- Avalon Lifecycle -----
  -avalon-lifecycle.home=${avalon-sandbox.home}/lifecycle
  -avalon-lifecycle.lib=${avalon-lifecycle.home}/build/lib
  -avalon-lifecycle.jar=${avalon-lifecycle.lib}/avalon-lifecycle-1.0.jar
  +avalon-lifecycle.id = avalon-lifecycle
  +avalon-lifecycle.version = 1.0
  +avalon-lifecycle.key = org.apache.avalon.lifecycle.Creator
  +avalon-lifecycle.name = ${avalon-lifecycle.id}-${avalon-lifecycle.version}.jar
  +avalon-lifecycle.jar=${local.repository}/${avalon-lifecycle.name}
   
   # ----- Avalon Assembly -----
  -avalon-assembly.home=${avalon-sandbox.home}/assembly
  -avalon-assembly.lib=${avalon-assembly.home}/build/lib
  -avalon-assembly.jar=${avalon-assembly.lib}/avalon-assembly-1.0.jar
  -
  -# ----- Excalibur -----
  -excalibur.home=${basedir}/../../avalon-excalibur
  -
  -# ----- Excalibur i18n, version 1.1 or later -----
  -excalibur-i18n.home=${excalibur.home}/i18n
  -excalibur-i18n.lib=${excalibur-i18n.home}/build/lib
  -excalibur-i18n.jar=${excalibur-i18n.lib}/excalibur-i18n-1.0.jar
  -
  -# ----- Excalibur Extension, version 1.0 or later -----
  -excalibur-extension.home=${excalibur.home}/extension
  -excalibur-extension.lib=${excalibur-extension.home}/build/lib
  -excalibur-extension.jar=${excalibur-extension.lib}/excalibur-extension-1.0a.jar
  -
  -# ----- Excalibur Configuration -----
  -excalibur-configuration.home=${excalibur.home}/configuration
  -excalibur-configuration.lib=${excalibur-configuration.home}/build/lib
  
-excalibur-configuration.jar=${excalibur-configuration.lib}/excalibur-configuration-1.0.jar
  -
  -# ----- Excalibur logger, version 1.0 or later -----
  -#excalibur-logger.home=${excalibur.home}/logger
  -#excalibur-logger.lib=${excalibur-logger.home}/build/lib
  -#excalibur-logger.jar=${excalibur-logger.lib}/excalibur-logger-1.0.jar
  -
  -# ----- Excalibur event, version 1.0 or later -----
  -excalibur-event.home=${excalibur.home}/event
  -excalibur-event.lib=${excalibur-event.home}/build/lib
  -excalibur-event.jar=${excalibur-event.lib}/excalibur-event-1.0.2.jar
  -util.concurrent.jar=${excalibur-event.home}/lib/util.concurrent-1.3.1.jar
  -commons-collections.jar=${excalibur-event.home}/lib/commons-collections-2.1.jar
  -
  -# ----- Excalibur collections, version 1.0 or later -----
  -excalibur-collections.home=${excalibur.home}/collections
  -excalibur-collections.lib=${excalibur-collections.home}/build/lib
  -excalibur-collections.jar=${excalibur-collections.lib}/excalibur-collections-1.0.jar
  -
  -# ----- Excalibur thread, version 1.0 or later -----
  -excalibur-thread.home=${excalibur.home}/thread
  -excalibur-thread.lib=${excalibur-thread.home}/build/lib
  -excalibur-thread.jar=${excalibur-thread.lib}/excalibur-thread-1.1.jar
  -
  -# ----- Excalibur threadcontext, version 1.0 or later -----
  -excalibur-threadcontext.home=${excalibur.home}/threadcontext
  -excalibur-threadcontext.lib=${excalibur-threadcontext.home}/build/lib
  
-excalibur-threadcontext.jar=${excalibur-threadcontext.lib}/excalibur-threadcontext-1.0.jar
  -
  -# ----- Excalibur pool -----
  -excalibur-pool.home=${excalibur.home}/pool
  -excalibur-pool.lib=${excalibur-pool.home}/build/lib
  -excalibur-pool.jar=${excalibur-pool.lib}/excalibur-pool-1.2.jar
  -
  -# ----- Excalibur datasource -----
  -#excalibur-sourceresolve.home=${excalibur.home}/sourceresolve
  -#excalibur-sourceresolve.lib=${excalibur-sourceresolve.home}/build/lib
  
-#excalibur-sourceresolve.jar=${excalibur-sourceresolve.lib}/excalibur-sourceresolve-1.0.jar
  -
  -# ----- Logkit -----
  -logkit.home=${basedir}/../../avalon-logkit
  -logkit.lib=${logkit.home}/build/lib
  -logkit.jar=${logkit.lib}/logkit.jar
  +avalon-assembly.home = ../assembly
  +avalon-assembly.id = avalon-assembly
  +avalon-assembly.version = 1.0
  +avalon-assembly.key = org.apache.avalon.assembly.appliance.Appliance
  +avalon-assembly.name = ${avalon-assembly.id}-${avalon-assembly.version}.jar
  +avalon-assembly.jar=${local.repository}/${avalon-assembly.name}
  +
  +# ----- Excalibur Thread -----
  +excalibur-thread.id = excalibur-thread
  +excalibur-thread.version = 1.1
  +excalibur-thread.key = org.apache.excalibur.thread.Executable
  +excalibur-thread.name = ${excalibur-thread.id}-${excalibur-thread.version}.jar
  +excalibur-thread.jar=${local.repository}/${excalibur-thread.name}
  +
  +# ----- Excalibur ThreadContext -----
  +excalibur-threadcontext.id = excalibur-threadcontext
  +excalibur-threadcontext.version = 1.0
  +excalibur-threadcontext.key = org.apache.excalibur.threadcontext.ThreadContext
  +excalibur-threadcontext.name = 
${excalibur-threadcontext.id}-${excalibur-threadcontext.version}.jar
  +excalibur-threadcontext.jar=${local.repository}/${excalibur-threadcontext.name}
  +
  +# ----- Excalibur Pool -----
  +excalibur-pool.id = excalibur-pool
  +excalibur-pool.version = 1.2
  +excalibur-pool.key = org.apache.avalon.excalibur.pool.Pool
  +excalibur-pool.name = ${excalibur-pool.id}-${excalibur-pool.version}.jar
  +excalibur-pool.jar=${local.repository}/${excalibur-pool.name}
  +
  +# ----- Excalibur Pool -----
  +excalibur-collections.id = excalibur-collections
  +excalibur-collections.version = 1.0
  +excalibur-collections.key = org.apache.avalon.excalibur.collections.Buffer
  +excalibur-collections.name = 
${excalibur-collections.id}-${excalibur-collections.version}.jar
  +excalibur-collections.jar=${local.repository}/${excalibur-collections.name}
  +
  +# ----- Merlin Bootstrap -----
  +merlin-bootstrap.id = merlin-bootstrap
  +merlin-bootstrap.version = 1.0
  +merlin-bootstrap.key = Merlin
  +merlin-bootstrap.name = ${merlin-bootstrap.id}-${merlin-bootstrap.version}.jar
  +merlin-bootstrap.jar=${local.repository}/${merlin-bootstrap.name}
   
   # --------------------------------------------------
   
  
  
  
  1.2       +1 -1      avalon-sandbox/merlin/bin/merlin.bat
  
  Index: merlin.bat
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/merlin/bin/merlin.bat,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- merlin.bat        8 Feb 2003 03:30:52 -0000       1.1
  +++ merlin.bat        12 Feb 2003 16:28:19 -0000      1.2
  @@ -1,3 +1,3 @@
   @echo off
  -java -jar %MERLIN_HOME%\build\lib\merlin-bootstrap-2.1.jar %1 %2 %3 %4 %5 %6
  +java -jar %MERLIN_HOME%\lib\merlin-bootstrap-1.0.jar %1 %2 %3 %4 %5 %6
   
  
  
  
  1.1                  avalon-sandbox/merlin/src/bin/merlin.bat
  
  Index: merlin.bat
  ===================================================================
  @echo off
  java -jar %MERLIN_HOME%\build\lib\merlin-bootstrap-2.1.jar %1 %2 %3 %4 %5 %6
  
  
  
  
  1.6       +4 -4      
avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/block/impl/DefaultBlock.java
  
  Index: DefaultBlock.java
  ===================================================================
  RCS file: 
/home/cvs/avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/block/impl/DefaultBlock.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- DefaultBlock.java 8 Feb 2003 02:17:32 -0000       1.5
  +++ DefaultBlock.java 12 Feb 2003 16:28:20 -0000      1.6
  @@ -51,7 +51,7 @@
   import org.apache.avalon.meta.info.DependencyDescriptor;
   import org.apache.avalon.meta.model.builder.XMLProfileCreator;
   import org.apache.avalon.meta.model.Profile;
  -import org.apache.avalon.merlin.service.Registry;
  +//import org.apache.avalon.merlin.service.Registry;
   import org.apache.avalon.merlin.kernel.impl.DefaultKernel;
   import org.apache.avalon.assembly.appliance.DefaultApplianceContext;
   import org.apache.excalibur.configuration.ConfigurationUtil;
  @@ -170,7 +170,7 @@
      /**
       * The service registry assigned to the block.
       */
  -    private Registry m_registry;
  +    //private Registry m_registry;
   
      /**
       * List of the appliance instances that the block is 
  @@ -236,7 +236,7 @@
           m_engine = (EngineClassLoader) context.get( "urn:assembly:engine" );
           m_applianceContext = (ApplianceContext) context.get( 
"urn:assembly:appliance.context" );
           m_descriptor = (ContainerDescriptor) context.get( 
"urn:merlin:container.descriptor" );
  -        m_registry = (Registry) context.get( "urn:merlin:container.registry" );
  +        //m_registry = (Registry) context.get( "urn:merlin:container.registry" );
           m_library = (Library) context.get( "urn:merlin:container.library" );
           m_blocks = (List) context.get( "urn:merlin:container.containers" );
       }
  @@ -286,7 +286,7 @@
   
               Appliance appliance = m_engine.createAppliance( context, true );
               m_appliances.add( appliance );
  -            m_registry.bind( appliance );
  +            //m_registry.bind( appliance );
           }
      }
   
  
  
  
  1.9       +39 -42    
avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/block/impl/DefaultBlockLoader.java
  
  Index: DefaultBlockLoader.java
  ===================================================================
  RCS file: 
/home/cvs/avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/block/impl/DefaultBlockLoader.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- DefaultBlockLoader.java   8 Feb 2003 08:51:52 -0000       1.8
  +++ DefaultBlockLoader.java   12 Feb 2003 16:28:20 -0000      1.9
  @@ -112,8 +112,8 @@
   import org.apache.avalon.merlin.container.Container;
   import org.apache.avalon.merlin.container.ContainerException;
   import org.apache.avalon.merlin.container.impl.DefaultContainer;
  -import org.apache.avalon.merlin.service.DefaultRegistry;
  -import org.apache.avalon.merlin.service.Registry;
  +//import org.apache.avalon.merlin.service.DefaultRegistry;
  +//import org.apache.avalon.merlin.service.Registry;
   import org.apache.avalon.meta.model.builder.XMLProfileCreator;
   import org.apache.avalon.meta.model.LoggingDirective;
   import org.apache.avalon.meta.model.Profile;
  @@ -173,7 +173,7 @@
      /**
       * The root registry.
       */
  -    private Registry m_registry;
  +    //private Registry m_registry;
       
      /**
       * The application home directory.
  @@ -208,12 +208,12 @@
   
      /**
       * Contextualization of the block loader during which the root 
  -    * engine and registry along with the system context.
  +    * engine along with the system context.
       */
       public void contextualize( Locator context ) throws ContextException
       {
           m_engine = (EngineClassLoader) context.get( "urn:assembly:engine" );
  -        m_registry = (Registry) context.get( "urn:assembly:registry" );
  +        //m_registry = (Registry) context.get( "urn:assembly:registry" );
           m_system = (Locator) context.get( "urn:assembly:system-context" );
           m_home = (File) m_system.get( "urn:assembly:home" );
       }
  @@ -263,7 +263,7 @@
       public void dispose()
       {
           m_engine = null;
  -        m_registry = null;
  +        //m_registry = null;
           m_system = null;
           m_home = null;
       }
  @@ -510,27 +510,26 @@
           }
   
           //
  -        // create an appliance context and add to it a registry derived from the 
  -        // parent registry
  +        // create an appliance context 
           //
   
           String partition = name + Container.PATH_SEPERATOR;
           ContainerDescriptor descriptor = createContainerDescriptor( name, engine, 
implementation );
  -        Registry registry = null;
  +        //Registry registry = null;
   
  -        try
  -        {
  -            registry = m_registry.createChild( name );
  -        }
  -        catch( Throwable ee )
  -        {
  -            final String error = 
  -              "Could not construct secondary registry for block: " + name;
  -            throw new BlockException( error, ee );
  -        }
  +        //try
  +        //{
  +        //    registry = m_registry.createChild( name );
  +        //}
  +        //catch( Throwable ee )
  +        //{
  +        //    final String error = 
  +        //      "Could not construct secondary registry for block: " + name;
  +        //    throw new BlockException( error, ee );
  +        //}
   
  -        List list = createChildBlocks( engine, registry, partition, implementation, 
config, getLogger() );
  -        return createBlock( engine, list, descriptor, name, registry, 
Container.PATH_SEPERATOR, config ); 
  +        List list = createChildBlocks( engine, partition, implementation, config, 
getLogger() );
  +        return createBlock( engine, list, descriptor, name, 
Container.PATH_SEPERATOR, config ); 
       }
   
      /**
  @@ -593,14 +592,13 @@
       * Creation of a set of child blocks relative to a set of parent parameters.
       * 
       * @param engine the parent classloader
  -    * @param registry the parent registry
       * @param partition the partition to be applied to the child containers
       * @param config a confiuration containing a set of subsidiary container elements
       * @param logger the logger from which child loggers shall be created
       * @return a list of appliance instances each representing a container container
       */
       private List createChildBlocks( 
  -      EngineClassLoader engine, Registry registry, String partition,
  +      EngineClassLoader engine, String partition,
         Configuration config, Configuration custom, Logger logger )
         throws BlockException
       {
  @@ -651,20 +649,20 @@
                   throw new BlockException( error, ce );
               }
   
  -            Registry reg;
  -            try
  -            {
  -                reg = registry.createChild( name );
  -            }
  -            catch( MalformedURLException e )
  -            {
  -                final String error = 
  -                  "Cannot create a subsidiary container due to a url format error.";
  -                throw new BlockException( error, e );
  -            }
  +            //Registry reg;
  +            //try
  +            //{
  +            //    reg = registry.createChild( name );
  +            //}
  +            //catch( MalformedURLException e )
  +            //{
  +            //    final String error = 
  +            //      "Cannot create a subsidiary container due to a url format 
error.";
  +            //    throw new BlockException( error, e );
  +            //}
   
               Block block = createContainmentBlock( 
  -              loader, reg, partition, name, child, custom, getLogger() );
  +              loader, partition, name, child, custom, getLogger() );
               list.add( block );
           }
   
  @@ -675,7 +673,6 @@
       * Create a single containment block.
       *
       * @param engine the containers classloader
  -    * @param registry the component registry to apply to the container
       * @param partition the partition to assigne to the container
       * @param name the appliance name
       * @param config the configuration of the container
  @@ -684,12 +681,12 @@
       * @exception BlockException if an error occurs during creation of the block
       */
       private Block createContainmentBlock( 
  -      EngineClassLoader engine, Registry registry, String partition, String name, 
  +      EngineClassLoader engine, String partition, String name, 
         Configuration config, Configuration custom, Logger logger )
         throws BlockException
       {
           String subPartition = partition + name + Container.PATH_SEPERATOR;
  -        List list = createChildBlocks( engine, registry, subPartition, config, 
custom, logger );
  +        List list = createChildBlocks( engine, subPartition, config, custom, logger 
);
   
           ContainerDescriptor descriptor;
           try
  @@ -703,7 +700,7 @@
               throw new BlockException( error, e );
           }
   
  -        return createBlock( engine, list, descriptor, name, registry, partition, 
custom ); 
  +        return createBlock( engine, list, descriptor, name, partition, custom ); 
       }
   
      /**
  @@ -721,7 +718,7 @@
       */
       private Block createBlock( 
         EngineClassLoader engine, List containers, ContainerDescriptor descriptor, 
  -      String name, Registry registry, String partition, Configuration custom )
  +      String name, String partition, Configuration custom )
         throws BlockException
       {
           if( getLogger().isDebugEnabled() )
  @@ -747,7 +744,7 @@
           context.setPartitionName( partition );
           context.setApplianceClassname( DefaultBlock.class.getName() );
           context.put("urn:merlin:container.descriptor", descriptor ); 
  -        context.put("urn:merlin:container.registry", registry );
  +        //context.put("urn:merlin:container.registry", registry );
           context.put("urn:merlin:container.library", this );
           context.put("urn:merlin:container.containers", containers );
           context.makeReadOnly();
  
  
  
  1.4       +1 -2      
avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/container/impl/DefaultContainer.java
  
  Index: DefaultContainer.java
  ===================================================================
  RCS file: 
/home/cvs/avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/container/impl/DefaultContainer.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- DefaultContainer.java     7 Feb 2003 15:39:35 -0000       1.3
  +++ DefaultContainer.java     12 Feb 2003 16:28:20 -0000      1.4
  @@ -83,7 +83,6 @@
   import org.apache.avalon.merlin.container.ContainerDescriptor;
   import org.apache.avalon.merlin.container.StateEvent;
   import org.apache.avalon.merlin.container.StateListener;
  -import org.apache.avalon.merlin.service.Registry;
   import org.apache.avalon.meta.model.Profile;
   import org.apache.excalibur.configuration.ConfigurationUtil;
   
  
  
  
  1.8       +23 -21    
avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/kernel/impl/DefaultKernel.java
  
  Index: DefaultKernel.java
  ===================================================================
  RCS file: 
/home/cvs/avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/kernel/impl/DefaultKernel.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- DefaultKernel.java        8 Feb 2003 08:51:52 -0000       1.7
  +++ DefaultKernel.java        12 Feb 2003 16:28:20 -0000      1.8
  @@ -103,8 +103,8 @@
   import org.apache.avalon.merlin.block.BlockException;
   import org.apache.avalon.merlin.container.builder.XMLContainerCreator;
   import org.apache.avalon.merlin.container.Container;
  -import org.apache.avalon.merlin.service.DefaultRegistry;
  -import org.apache.avalon.merlin.service.Registry;
  +//import org.apache.avalon.merlin.service.DefaultRegistry;
  +//import org.apache.avalon.merlin.service.Registry;
   import org.apache.avalon.merlin.kernel.Kernel;
   import org.apache.avalon.merlin.kernel.KernelException;
   import org.apache.avalon.merlin.kernel.KernelRuntimeException;
  @@ -219,7 +219,9 @@
        */
       private Map m_containers = new Hashtable();
   
  -    private DefaultRegistry m_registry;
  +    //private DefaultRegistry m_registry;
  +
  +    private String m_domain;
   
       private final DependencyGraph m_graph = new DependencyGraph();
   
  @@ -324,8 +326,8 @@
           // setup the domain and service registry
           //
   
  -        String domain = m_profile.getChild( "system" ).getAttribute( "host", 
"localhost" );
  -        m_registry = new DefaultRegistry( domain );
  +        m_domain = m_profile.getChild( "system" ).getAttribute( "host", "localhost" 
);
  +        //m_registry = new DefaultRegistry( domain );
           
           //
           // announce initialization
  @@ -333,7 +335,7 @@
   
           if( getLogger().isInfoEnabled() )
           {
  -            getLogger().info( "initialization from: " + m_home + " on " + domain );
  +            getLogger().info( "initialization from: " + m_home + " on " + m_domain 
);
           }
   
           //
  @@ -375,7 +377,7 @@
               loader.enableLogging( getLogger() );
               DefaultLocator context = new DefaultLocator();
               context.put( "urn:assembly:engine", m_engine );
  -            context.put( "urn:assembly:registry", m_registry );
  +            //context.put( "urn:assembly:registry", m_registry );
               context.put( "urn:assembly:system-context", getSystemContext() );
               context.makeReadOnly();
               loader.contextualize( context );
  @@ -440,18 +442,18 @@
           // list the registered services
           //
   
  -        URL[] appliances = m_registry.list();
  -        if( appliances.length == 0 )
  -        {
  -            getLogger().info( "empty registry" ); 
  -        }
  -        else
  -        {
  -            for( int i=0; i<appliances.length; i++ )
  -            {
  -               getLogger().info("registry: " + appliances[i] ); 
  -            }
  -        }
  +        //URL[] appliances = m_registry.list();
  +        //if( appliances.length == 0 )
  +        //{
  +        //    getLogger().info( "empty registry" ); 
  +        //}
  +        //else
  +        //{
  +        //    for( int i=0; i<appliances.length; i++ )
  +        //    {
  +        //       getLogger().info("registry: " + appliances[i] ); 
  +        //    }
  +        //}
       }
   
       //==============================================================
  @@ -676,7 +678,7 @@
           {
               DefaultLocator context = new DefaultLocator();
               context.put( "urn:assembly:home", m_home );
  -            context.put( "urn:merlin:domain", m_registry.getBase().getHost() );
  +            context.put( "urn:merlin:domain", m_domain );
               context.makeReadOnly();
               m_system = context;
           }
  
  
  
  1.5       +1 -1      avalon-sandbox/merlin/src/test/config/demo.xml
  
  Index: demo.xml
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/merlin/src/test/config/demo.xml,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- demo.xml  8 Feb 2003 02:17:32 -0000       1.4
  +++ demo.xml  12 Feb 2003 16:28:20 -0000      1.5
  @@ -14,7 +14,7 @@
        <engine>
          <classpath>
            <fileset dir="build/lib">
  -           <include name="avalon-merlin-demo-1.0.jar"/>
  +           <include name="merlin-demo-1.0.jar"/>
            </fileset>
          </classpath>
        </engine>
  
  
  
  1.2       +36 -3     avalon-sandbox/merlin-bootstrap/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/merlin-bootstrap/build.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- build.xml 12 Feb 2003 11:51:17 -0000      1.1
  +++ build.xml 12 Feb 2003 16:28:20 -0000      1.2
  @@ -10,7 +10,7 @@
   @version 1.0 12/03/2001
   -->
   
  -<project name="merlin-bootstrap" default="main" basedir=".">
  +<project name="merlin-bootstrap" default="install" basedir=".">
   
     <property file="${basedir}/../ant.properties"/>
     <property file="${basedir}/ant.properties"/>
  @@ -27,7 +27,7 @@
     <target name="main" depends="jar" description="Build the bootstrap jar file."/>
     <target name="rebuild" depends="clean,main" description="Rebuild the project."/>
   
  -  <target name="context">
  +  <target name="context" depends="dependencies">
       <mkdir dir="${lib.dir}"/>
       <uptodate property="uptodate" targetfile="${build.lib}/${jar.name}">
         <srcfiles dir="${src.dir}">
  @@ -39,12 +39,40 @@
       </uptodate>
     </target>
   
  +  <target name="dependencies" depends="check-cli,check-i18n"/>
  +
  +  <target name="flags">
  +        <available property="cli.present"
  +               classname="org.apache.commons.cli.Option"
  +               classpathref="project.class.path" />
  +        <available property="i18n.present"
  +               classname="org.apache.avalon.excalibur.i18n.Resources"
  +               classpathref="project.class.path" />
  +  </target>
  +
  +  <target name="check-i18n" depends="flags" unless="i18n.present">
  +      <echo>Checking Excalibur i18n: ${remote.repository}</echo>
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-i18n.id}/jars/${excalibur-i18n.name}"
  +             dest="${local.repository}/${excalibur-i18n.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
  +  <target name="check-cli" depends="flags" unless="cli.present">
  +      <echo>Checking Commons CLI: ${remote.repository}</echo>
  +      <mkdir dir="${local.repository}"/>
  +     <get src="${remote.repository}/${commons-cli.id}/jars/${commons-cli.name}"
  +             dest="${local.repository}/${commons-cli.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +  </target>
  +
     <!-- Compiles the bootstrap source code -->
     <target name="compile" depends="context" 
          description="Compiles the bootstrap source code" unless="uptodate">
       
       <echo message="compiling bootstrap"/>
  -
       <mkdir dir="${build.classes}"/>
   
       <javac srcdir="${java.dir}"
  @@ -90,6 +118,11 @@
   
       </jar>
   
  +  </target>
  +
  +  <target name="install" depends="jar">
  +      <mkdir dir="${local.repository}"/>
  +      <copy toDir="${local.repository}" file="${build.lib}/${jar.name}"/>
     </target>
   
     <!-- Creates all the Javadocs -->
  
  
  
  1.2       +20 -11    avalon-sandbox/merlin-bootstrap/default.properties
  
  Index: default.properties
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/merlin-bootstrap/default.properties,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- default.properties        12 Feb 2003 11:51:17 -0000      1.1
  +++ default.properties        12 Feb 2003 16:28:21 -0000      1.2
  @@ -6,13 +6,32 @@
   # Not user-editable; use ant.properties files instead
   
   codename=merlin-bootstrap
  -name=avalon-${codename}
  +name=${codename}
   Name=Merlin CLI Bootstrap
   dir-name=merlin-bootstrap
   version=1.0
   package-version=1.0
   year=2003
   
  +remote.repository = http://www.osm.net/repository
  +local.repository = ../lib
  +
  +# --------------------------------------------------
  +#                REQUIRED LIBRARIES
  +# --------------------------------------------------
  +
  +# ----- Excalibur i18n, 1.0 -----
  +excalibur-i18n.id = excalibur-i18n
  +excalibur-i18n.version = 1.0
  +excalibur-i18n.name = ${excalibur-i18n.id}-${excalibur-i18n.version}.jar
  +excalibur-i18n.jar=${local.repository}/${excalibur-i18n.name}
  +
  +# ----- Commons CLI -----
  +commons-cli.id = commons-cli
  +commons-cli.version = 1.0
  +commons-cli.name = ${commons-cli.id}-${commons-cli.version}.jar
  +commons-cli.jar=${local.repository}/${commons-cli.name}
  +
   # --------------------------------------------------
   #  directory structure
   # --------------------------------------------------
  @@ -22,16 +41,6 @@
   etc.dir = ${src.dir}/etc
   lib.dir = lib
   dist.dir = dist
  -
  -# --------------------------------------------------
  -#                REQUIRED LIBRARIES
  -# --------------------------------------------------
  -
  -# ----- Library jars -----
  -commons-cli.jar=${lib.dir}/commons-cli-1.0.jar
  -
  -# ----- Excalibur i18n -----
  -excalibur-i18n.jar=${lib.dir}/excalibur-i18n-1.0.jar
   
   # --------------------------------------------------
   
  
  
  
  1.3       +3 -0      avalon-sandbox/meta/.cvsignore
  
  Index: .cvsignore
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/meta/.cvsignore,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- .cvsignore        7 Feb 2003 23:08:56 -0000       1.2
  +++ .cvsignore        12 Feb 2003 16:28:21 -0000      1.3
  @@ -9,3 +9,6 @@
   velocity.log
   project.xml
   maven.log
  +project.properties
  +xdocs
  +target
  \ No newline at end of file
  
  
  
  1.7       +47 -14    avalon-sandbox/meta/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/meta/build.xml,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- build.xml 29 Jan 2003 13:50:39 -0000      1.6
  +++ build.xml 12 Feb 2003 16:28:21 -0000      1.7
  @@ -1,6 +1,6 @@
   <?xml version="1.0"?>
   
  -<project name="Avalon Meta" default="main" basedir=".">
  +<project name="Avalon Meta" default="install" basedir=".">
   
       <property file="${user.home}/build.properties"/>
       <property file="${basedir}/../ant.properties"/>
  @@ -39,24 +39,52 @@
       <target name="main" depends="jar" description="Build the project"/>
       <target name="rebuild" depends="clean,main" description="Rebuild the project"/>
   
  -    <target name="context">
  +    <target name="dependencies" 
depends="check-framework,check-i18n,check-configuration"/>
  +
  +    <target name="flags">
  +        <available property="framework.present"
  +               classname="org.apache.avalon.framework.Version"
  +               classpathref="project.class.path" />
  +        <available property="configuration.present"
  +               classname="org.apache.excalibur.configuration.ConfigurationUtil"
  +               classpathref="project.class.path" />
  +        <available property="i18n.present"
  +               classname="org.apache.avalon.excalibur.i18n.Resources"
  +               classpathref="project.class.path" />
  +    </target>
  +
  +    <target name="check-framework" depends="flags" unless="framework.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${avalon-framework.id}/jars/${avalon-framework.name}"
  +             dest="${local.repository}/${avalon-framework.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +    </target>
  +
  +    <target name="check-configuration" depends="flags" 
unless="configuration.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-configuration.id}/jars/${excalibur-configuration.name}"
  +             dest="${local.repository}/${excalibur-configuration.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +    </target>
  +
  +    <target name="check-i18n" depends="flags" unless="i18n.present">
  +      <mkdir dir="${local.repository}"/>
  +     <get 
src="${remote.repository}/${excalibur-i18n.id}/jars/${excalibur-i18n.name}"
  +             dest="${local.repository}/${excalibur-i18n.name}"
  +             verbose="true"
  +             usetimestamp="true"/>
  +    </target>
  +
  +    <target name="context" depends="dependencies">
         <uptodate property="uptodate" targetfile="${build.lib}/${jar.name}">
           <srcfiles dir="src">
  -          <include name="**/*.*"/>
  +          <include name="**/*.*"/>   
           </srcfiles>
         </uptodate>
       </target>
   
  -    <target name="dependencies" description="Check dependencies" 
unless="skip.dependencies"/>
  -
  -    <target name="dependencies-test" depends="dist-jar, dependencies"
  -        description="Check unit test dependencies" unless="skip.dependencies">
  -        <!-- Need the jar to prevent recursive deps. -->
  -        <!--
  -        <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkJUnit"/>
  -        -->
  -    </target>
  -
       <!-- Compiles the source code -->
       <target name="compile" depends="context,dependencies" description="Compiles the 
source code" unless="uptodate">
   
  @@ -113,6 +141,11 @@
   
       </target>
   
  +    <target name="install" depends="jar">
  +      <mkdir dir="${local.repository}"/>
  +      <copy toDir="${local.repository}" file="${build.dir}/lib/${jar.name}"/>
  +    </target> 
  +
       <!-- Creates all the Javadocs -->
       <target name="javadocs" depends="compile" description="Generates the javadocs" 
unless="skip.javadocs">
   
  @@ -139,7 +172,7 @@
       </target>
   
       <!-- Compiles the unit test source code -->
  -    <target name="compile-test" depends="compile, dependencies-test" 
description="Compiles the source code">
  +    <target name="compile-test" depends="compile" description="Compiles the source 
code">
           <mkdir dir="${build.testsrc}"/>
   
           <!-- Copy over all of the tests applying test filters -->
  
  
  
  1.7       +18 -16    avalon-sandbox/meta/default.properties
  
  Index: default.properties
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/meta/default.properties,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- default.properties        7 Feb 2003 23:08:56 -0000       1.6
  +++ default.properties        12 Feb 2003 16:28:21 -0000      1.7
  @@ -13,31 +13,33 @@
   year=2000-2003
   
   lib.dir = lib
  +remote.repository = http://www.osm.net/repository
  +local.repository = ../lib
   
   # --------------------------------------------------
   #                REQUIRED LIBRARIES
   # --------------------------------------------------
   
   # ----- Avalon Framework, version 4.1 or later -----
  -avalon-framework.home=${basedir}/../../avalon
  -avalon-framework.lib=${avalon-framework.home}/target/lib
  -avalon-framework.jar=${avalon-framework.lib}/avalon-framework.jar
  +avalon-framework.id = avalon-framework
  +avalon-framework.version = 4.1.4
  +avalon-framework.name = ${avalon-framework.id}-${avalon-framework.version}.jar
  +avalon-framework.jar=${local.repository}/${avalon-framework.name}
  +
  +# ----- Excalibur i18n, 1.0 -----
  +excalibur-i18n.id = excalibur-i18n
  +excalibur-i18n.version = 1.0
  +excalibur-i18n.name = ${excalibur-i18n.id}-${excalibur-i18n.version}.jar
  +excalibur-i18n.jar=${local.repository}/${excalibur-i18n.name}
  +
  +# ----- Excalibur Configuration, version 1.0 -----
  +excalibur-configuration.id = excalibur-configuration
  +excalibur-configuration.version = 1.0
  +excalibur-configuration.name = 
${excalibur-configuration.id}-${excalibur-configuration.version}.jar
  +excalibur-configuration.jar=${local.repository}/${excalibur-configuration.name}
   
   # ----- Avalon Sandbox -----
   avalon-sandbox.home=${basedir}/..
  -
  -# ----- Excalibur -----
  -excalibur.home=${basedir}/../../avalon-excalibur
  -
  -# ----- Excalibur i18n, version 1.1 or later -----
  -excalibur-i18n.home=${excalibur.home}/i18n
  -excalibur-i18n.lib=${excalibur-i18n.home}/build/lib
  -excalibur-i18n.jar=${excalibur-i18n.lib}/excalibur-i18n-1.0.jar
  -
  -# ----- Excalibur Configuration -----
  -excalibur-configuration.home=${excalibur.home}/configuration
  -excalibur-configuration.lib=${excalibur-configuration.home}/build/lib
  
-excalibur-configuration.jar=${excalibur-configuration.lib}/excalibur-configuration-1.0.jar
   
   # ----- QDOX -----
   qdox.jar=${lib.dir}/qdox-1.1.jar
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to