1 | <project basedir="." default="jar.all"> |
---|
2 | <!--Auto generated ant build file--> |
---|
3 | <property environment="env"/> |
---|
4 | <property name="axis2.home" value="${env.AXIS2_HOME}"/> |
---|
5 | <property name="project.base.dir" value="."/> |
---|
6 | <property name="maven.class.path" value=""/> |
---|
7 | <property name="name" value="DiscoveryService"/> |
---|
8 | <property name="src" value="${project.base.dir}/src"/> |
---|
9 | <property name="test" value="${project.base.dir}/test"/> |
---|
10 | <property name="build" value="${project.base.dir}/build"/> |
---|
11 | <property name="classes" value="${build}/classes"/> |
---|
12 | <property name="lib" value="${build}/lib"/> |
---|
13 | <property name="resources" value="${project.base.dir}/resources"/> |
---|
14 | <property name="xbeans.packaged.jar.name" value="XBeans-packaged.jar"/> |
---|
15 | <property name="jars.ok" value=""/> |
---|
16 | <property name="src.nongen" value="../src"/> |
---|
17 | <property name="res.nongen" value="../resources"/> |
---|
18 | <path id="axis2.class.path"> |
---|
19 | <pathelement path="${java.class.path}"/> |
---|
20 | <pathelement path="${maven.class.path}"/> |
---|
21 | <fileset dir="${axis2.home}"> |
---|
22 | <include name="lib/*.jar"/> |
---|
23 | </fileset> |
---|
24 | <fileset dir="${resources}"> |
---|
25 | <include name="xmlrpc-1.2-patched.jar"/> |
---|
26 | </fileset> |
---|
27 | </path> |
---|
28 | <target name="init"> |
---|
29 | <mkdir dir="${build}"/> |
---|
30 | <mkdir dir="${classes}"/> |
---|
31 | <mkdir dir="${lib}"/> |
---|
32 | <mkdir dir="${test}"/> |
---|
33 | </target> |
---|
34 | <target name="jar.xbeans"> |
---|
35 | <jar basedir="${resources}" destfile="${lib}/${xbeans.packaged.jar.name}" excludes="**/services.xml, **/*.xsd"/> |
---|
36 | </target> |
---|
37 | <target name="pre.compile.test" depends="init, jar.xbeans"> |
---|
38 | <!--Test the classpath for the availability of necesary classes--> |
---|
39 | <available classname="org.apache.xmlbeans.XmlObject" property="xbeans.available" classpathref="axis2.class.path"/> |
---|
40 | <available classname="javax.xml.stream.XMLStreamReader" property="stax.available" classpathref="axis2.class.path"/> |
---|
41 | <available classname="org.apache.axis2.engine.AxisEngine" property="axis2.available" classpathref="axis2.class.path"/> |
---|
42 | <condition property="jars.ok"> |
---|
43 | <and> |
---|
44 | <isset property="xbeans.available"/> |
---|
45 | <isset property="stax.available"/> |
---|
46 | <isset property="axis2.available"/> |
---|
47 | </and> |
---|
48 | </condition> |
---|
49 | <!--Print out the availabilities--> |
---|
50 | <echo message="XmlBeans Availability = ${xbeans.available}"/> |
---|
51 | <echo message="Stax Availability= ${stax.available}"/> |
---|
52 | <echo message="Axis2 Availability= ${axis2.available}"/> |
---|
53 | </target> |
---|
54 | <target name="compile.src" depends="pre.compile.test,copynongen" if="jars.ok"> |
---|
55 | <!-- Copy non-auto-generated src into same source tree for compilation --> |
---|
56 | <javac debug="on" destdir="${classes}" srcdir="${src}"> |
---|
57 | <classpath location="${lib}/${xbeans.packaged.jar.name}"/> |
---|
58 | <classpath refid="axis2.class.path"/> |
---|
59 | </javac> |
---|
60 | </target> |
---|
61 | <target name="compile.test" depends="compile.src" if="jars.ok"> |
---|
62 | <javac debug="on" destdir="${classes}"> |
---|
63 | <src path="${test}"/> |
---|
64 | <classpath location="${lib}/${xbeans.packaged.jar.name}"/> |
---|
65 | <classpath refid="axis2.class.path"/> |
---|
66 | </javac> |
---|
67 | </target> |
---|
68 | <target name="echo.classpath.problem" depends="pre.compile.test" unless="jars.ok"> |
---|
69 | <echo message="The class path is not set right! Please make sure the following classes are in the classpath 1. XmlBeans 2. Stax 3. Axis2 "/> |
---|
70 | </target> |
---|
71 | <target name="jar.all" depends="jar.server, jar.client"/> |
---|
72 | <target name="jar.server" depends="compile.src,echo.classpath.problem" if="jars.ok"> |
---|
73 | <copy toDir="${classes}/META-INF"> |
---|
74 | <fileset dir="${resources}"> |
---|
75 | <include name="*.xml"/> |
---|
76 | <include name="*.wsdl"/> |
---|
77 | <include name="*.xsd"/> |
---|
78 | <exclude name="**/schemaorg_apache_xmlbean/**"/> |
---|
79 | </fileset> |
---|
80 | </copy> |
---|
81 | <copy file="${lib}/${xbeans.packaged.jar.name}" toDir="${classes}/lib"/> |
---|
82 | <copy file="${resources}/DiscoveryService.properties" toDir="${classes}"/> |
---|
83 | <copy file="${resources}/DiscoveryService.fullTextSearch.xq" toDir="${classes}"/> |
---|
84 | <copy file="${resources}/xmlrpc-1.2-patched.jar" toDir="${classes}/lib"/> |
---|
85 | <jar destfile="${lib}/${name}.aar"> |
---|
86 | <fileset excludes="**/Test.class" dir="${classes}"/> |
---|
87 | </jar> |
---|
88 | </target> |
---|
89 | <target name="jar.client" if="jars.ok" depends="compile.test"> |
---|
90 | <jar destfile="${lib}/${name}-test-client.jar"> |
---|
91 | <fileset dir="${classes}"> |
---|
92 | <exclude name="**/META-INF/*.*"/> |
---|
93 | <exclude name="**/lib/*.*"/> |
---|
94 | <exclude name="**/*MessageReceiver.class"/> |
---|
95 | <exclude name="**/*Skeleton.class"/> |
---|
96 | </fileset> |
---|
97 | <fileset dir="${resources}"> |
---|
98 | <exclude name="**/*.wsdl"/> |
---|
99 | <exclude name="**/*.xsd"/> |
---|
100 | <exclude name="**/*.xml"/> |
---|
101 | </fileset> |
---|
102 | </jar> |
---|
103 | </target> |
---|
104 | <target depends="jar.server" name="make.repo" if="jars.ok"> |
---|
105 | <mkdir dir="${build}/repo/"/> |
---|
106 | <mkdir dir="${build}/repo/services"/> |
---|
107 | <copy file="${build}/lib/${name}.aar" toDir="${build}/repo/services/"/> |
---|
108 | </target> |
---|
109 | <target depends="make.repo" name="start.server" if="jars.ok"> |
---|
110 | <java classname="org.apache.axis2.transport.http.SimpleHTTPServer" fork="true"> |
---|
111 | <arg value="${build}/repo"/> |
---|
112 | <classpath refid="axis2.class.path"/> |
---|
113 | </java> |
---|
114 | </target> |
---|
115 | <target if="jars.ok" name="run.test" depends="jar.client"> |
---|
116 | <path id="test.class.path"> |
---|
117 | <pathelement location="${lib}/${name}-test-client.jar"/> |
---|
118 | <path refid="axis2.class.path"/> |
---|
119 | </path> |
---|
120 | <mkdir dir="${build}/test-reports/"/> |
---|
121 | <junit printsummary="yes" haltonfailure="yes"> |
---|
122 | <classpath refid="test.class.path"/> |
---|
123 | <formatter type="plain"/> |
---|
124 | <batchtest fork="yes" toDir="${build}/test-reports/"> |
---|
125 | <fileset dir="${test}"> |
---|
126 | <include name="**/*Test*.java"/> |
---|
127 | </fileset> |
---|
128 | </batchtest> |
---|
129 | </junit> |
---|
130 | </target> |
---|
131 | <target name="clean"> |
---|
132 | <delete dir="${build}"/> |
---|
133 | </target> |
---|
134 | <target name="javadoc" depends="compile.src" description="Create Javadoc API documentation"> |
---|
135 | <mkdir dir="${build}/docs/api"/> |
---|
136 | <javadoc sourcepath="${src}" destdir="${build}/docs/api" packagenames="ndg.*,discoveryserviceapi.*"/> |
---|
137 | </target> |
---|
138 | <target name="copynongen"> |
---|
139 | <!-- Copy non-auto-generated src to source tree --> |
---|
140 | <!-- NB. Overwrites even if files in toDir are newer --> |
---|
141 | <copy toDir="${src}" overwrite="true"> |
---|
142 | <fileset dir="${src.nongen}"> |
---|
143 | <include name="**/*.java"/> |
---|
144 | </fileset> |
---|
145 | </copy> |
---|
146 | <copy toDir="${resources}" overwrite="true"> |
---|
147 | <fileset dir="${res.nongen}"> |
---|
148 | <include name="**/*.*"/> |
---|
149 | </fileset> |
---|
150 | </copy> |
---|
151 | </target> |
---|
152 | </project> |
---|