You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
yacy_search_server/source/de/anomic/soap/build.xml

139 lines
5.2 KiB

<?xml version="1.0"?>
<project name="YACY - SOAP API" default="dist">
<description>
A SOAP API for YaCy
</description>
<property name="addonShortName" value="Soap"/>
<property name="addonVersion" value="0.1"/>
<property name="addonLongName" value="${addonShortName}Addon"/>
<property name="addonArchive" location="${release}/${addonLongName}_${addonVersion}.tgz"/>
<property name="clientStub" location="${release}/SOAP_CLIENT" />
<property name="clientStubSrc" location="${clientStub}/source" />
<property name="clientStubBuild" location="${clientStub}/classes" />
<!-- defining the classpath that should be used for compiling -->
<path id="soap.class.path">
<pathelement location="${build}" />
<!-- libs needed for the yacy thread/object-pools -->
<pathelement location="${lib}/commons-collections.jar" />
<pathelement location="${lib}/commons-pool-1.2.jar" />
<!-- all needed libs -->
<pathelement location="${libx}/axis.jar" />
<pathelement location="${libx}/axis-ant.jar" />
<pathelement location="${libx}/commons-discovery.jar" />
<pathelement location="${libx}/commons-logging.jar" />
<pathelement location="${libx}/jaxrpc.jar" />
<pathelement location="${libx}/saaj.jar" />
<pathelement location="${libx}/wsdl4j.jar" />
<!-- optional libraries needed for soap attachments -->
<pathelement location="${libx}/gnumail.jar" />
<pathelement location="${libx}/activation.jar" />
<pathelement location="${libx}/inetlib.jar" />
</path>
<target name="compile">
<javac srcdir="${src}/de/anomic/soap/"
destdir="${build}"
source="${javacSource}"
target="${javacTarget}"
debug="true"
debuglevel="lines,vars,source"
classpathref="soap.class.path">
</javac>
</target>
<target name="zip" depends="compile">
<tar destfile="${addonArchive}" compression="gzip">
<tarfileset dir="${libx}"
includes="axis.jar,axis-ant.jar,commons-discovery.jar,commons-logging.jar,jaxrpc.jar,saaj.jar,wsdl4j.jar"
prefix="${releaseDir}/libx/"
dirmode="755" mode="644"/>
<tarfileset dir="${src}/de/anomic/soap/"
prefix="${releaseDir}/source/de/anomic/soap/"
dirmode="755" mode="644"/>
<tarfileset dir="${build}/de/anomic/soap/"
prefix="${releaseDir}/classes/de/anomic/soap/"
dirmode="755" mode="644"/>
</tar>
</target>
<target name="copy" depends="compile">
<copy todir="${release}/libx/">
<fileset dir="${libx}" includes="axis.jar,axis-ant.jar,commons-discovery.jar,commons-logging.jar,jaxrpc.jar,saaj.jar,wsdl4j.jar"/>
</copy>
<copy todir="${release}/source/de/anomic/soap/">
<fileset dir="${src}/de/anomic/soap/" includes="**/*"/>
</copy>
<copy todir="${release}/classes/de/anomic/soap/">
<fileset dir="${build}/de/anomic/soap/" includes="**/*"/>
</copy>
</target>
<target name="dist" depends="compile,zip" description="Compile and zip the addon"/>
<target name="genClientStubFiles">
<!-- ensure that the temp directory exists -->
<mkdir dir="${clientStubSrc}"/>
<!-- define the foreach task -->
<taskdef name="foreach" classname="org.apache.axis.tools.ant.foreach.ForeachTask" classpathref="soap.class.path"/>
<!-- loop through the wsdl files -->
<foreach target="genClientStubFileFromWSDL">
<param name="wsdlFileName">
<fileset dir="${src}/de/anomic/soap/services/" includes="*.wsdl"/>
</param>
</foreach>
</target>
<!-- generates client stub classes for a soap service -->
<target name="genClientStubFileFromWSDL" description="Generate YaCy SOAP client stub java files from wsdl">
<!-- define the wasdl2java task -->
<taskdef name="axis-wsdl2java" classname="org.apache.axis.tools.ant.wsdl.Wsdl2javaAntTask" classpathref="soap.class.path"/>
<axis-wsdl2java
output="${clientStubSrc}"
url="file:///${wsdlFileName}" >
<mapping
namespace="http://axis.apache.org/ns/interop"
package="interop" />
</axis-wsdl2java>
</target>
<target name="compileClientStubClasses" depends="genClientStubFiles" description="Compile YaCy SOAP client stube classes">
<mkdir dir="${clientStubBuild}"/>
<javac srcdir="${clientStubSrc}"
destdir="${clientStubBuild}"
source="${javacSource}"
target="${javacTarget}"
debug="true"
debuglevel="lines,vars,source"
classpathref="soap.class.path">
</javac>
</target>
<target name="buildClientStubJar" depends="compileClientStubClasses">
<!-- delete old jar file -->
<delete file="${}/yacySoapClient.jar" />
<!-- copy all source and class files into the jar -->
<jar destfile="${clientStub}/yacySoapClient.jar">
<fileset dir="${clientStubSrc}"/>
<fileset dir="${clientStubBuild}"/>
</jar>
<!-- remove old temp directories -->
<delete dir="${clientStubSrc}"/>
<delete dir="${clientStubBuild}"/>
</target>
</project>