User: ara_e_w
Date: 02/05/23 15:25:06
Modified: modules Tag: MODULE_REFACTORING_BRANCH modules-common.xml
Log:
Implemented <externalizer/> subtask. It generates (externalizes) a properties file
by looking after some specified tags in code. We use it in core and modules for
generating message bundle files. As an example two classes were modified to contain
@msg:bundle tags. It was tricky for core, because of chicken/egg problem :-)
Revision Changes Path
No revision
No revision
1.1.2.18 +61 -4 xdoclet/modules/Attic/modules-common.xml
Index: modules-common.xml
===================================================================
RCS file: /cvsroot/xdoclet/xdoclet/modules/Attic/modules-common.xml,v
retrieving revision 1.1.2.17
retrieving revision 1.1.2.18
diff -u -w -r1.1.2.17 -r1.1.2.18
--- modules-common.xml 20 May 2002 21:44:15 -0000 1.1.2.17
+++ modules-common.xml 23 May 2002 22:25:06 -0000 1.1.2.18
@@ -17,10 +17,9 @@
<property name="xdoclet-xml.dir" value="${module.classes.dir}/META-INF"/>
<!-- =================================================================== -->
- <!-- Initialises the build. -->
+ <!-- Prepares the build. -->
<!-- =================================================================== -->
- <target name="init">
- <echo>******** Building XDoclet Module '${ant.project.name}' ********</echo>
+ <target name="prepare">
<!-- Define classpath required for generating xml descriptors -->
<path id="module.xml.class.path">
@@ -64,6 +63,21 @@
<uptodate property="module.uptodate" targetfile="${module.jar.file}">
<srcfiles dir="${module.dir}"/>
</uptodate>
+
+ <available classname="xdoclet.modules.externalizer.ExternalizerSubTask"
+ property="externalizer.available"
+ classpathref="module.xml.class.path"
+ />
+
+ </target>
+
+ <!-- =================================================================== -->
+ <!-- Initialises the build. -->
+ <!-- =================================================================== -->
+ <target name="init" depends="prepare">
+
+ <echo>******** Building XDoclet Module '${ant.project.name}' ********</echo>
+
</target>
<!-- =================================================================== -->
@@ -90,6 +104,48 @@
</target>
<!-- =================================================================== -->
+ <!-- Runs externalizer, it generates Messages.properties files for each -->
+ <!-- package. -->
+ <!-- =================================================================== -->
+ <target name="externalizer" depends="prepare"
+ description="Runs externalizer, it generates Messages.properties files for
each package."
+ unless="module.uptodate"
+ >
+
+ <ant target="run-externalizer"/>
+
+ </target>
+
+
+ <!-- =================================================================== -->
+ <!-- Runs externalizer, it generates Messages.properties files for each -->
+ <!-- package. -->
+ <!-- =================================================================== -->
+ <target name="run-externalizer" depends="prepare"
+ description="Runs externalizer, it generates Messages.properties files for
each package."
+ if="externalizer.available"
+ >
+
+ <echo message="Generating message bundle files for module..."/>
+
+ <!-- Define the xdoclet task -->
+ <taskdef name="externalizerdoclet" classname="xdoclet.DocletTask"
+ classpathref="module.xml.class.path"
+ />
+
+ <externalizerdoclet destdir="${module.classes.dir}">
+
+ <fileset dir="${module.src.dir}">
+ <include name="**/*.java" />
+ </fileset>
+
+ <externalizer tagName="msg:bundle" keyParamName="id"
valueParamName="msg"/>
+
+ </externalizerdoclet>
+
+ </target>
+
+ <!-- =================================================================== -->
<!-- Compiles the source code -->
<!-- =================================================================== -->
<target name="compile" depends="beautify" unless="module.uptodate">
@@ -108,7 +164,7 @@
<!-- =================================================================== -->
<!-- Creates the module jar -->
<!-- =================================================================== -->
- <target name="jar" depends="init,xdoclet-xml,compile,docs,copy-src"
unless="module.uptodate">
+ <target name="jar"
depends="init,xdoclet-xml,externalizer,compile,docs,copy-src" unless="module.uptodate">
<jar jarfile="${module.jar.file}">
<fileset dir="${module.classes.dir}">
<include name="**/*.class"/>
@@ -172,6 +228,7 @@
<fileset dir="${module.src.dir}">
<include name="**/*Handler.java" />
<include name="**/*SubTask.java" />
+ <include name="**/*.properties" />
</fileset>
</copy>
</target>
_______________________________________________________________
Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm
_______________________________________________
Xdoclet-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-devel