You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avalon.apache.org by Anton Tagunov <at...@mail.cnt.ru> on 2003/05/26 09:13:07 UTC
[Patch] #8
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