--- /dev/null
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project name="SIMAN Web Services Server web applcation" default="build-war" >
+
+ <property environment="env" />
+
+ <property file="build.properties" description="set the build parameters" />
+
+ <property file="../${siman-common.project.name}/build.properties" description="set the build parameters" />
+ <property file="../${splat.project.name}/build.properties" description="set the build parameters" />
+
+ <property name="time.simple.pattern" value="dd/MM/yyyy" />
+ <tstamp>
+ <format property="datesimple" pattern="${time.simple.pattern}" />
+ </tstamp>
+
+ <property name="time.pattern" value="hh:mm:ss" />
+ <tstamp>
+ <format property="time" pattern="${time.pattern}" />
+ </tstamp>
+
+
+ <!-- ================================================= -->
+ <!-- siman-common: Build Siman-Common project -->
+ <!-- ================================================= -->
+<!--
+ <target name="siman-common" description="Builds Siman-Common project">
+ <ant dir="../${siman-common.project.name}" />
+ </target>
+-->
+ <!-- ================================================= -->
+ <!-- copy-config: Copy parametrized config files -->
+ <!-- ================================================= -->
+ <macrodef name="copy-config">
+ <!-- Parameter "mode" can be equal to "debug" or "release" -->
+ <attribute name="mode" />
+ <sequential>
+ <echo message="Generating configuration in @{mode} mode" />
+ <!-- Copy files from config source directory according to the given mode -->
+ <copy todir="${basedir}/${config.@{mode}.dir}" overwrite="true">
+ <fileset dir="${config.src.dir}/templates">
+ </fileset>
+ <!-- Transform the files from templates substituting properties values -->
+ <filterset>
+ <filter token="datesimple" value="${datesimple}" />
+ <filter token="time" value="${time}" />
+ <!-- Get properties to substitute according to the given mode -->
+ <filtersfile file="${config.src.dir}/@{mode}.properties" />
+ <!-- Substitute the complete config source directory path value in files -->
+ <filter token="config.src.dir" value="${basedir}${file.separator}${config.src.dir}${file.separator}templates" />
+ </filterset>
+ </copy>
+ </sequential>
+ </macrodef>
+
+ <!-- ================================================= -->
+ <!-- debug-config: Generate parametrized config files -->
+ <!-- ================================================= -->
+ <target name="debug-config" description="Generate parametrized debug config files">
+ <copy-config mode="debug" />
+ </target>
+
+ <!-- =================================================== -->
+ <!-- release-config: Generate parametrized config files -->
+ <!-- =================================================== -->
+ <target name="release-config" description="Generate parametrized release config files">
+ <copy-config mode="release" />
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- build-dist : Create the war file -->
+ <!-- ===================================================================== -->
+ <target name="build-war" depends="clean, release-config" description="Builds the WAR distribution">
+ <echo message="build ${webapp.name}.war" />
+
+ <mkdir dir="${siman-ws.dist.dir}" />
+ <war destfile="${siman-ws.dist.dir}/${webapp.name}.war" webxml="${basedir}/${siman-ws.content.dir}/WEB-INF/web.xml">
+ <fileset dir="${siman-ws.content.dir}" />
+ <!-- Copy all sources except those which should be generated -->
+ <classes dir="${siman-ws.bin.dir}/classes">
+ <present present="srconly" targetdir="${config.release.dir}" />
+ </classes>
+ <!-- Copy generated sources -->
+ <zipfileset dir="${config.release.dir}" prefix="WEB-INF/classes" />
+ <manifest>
+ <attribute name="Built-By" value="${app.author}" />
+ <attribute name="Version" value="${app.version}" />
+ <attribute name="Built-Date" value="${datesimple}" />
+ </manifest>
+ <lib dir="${basedir}/../${siman-common.project.name}/${siman-common.dist.dir}" includes="**/*.jar" />
+ <lib dir="${basedir}/../${siman-common.project.name}/${siman-common.lib.dir}" includes="**/*.jar" />
+ <lib dir="${basedir}/../${splat.project.name}/${splat.dist.dir}" includes="**/*.jar" />
+ <lib dir="${basedir}/../${splat.project.name}/${splat.lib.dir}" includes="**/*.jar" />
+ </war>
+ </target>
+
+ <!-- ================================================= -->
+ <!-- clean: Clean the dist directory -->
+ <!-- ================================================= -->
+ <target name="clean" description="clean the build directory">
+ <echo message="deleting files in ${siman-ws.dist.dir}" />
+ <delete includeemptydirs="true" failonerror="false">
+ <fileset dir="${siman-ws.dist.dir}" includes="**/*" />
+ </delete>
+ </target>
+</project>