avalon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Anton Tagunov <atagu...@mail.cnt.ru>
Subject [Patch] #8
Date Mon, 26 May 2003 07:13:07 GMT
Hello, Berin! Hello, Developers!

This patch introduces fortress meta descriptors generation into
  * datasource
  * monitor
  * store
  * xmlutil

It works with all except for Store.
There are two issues with Store:

  a) util/dag in Fortress probably needs a bit more work:
     Berin, try applying the patch on Store to your local
     copy and see what happens: instead of a CyclicDependencyException
     we currently get a StackOverflow

  b) even after Fortress is fixed to throw a CyclicDependencyException
     it won't be possible to generate Fortress meta descriptors for
     Store:

     MRUMemoryStore
     
         implements o.a.e.store.Store;

     it also looks up

         Store.PersistentStore

     which I understand should be another component
     also implementing o.a.e.store.Store (with a different hint).

     As we know, such granularity of dependency support is
     planned only for future development of Fortress.

     What shall we do?
     Store won't be released tomorrow, but still?

WBR, Anton

So, here goes [Patch] #8
that should probably be applied except for the part on Store.
===============

diff -ru avalon-excalibur.0/datasource/build.xml avalon-excalibur/datasource/build.xml
--- avalon-excalibur.0/datasource/build.xml     2003-05-21 10:59:32.000000000 +0400
+++ avalon-excalibur/datasource/build.xml       2003-05-25 13:22:16.000000000 +0400
@@ -25,6 +25,8 @@
         <pathelement location="${comons-collections.jar}"/>
         <pathelement location="${util.concurrent.jar}"/>
         <pathelement location="${excalibur-i18n.jar}"/>
+        <pathelement location="${avalon-fortress-tools.jar}"/>
+        <pathelement location="${qdox.jar}"/>
         <pathelement path="${java.class.path}"/>
     </path>
 
@@ -56,6 +58,7 @@
         <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkInstrument"/>
         <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkPool"/>
         <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkI18n"/>
+        <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkFortressTools"/>
     </target>
 
     <target name="dependencies-test" depends="dist-jar, dependencies"
@@ -121,6 +124,16 @@
                 unless="j2ee.present"/>
         </javac>
 
+        <!-- generate fortress meta descriptors -->
+        <taskdef name="fortress-collect-meta"
+            classname="org.apache.avalon.fortress.tools.ComponentMetaInfoCollector">
+            <classpath refid="project.class.path"/>
+        </taskdef>
+
+        <fortress-collect-meta destdir="${build.classes}">
+            <fileset dir="${java.dir}"/>
+        </fortress-collect-meta>
+
         <!-- copy resources to same location as .class files -->
         <copy todir="${build.classes}">
             <fileset dir="${java.dir}">
diff -ru avalon-excalibur.0/datasource/default.properties avalon-excalibur/datasource/default.properties
--- avalon-excalibur.0/datasource/default.properties    2003-05-21 10:59:32.000000000 +0400
+++ avalon-excalibur/datasource/default.properties      2003-05-25 12:29:00.000000000 +0400
@@ -41,6 +41,15 @@
 excalibur-i18n.lib=${excalibur-i18n.home}
 excalibur-i18n.jar=${excalibur-i18n.lib}/excalibur-i18n-1.0.jar
 
+# ----- Avalon Fortress, version 1.0 or later  -----
+avalon-fortress.home=${basedir}/../fortress
+avalon-fortress.lib=${avalon-fortress.home}/dist
+avalon-fortress-tools.jar=${avalon-fortress.lib}/excalibur-fortress-tools-1.0.jar
+
+# ----- QDox Jar ----
+qdox.jar=${basedir}/../lib/qdox-1.1.jar
+
+
 
 # ----- Commons Collections, version 2.1 or later -----
 comons-collections.jar=../lib/commons-collections-2.1.jar
diff -ru avalon-excalibur.0/depchecker.xml avalon-excalibur/depchecker.xml
--- avalon-excalibur.0/depchecker.xml   2003-04-05 23:39:34.000000000 +0400
+++ avalon-excalibur/depchecker.xml     2003-05-25 12:23:52.000000000 +0400
@@ -265,6 +265,27 @@
         </ant>
     </target>
 
+    <!-- Fortress Tools -->
+    <target name="checkFortressTools">
+        <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkRequiredFile">
+            <property name="proj.jar.name" value="excalibur-fortress-tools-1.0.jar"/>
+            <property name="path" value="${avalon-fortress-tools.jar}"/>
+            <property name="proj.home" value="${basedir}/../fortress"/>
+        </ant>
+        <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkRequiredClass">
+            <property name="proj.jar.name" value="qdox.jar"/>
+            <property name="class" value="com.thoughtworks.qdox.ant.AbstractQdoxTask"/>
+            <property name="classpath" value="${cp}"/>
+            <property name="remedy" value="1) Download and unpack qdox from ${nl}
+           | http://qdox.codehaus.org/ ${nl}
+           |   2) Copy the project's ant.properties.sample to ant.properties ${nl}
+           |   3) In ant.properties, redefine the qdox.jar property ${nl}
+           |      to point to the path of qdox.jar in your ${nl}
+           |      downloaded distribution."/>
+        </ant>
+
+    </target>
+
     <!-- Altrmi -->
     <target name="checkAltrmiCommon">
         <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkRequiredFile">
diff -ru avalon-excalibur.0/libraries.properties avalon-excalibur/libraries.properties
--- avalon-excalibur.0/libraries.properties     2003-05-21 10:59:22.000000000 +0400
+++ avalon-excalibur/libraries.properties       2003-05-25 12:08:58.000000000 +0400
@@ -119,6 +119,11 @@
 #                BUILD ARTIFACTS
 # --------------------------------------------------
 
+# ----- fortress ------
+avalon-fortress.home=${basedir}/../fortress
+avalon-fortress.lib=${avalon-fortress.home}/dist
+avalon-fortress-tools.jar=${avalon-fortress.lib}/excalibur-fortress-tools-1.0.jar
+
 # ----- compatibility -------------
 excalibur-compatibility.home=${basedir}/../compatibility
 excalibur-compatibility.lib=${excalibur-compatibility.home}/build/lib
diff -ru avalon-excalibur.0/monitor/build.xml avalon-excalibur/monitor/build.xml
--- avalon-excalibur.0/monitor/build.xml        2003-05-21 11:00:24.000000000 +0400
+++ avalon-excalibur/monitor/build.xml  2003-05-25 13:22:02.000000000 +0400
@@ -19,6 +19,8 @@
         <pathelement location="${checkstyle.jar}"/>
         <pathelement location="${excalibur-logger.jar}"/>
         <pathelement location="${excalibur-sourceresolve.jar}"/>
+        <pathelement location="${avalon-fortress-tools.jar}"/>
+        <pathelement location="${qdox.jar}"/>
         <pathelement path="${java.class.path}"/>
     </path>
 
@@ -53,6 +55,7 @@
         <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkLogkit"/>
         <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkFramework"/>
         <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkSourceResolve"/>
+        <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkFortressTools"/>
    </target>
 
     <target name="dependencies-test" depends="dist-jar, dependencies"
@@ -85,6 +88,16 @@
             <include name="**/*.java"/>
         </javac>
 
+        <!-- generate fortress meta descriptors -->
+        <taskdef name="fortress-collect-meta"
+            classname="org.apache.avalon.fortress.tools.ComponentMetaInfoCollector">
+            <classpath refid="project.class.path"/>
+        </taskdef>
+
+        <fortress-collect-meta destdir="${build.classes}">
+            <fileset dir="${java.dir}"/>
+        </fortress-collect-meta>
+
         <!-- copy resources to same location as .class files -->
         <copy todir="${build.classes}">
             <fileset dir="${java.dir}">
diff -ru avalon-excalibur.0/monitor/default.properties avalon-excalibur/monitor/default.properties
--- avalon-excalibur.0/monitor/default.properties       2003-05-21 11:00:26.000000000 +0400
+++ avalon-excalibur/monitor/default.properties 2003-05-25 13:16:08.000000000 +0400
@@ -74,6 +74,14 @@
 excalibur-i18n.lib=${excalibur-i18n.home}
 excalibur-i18n.jar=${excalibur-i18n.lib}/excalibur-i18n-1.0.jar
 
+# ----- Avalon Fortress, version 1.0 or later  -----
+avalon-fortress.home=${basedir}/../fortress
+avalon-fortress.lib=${avalon-fortress.home}/dist
+avalon-fortress-tools.jar=${avalon-fortress.lib}/excalibur-fortress-tools-1.0.jar
+
+# ----- QDox Jar ----
+qdox.jar=${basedir}/../lib/qdox-1.1.jar
+
 # ----- Commons Collections -----
 commons-collections.home=${basedir}/../lib
 commons-collections.lib=${commons-collections.home}
diff -ru avalon-excalibur.0/store/build.xml avalon-excalibur/store/build.xml
--- avalon-excalibur.0/store/build.xml  2003-05-21 11:00:46.000000000 +0400
+++ avalon-excalibur/store/build.xml    2003-05-26 10:49:48.000000000 +0400
@@ -15,6 +15,8 @@
         <pathelement location="${build.classes}"/>
         <pathelement location="${avalon-framework.jar}"/>
         <pathelement location="${checkstyle.jar}"/>
+        <pathelement location="${avalon-fortress-tools.jar}"/>
+        <pathelement location="${qdox.jar}"/>
         <pathelement location="${jisp.jar}"/>
         <pathelement path="${java.class.path}"/>
     </path>
@@ -39,6 +41,7 @@
     <target name="dependencies" description="Check dependencies" unless="skip.dependencies">
         <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkCommon"/>
         <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkFramework"/>
+        <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkFortressTools"/>
     </target>
 
     <target name="dependencies-test" depends="dist-jar, dependencies"
@@ -65,6 +68,16 @@
             <include name="**/*.java"/>
         </javac>
 
+        <!-- generate fortress meta descriptors -->
+        <taskdef name="fortress-collect-meta"
+            classname="org.apache.avalon.fortress.tools.ComponentMetaInfoCollector">
+            <classpath refid="project.class.path"/>
+        </taskdef>
+
+        <fortress-collect-meta destdir="${build.classes}">
+            <fileset dir="${java.dir}"/>
+        </fortress-collect-meta>
+
         <!-- copy resources to same location as .class files -->
         <copy todir="${build.classes}">
             <fileset dir="${java.dir}">
diff -ru avalon-excalibur.0/xmlutil/build.xml avalon-excalibur/xmlutil/build.xml
--- avalon-excalibur.0/xmlutil/build.xml        2003-05-08 21:11:20.000000000 +0400
+++ avalon-excalibur/xmlutil/build.xml  2003-05-25 13:27:32.000000000 +0400
@@ -30,6 +30,8 @@
         <pathelement location="${jaxen.jar}"/>
         <pathelement location="${resolver.jar}"/>
         <pathelement location="${jtidy.jar}"/>
+        <pathelement location="${avalon-fortress-tools.jar}"/>
+        <pathelement location="${qdox.jar}"/>
         <pathelement path="${java.class.path}"/>
     </path>
 
@@ -66,6 +68,7 @@
         <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkPool"/>
         <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkSourceResolve"/>
         <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkStore"/>
+        <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkFortressTools"/>
         <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkRequiredFile">
             <property name="proj.jar.name" value="xerces.jar"/>
             <property name="path" value="${xerces.jar}"/>
@@ -106,6 +109,16 @@
             <exclude name="**/test/**"/>
         </javac>
 
+        <!-- generate fortress meta descriptors -->
+        <taskdef name="fortress-collect-meta"
+            classname="org.apache.avalon.fortress.tools.ComponentMetaInfoCollector">
+            <classpath refid="project.class.path"/>
+        </taskdef>
+
+        <fortress-collect-meta destdir="${build.classes}">
+            <fileset dir="${java.dir}"/>
+        </fortress-collect-meta>
+
         <!-- copy resources to same location as .class files -->
         <copy todir="${build.classes}">
             <fileset dir="${java.dir}">
diff -ru avalon-excalibur.0/xmlutil/default.properties avalon-excalibur/xmlutil/default.properties
--- avalon-excalibur.0/xmlutil/default.properties       2003-05-08 21:11:20.000000000 +0400
+++ avalon-excalibur/xmlutil/default.properties 2003-05-25 13:23:18.000000000 +0400
@@ -61,6 +61,14 @@
 excalibur-store.lib=${excalibur-store.home}
 excalibur-store.jar=${excalibur-store.lib}/excalibur-store-1.0.jar
 
+# ----- Avalon Fortress, version 1.0 or later  -----
+avalon-fortress.home=${basedir}/../fortress
+avalon-fortress.lib=${avalon-fortress.home}/dist
+avalon-fortress-tools.jar=${avalon-fortress.lib}/excalibur-fortress-tools-1.0.jar
+
+# ----- QDox Jar ----
+qdox.jar=${basedir}/../lib/qdox-1.1.jar
+
 # ----- Commons collections, version 2.1 or later -----
 commons-collections.jar=${basedir}/../lib/commons-collections-2.1.jar


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org
For additional commands, e-mail: dev-help@avalon.apache.org


Mime
View raw message