Merge branch 'JWS-29' into JABAWS_Release_2_0
[jabaws.git] / build.xml
index 884ee5e..426e3ca 100644 (file)
--- a/build.xml
+++ b/build.xml
        <!-- dependencies on other compbio projects  -->\r
        <property name="compbio-annotation" value="compbio-annotations-1.0.jar"/>\r
        <property name="compbio-util" value="compbio-util-1.4.jar"/>\r
+       <property name="compbio-ga" value="compbio-ga-1.0.jar"/>\r
        \r
        <!-- products -->\r
        <property name="jaba_version" value="2.0"/>\r
        <property name="datamodel" value="${distdir}/datamodel-${jaba_version}.jar"/>\r
        <property name="datamodel-src" value="${distdir}/datamodel-src-${jaba_version}.jar"/>\r
        <property name="min-jaba-client" value="${distdir}/min-jaba-client-${jaba_version}.jar"/>\r
+       <property name="jaba-client-src" value="${distdir}/jaba-client-src-${jaba_version}.jar"/>\r
+       \r
        <property name="aacon-ws-client" value="${distdir}/aacon-ws-client.jar"/>\r
        <property name="full-jaba-client" value="${distdir}/full-jaba-client-${jaba_version}.jar"/>\r
        <property name="jaba-source-jar" value="${distdir}/jabaws-src-${jaba_version}.jar"/>\r
                </jar>\r
        </target>\r
 \r
-\r
+       <target name="jaba-client-src-jar" description="Pack metadata, data model, WS interfaces, a simple ws client class" depends="datamodel-source-jar">\r
+               <echo>Jar file: JABAWS client source</echo>\r
+               <delete file="${jaba-client-src}">\r
+               </delete>\r
+               <jar jarfile="${jaba-client-src}">\r
+                       <zipgroupfileset  excludes="META-INF/*.MF" file="${datamodel-src}"/>\r
+                               <fileset dir="${basedir}/webservices">\r
+                                       <!-- This will include JAXWS artifacts. Alternatively they can be generated on the fly. -->\r
+                                       <include name="compbio/data/msa/**"/>\r
+                                       <exclude name="compbio/ws/client/ServicesUtil**"/>\r
+                                       <exclude name="compbio/ws/client/AAConClient**"/>\r
+                                       <include name="compbio/ws/client/**"/>\r
+                               </fileset>\r
+                               <manifest>\r
+                                       <attribute name="Built-By" value="${author}" />\r
+                                       <attribute name="Implementation-Title" value="${product} Client Source Code" />\r
+                                       <attribute name="Implementation-Vendor" value="${author}" />\r
+                                       <attribute name="Implementation-URL" value="${project.url}" />\r
+                               </manifest>\r
+                       </jar>\r
+       </target>\r
+       \r
        <target name="minimal-jaba-client-jar" description="Pack metadata, data model, WS interfaces, a simple ws client class" depends="compile, datamodel-jar">\r
                <echo>Jar file: Minimal WS client jar</echo>\r
                <delete file="${basedir}/${min-jaba-client}">\r
                <echo>Packing binaries, and configuration files</echo>\r
                <zip destfile="${full-jaba-client-pack}" >\r
                        <zipgroupfileset file="${binaries}" />\r
-                       <zipfileset dir="conf" prefix="conf">\r
+                       <zipfileset dir="conf" prefix="conf" >\r
                                <exclude name="**/temp/**"/>\r
                        </zipfileset>\r
                        <fileset file="${full-jaba-client}" />\r
                </zip>\r
        </target>\r
 \r
-\r
+       \r
        <target name="full-jaba-jar" description="Pack datamodel, engine, runners, configuration, binaries and webservices" depends="compile">\r
                <echo>Jar file: Full WS client jar</echo>\r
                <delete file="${full-jaba-client}">\r
        </target>\r
 \r
        <target name="clearStatDB" description="Remove all records from statistics database">\r
-                <java classname="compbio.stat.collector.StatDB" fork="true" failonerror="true" classpath="${classes}">\r
+                <echo>Cleaning Statistics database</echo>\r
+                <java classname="compbio.stat.collector.StatDB" fork="false" failonerror="true" classpath="${classes}">\r
                    <classpath refid="project.classpath" />\r
             </java>\r
        </target>\r
        </target>\r
 -->\r
 \r
-       <target name="jaba-no-binaries" description="Prepare JABAWS war file without native binaries" depends="full-jaba-jar">\r
+       <target name="jaba-no-binaries" description="Prepare JABAWS war file without native binaries" depends="full-jaba-jar,  clearStatDB">\r
                <echo>Preparing a war file without binaries</echo>\r
                <delete file="${jaba-no-binaries}">\r
                </delete>\r
                                <include name="lib/*"/>\r
                        </zipfileset>\r
                        <zipfileset dir="${basedir}/ExecutionStatistic" prefix="ExecutionStatistic" />\r
+                       <zipfileset dir="${basedir}/statpages" prefix="statpages" />\r
                        <zipfileset dir="${basedir}/jobsout" prefix="jobsout" excludes="**/*"/>\r
-                       <zipfileset dir="${basedir}/conf" prefix="conf" excludes="**/log4j.properties*"/>\r
+                       <zipfileset dir="conf" prefix="conf" >\r
+                               <exclude name="**/temp/**"/>\r
+                               <exclude name="**/log4j.properties*"/>\r
+                       </zipfileset>\r
                        <!-- Add JABAWS web site apart from the binary archive -->\r
                        <zipfileset dir="${basedir}/website" excludes="archive/**, devel*.html, tests/**, template.html"/>\r
                        <zipfileset dir="." includes="${full-jaba-client}" fullpath="WEB-INF/lib/jaba-client.jar"/>\r
                        <!-- Put a copy of log4j configuration file where it can be used  -->\r
                        <zipfileset dir="conf" includes="log4j.properties" prefix="WEB-INF/classes"/>\r
-                       <!-- This is runtime dependency must be supplied by the container -->\r
-                       <!-- zipfileset dir="${web.lib.path}" includes="servlet-api.jar" prefix="WEB-INF/lib" / -->\r
                </zip>\r
        </target>\r
 \r
  \r
        <target name="build-all" description="Build-all the distributives"\r
                depends="full-jaba-client, minimal-jaba-client-jar, jaba-no-binaries,\r
-                jaba-complete, datamodel-jar, datamodel-source-jar, source-jar"/>\r
+                jaba-complete, datamodel-jar, datamodel-source-jar, source-jar, jaba-client-src-jar"/>\r
 \r
        <!-- This task does not really depends on compile, but it is better to make sure that the code is sound -->\r
        <target name="archive-project" description="Pack everything in the project for those who do not have access to SVN" depends="compile">\r