Untitled
unknown
plain_text
8 months ago
112 kB
14
Indexable
<?xml version= "1.0"?>
<!-- ************************************************************ -->
<!-- Appl: -->
<!-- Auth: -->
<!-- Date: -->
<!-- Desc: Application build.xml based on -->
<!-- DealerCONNECT template build.xml -->
<!-- ************************************************************ -->
<!-- NOTE: Properties files -->
<!-- The following build properties files are loaded by this -->
<!-- build.xml file. They are all located in the properties file -->
<!-- directory resolved and assigned to the property ${pf.dir} and -->
<!-- each file read is referred to using the 'pf.<name>' -->
<!-- properties listed below. -->
<!-- In addition, each property read in from from each property -->
<!-- file is prefixed using the property file property name -->
<!-- as a prefix so these values can be traced in this -->
<!-- build.xml and the setting of the main build.xml properties -->
<!-- from these values can be better controlled. -->
<!-- (1) Application properties file: pf.app -->
<!-- (2) User properties file: pf.user -->
<!-- (3) Application dependencies file: pf.appdep -->
<!-- (4) Build counter file: pf.buildinfo -->
<!-- NOTE: Properties -->
<!-- Some properties can be set outside of init, some can't -->
<!-- The locations of these property assignments are mostly -->
<!-- based on where 'ant' allows certain logic required to -->
<!-- establish property values. The 'init' target is a -->
<!-- depdendency of most all targets and will get re-invoked -->
<!-- when modules are called via 'antcall' but not re-invoked -->
<!-- otherwise. -->
<!-- NOTE: How to modify this file -->
<!-- Look for the keyword 'CUSTOMIZE' in the sections below as a -->
<!-- means to quickly locate areas which must be customized for -->
<!-- each application. Most of 'init' sets properties from the -->
<!-- properties files and env vars and should not be changed. -->
<!-- Summary of changes you may need to make: -->
<!-- CUSTOMIZE.class.path.app: -->
<!-- Add in application directories which need to be part -->
<!-- of the CLASSPATH. -->
<!-- CUSTOMIZE.compile.* -->
<!-- Update the dependencies of these top-level targets to -->
<!-- include all the individual module/project targets of -->
<!-- the specified types -->
<!-- CUSTOMIZE.dist.* -->
<!-- You will need to tailor the directories and filesets -->
<!-- specified in these targets to produce the necessary -->
<!-- ear/war/jar/tar packages for your application. -->
<!-- CUSTOMIZE.pkg.* -->
<!-- Same changes as CUSTOMIZE.compile.* -->
<!-- CUSTOMIZE.clean.compile -->
<!-- Review and update this target to make sure that target 'clean' -->
<!-- removes any files produced as part of the build. -->
<!-- CUSTOMIZE.module.targets -->
<!-- Each module in your application should have it's own -->
<!-- dedicated target which may be copied/modifed from the -->
<!-- template targets provided. They should be named -->
<!-- compile.{jarm|webm}.<MODULENAME> and -->
<!-- pkg.{jarm|webm}.<MODULENAME>. If your projects follow -->
<!-- the template layout and builds, your project targets may -->
<!-- call the template 'antcall' targets to build and package -->
<!-- each module type in a generic way. -->
<project default= "all" basedir= "../..">
<description>Build DaimlerChrysler J2EE Application</description>
<property file="build.properties"/>
<!-- These global properties must be defined before any targets -->
<!-- You should not need to change any of these so long as your -->
<!-- application directory structure follows the defined standard. -->
<!-- ************************************************************ -->
<!-- Target: various properties -->
<!-- ************************************************************ -->
<!-- Global, all modules, all targets -->
<!-- Tell ant to internally assign environment variables to -->
<!-- internal properties. Reference these via "${VAR}" -->
<property environment= "env" />
<property name= "common.dir" value= "${basedir}/common" />
<import file="common/common.xml"/>
<!-- Location of source directories & code -->
<property name= "src.dir" location= "${basedir}" />
<!-- Target directory where all compiled and packaged objects -->
<!-- are written to -->
<property name= "bld.dir" location= "${basedir}" />
<!-- Separator used in header output text -->
<!-- Note: This is counted at 56 chars to produce total -->
<!-- separator lines 70 chars long when output by ant, -->
<!-- including the preceding 'echo' tag -->
<property name= "header" value= "*********************************************************" />
<!-- Module Source/Build/Packaging Subdirectories -->
<!-- All of these properties define specific relative paths -->
<!-- within various module subdirectories. It is assumed that -->
<!-- all modules follow their defined respective directory -->
<!-- structures although certain structures may exist in -->
<!-- different places in the different types of modules. -->
<!-- Java Modules -->
<!-- 'vendorlib' is a special subdirectory in which vendor -->
<!-- supplied or other pre-compiled *.jars should be placed. -->
<!-- This directory and its jar files will be included in the -->
<!-- standard template classpath. The 'clean' target deletes -->
<!-- the module './lib' subdirectory and the contents of the -->
<!-- vendorlib are copied to that. Any classes compiled in the -->
<!-- module are jared up into a jar file in the module './lib' -->
<!-- directory. -->
<!-- This system provides us with the ability to have a -->
<!-- directory with jars which go in and come from the source -->
<!-- repository as well as a target directory controlled and -->
<!-- populated from source and build and can be cleared out by -->
<!-- the 'clean' target without conflicts. -->
<property name= "subdir.jarm.vendorlibs"
value= "vendorlib" >
</property>
<!-- Target directory where we compile classes to and where -->
<!-- we get them from for packaging. Directory structures -->
<!-- must be maintained for classes and jar file packaging -->
<!-- so source directory structure in source area will -->
<!-- always match target directory structure in target area. -->
<!-- Note: Standard value of this property is null, -->
<!-- WSAD handing and definition communicated by developers -->
<!-- was that classes should not go into any specific -->
<!-- subdirectory in a Java Module. -->
<property name= "subdir.jarm.classes"
value= "" >
</property>
<!-- This is a target directory into which we copy -->
<!-- vendor *.jar files from the ./vendorlib directory -->
<!-- (taken out of source control) and jar up compiled -->
<!-- from within the module classes subdirectory. -->
<property name= "subdir.jarm.libs"
value= "lib" >
</property>
<!-- Web Modules -->
<!-- *.java source files -->
<property name= "subdir.webm.wsadjavasource" value= "Java Source" />
<!-- Web Content added into war in both source and build -->
<!-- areas found under this subdirectory. -->
<property name= "subdir.webm.wsadwebcontent" value= "Web Content" />
<!-- Vendor supplied *.jars under *source control* need to -->
<!-- be placed in a special source directory which is *not* -->
<!-- the same as build so that we may delete out the contents -->
<!-- of the lib directory without deleting these files which -->
<!-- must be retained! -->
<property name= "subdir.webm.vendorlibs"
value= "${subdir.webm.wsadwebcontent}/WEB-INF/vendorlib" >
</property>
<!-- Target directory where we compile classes to and where -->
<!-- we get them from for packaging. Even though relative -->
<!-- directory path is the same, be aware that -->
<!-- ${src.dir} may or may not = ${bld.dir}, so the root -->
<!-- directories may not be the same. -->
<property name= "subdir.webm.classes"
value= "${subdir.webm.wsadwebcontent}/WEB-INF/classes" >
</property>
<property name= "subdir.webm.libs"
value= "${subdir.webm.wsadwebcontent}/WEB-INF/lib" >
</property>
<!-- Documentation -->
<!-- Target directory where we put documentation -->
<property name= "doc.dir" location= "javadoc" />
<!-- Packaging/Distribution subdirectories, all module types -->
<!-- "dist" subdirectories: where distributions are populated to -->
<property name= "dist.dir" location= "dist" />
<property name= "subdir.dist.appsrvear" location= "${dist.dir}/appsrvear" />
<property name= "subdir.dist.appsrvjartar" location= "${dist.dir}/appsrvjartar" />
<property name= "subdir.dist.websrvcontenttar" location= "${dist.dir}/websrvcontenttar" />
<property name= "subdir.dist.websrvjartar" location= "${dist.dir}/websrvjartar" />
<!-- "pkg" subdirectories: temp dirs used for preparing the "dist" -->
<!-- We create and use pkg subdirectories in certain project -->
<!-- subdirectories when we need an intermediate directory -->
<!-- area in order to perform initial levels of packaging -->
<!-- for inclusion in later packaging, i.e. module war files -->
<!-- later included in the application ear file. -->
<!-- We may have several unique package areas. -->
<property name= "subdir.pkg" value= "pkg" />
<property name= "subdir.pkg.appsrvear" value= "${subdir.pkg}/appsrvear" />
<property name= "subdir.pkg.appsrvjartar" value= "${subdir.pkg}/appsrvjartar" />
<property name= "subdir.pkg.websrvcontenttar" value= "${subdir.pkg}/websrvcontenttar" />
<property name= "subdir.pkg.websrvjartar" value= "${subdir.pkg}/websrvjartar" />
<!-- "stage" subdirectories: temp dirs used for staging for preparing pkgs -->
<!-- Where we copy and restructure files & directories to get -->
<!-- them ready for packaging. These directories are -->
<!-- created and then deleted. -->
<property name= "subdir.stage" value= "stage" />
<property name= "subdir.stage.appsrvear" value= "${subdir.stage}/appsrvear" />
<!-- Sonar Analysis -->
<property name="sonar.projectKey" value="4557_QLOP_PMO16" />
<property name="sonar.projectName" value="16_QUICKLOP" />
<property name="sonar.projectVersion" value="1.0" />
<property name="sonar.sources" value="${src.dir}/QuickLopWS,${src.dir}/QuickLopJava,${src.dir}/QuickLopDcidWS" />
<property name="sonar.java.binaries" value="${bld.dir}/QuickLopWS/${subdir.webm.classes},${src.dir}/QuickLopWeb/${subdir.webm.wsadwebcontent},${src.dir}/QuickLopDcidWS" />
<property name="sonar.sourceEncoding" value="UTF-8" />
<!-- ************************************************************ -->
<!-- Target: all -->
<!-- ************************************************************ -->
<!-- Specify the complete build targets here -->
<target name= "all"
description= "Compile and Package Application"
depends= "resolve,dist" >
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: init -->
<!-- ************************************************************ -->
<!-- setup steps required before compilation -->
<target name= "init">
<!-- Standard target header -->
<echo>${header}</echo>
<echo>init</echo>
<echo>${header}</echo>
<echo></echo>
<!-- ****************************************************** -->
<!-- hostname -->
<!-- ****************************************************** -->
<!-- Try to set from what might defined in the current -->
<!-- environment, unless defined on the command line -->
<!-- (1) -dhostname if passed -->
<!-- (2) "${env.HOSTNAME}" if defined (Unix) -->
<!-- (3) "${env.COMPUTERNAME}" if defined (WSAD) -->
<!-- (1) -dhostname if passed -->
<!-- (2) "${env.HOSTNAME}" if defined -->
<condition
property= "hostname"
value= "${env.HOSTNAME}" >
<and>
<not>
<isset property= "hostname" />
</not>
<isset property= "env.HOSTNAME" />
<not>
<equals arg1="${env.HOSTNAME}" arg2="" />
</not>
</and>
</condition>
<!-- (3) "${env.COMPUTERNAME}" if defined -->
<condition
property= "hostname"
value= "${env.COMPUTERNAME}" >
<and>
<not>
<isset property= "hostname" />
</not>
<isset property= "env.COMPUTERNAME" />
<not>
<equals arg1="${env.COMPUTERNAME}" arg2="" />
</not>
</and>
</condition>
<!-- ****************************************************** -->
<!-- build.repset: Repository Source Set -->
<!-- ****************************************************** -->
<!-- This property contains information populated by master -->
<!-- build process only. Identifies which -->
<!-- workset/baseline/branch/label of code was -->
<!-- extracted from the source repository -->
<!-- The meaning of this value would vary by repository, -->
<!-- i.e.: Dimensions: Workset, Baseline or Release -->
<!-- PVCS: Branch or label -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Default: "unknown" -->
<!-- Some default -->
<condition
property= "build.repset"
value= "unknown" >
<not>
<isset property= "build.repset" />
</not>
</condition>
<!-- ****************************************************** -->
<!-- pf.dir: Properties File Directory -->
<!-- ****************************************************** -->
<!-- The "pf" prefix is abbr for "properties files" -->
<!-- This dir is where the local properties files are -->
<!-- sourced from. This directory location is resolved -->
<!-- from and assumed to be the same directory as this -->
<!-- build.xml file at the time of invocation, default -->
<!-- FULLPATH/build/ant, derived from build/ant/build.xml -->
<dirname property= "pf.dir" file= "${ant.file}" />
<!-- ****************************************************** -->
<!-- app.build.dir: Application Build Subdirectory -->
<!-- ****************************************************** -->
<!-- Root 'build' subdirectory of the application, -->
<!-- under which the rest of the build subdirectories exist -->
<!-- Now derived as the root directory of the properties -->
<!-- file directory derived from the location of this build.xml. -->
<!-- Some apps will need to relocate their build files -->
<!-- into the Enterprise Application Project in order -->
<!-- to allow for multiple build directories in the -->
<!-- same Workspace in WSAD, even if each app must still -->
<!-- have it's own build.xml -->
<dirname property= "app.build.dir" file= "${pf.dir}" />
<!-- ****************************************************** -->
<!-- pf.app: Application Properties File -->
<!-- ****************************************************** -->
<!-- This file contains properties which apply for the entire -->
<!-- application build. -->
<property name= "pf.app" value= "${pf.dir}/application.properties" />
<!-- Reference each property via: ${pf.app.PROPERTY} -->
<loadproperties srcFile= "${pf.app}">
<filterchain>
<prefixlines prefix= "pf.app." />
</filterchain>
</loadproperties>
<!-- ****************************************************** -->
<!-- app.name: Application name -->
<!-- ****************************************************** -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from application properties file -->
<!-- (3) Default: MyApplication -->
<condition
property= "app.name"
value= "${pf.app.name}" >
<and>
<isset property= "pf.app.name" />
<not>
<isset property= "app.name" />
</not>
</and>
</condition>
<!-- Some default -->
<condition
property= "app.name"
value= "MyApplication" >
<not>
<isset property= "app.name" />
</not>
</condition>
<!-- ****************************************************** -->
<!-- app.version: Application version -->
<!-- ****************************************************** -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from application properties file -->
<!-- (3) Default: unknown -->
<condition
property= "app.version"
value= "${pf.app.version}" >
<and>
<isset property= "pf.app.version" />
<not>
<isset property= "app.version" />
</not>
</and>
</condition>
<!-- Some default -->
<condition
property= "app.version"
value= "unknown" >
<not>
<isset property= "app.version" />
</not>
</condition>
<!-- ****************************************************** -->
<!-- compile.jars: Flag, Compile JAR modules? -->
<!-- ****************************************************** -->
<!-- Set this property if any there are any JAR modules -->
<!-- to be compiled and packaged in the application -->
<!-- (1) Check/set from application properties file -->
<!-- (2) Default: unset -->
<condition
property= "compile.jars"
value= "${pf.app.compile.jars}" >
<isset property= "pf.app.compile.jars" />
</condition>
<!-- ****************************************************** -->
<!-- compile.webs: Flag, Compile WEB modules? -->
<!-- ****************************************************** -->
<!-- Set this property if any there are any WEB modules -->
<!-- to be compiled and packaged in the application -->
<!-- (1) Check/set from application properties file -->
<!-- (2) Default: unset -->
<condition
property= "compile.webs"
value= "${pf.app.compile.webs}" >
<isset property= "pf.app.compile.webs" />
</condition>
<!-- ****************************************************** -->
<!-- Note: all *.dist.prepare properties -->
<!-- ****************************************************** -->
<!-- These are flag properties that turn on operation -->
<!-- of the dist targets. If the properties are set, the -->
<!-- respective dist.targets are activated. If not, the -->
<!-- dist targets may remain as dependencies and be called by -->
<!-- the main 'dist' target but the 'if=' property checks -->
<!-- in the dist targets will prevent the respective dist -->
<!-- targets from being invoked. -->
<!-- This provides application developers the ability to retain -->
<!-- the deployed template more 'as-is' and turn off non-working -->
<!-- distributions via properties settings in the application -->
<!-- properties file. -->
<!-- An alternative is to completely remove the properties -->
<!-- and any unused targets as follows: -->
<!-- (1) Remove these properties and their settings from -->
<!-- this build.xml and the application properties file. -->
<!-- (2) Update the 'dist' target dependencies to include -->
<!-- only those targets invoked by the application build. -->
<!-- (3) Remove/comment out the target code for any -->
<!-- distributions not being produced by the application. -->
<!-- This cleanup work would need to be performed each time -->
<!-- the template is re-deployed into the application. -->
<!-- ****************************************************** -->
<!-- appsrvear.dist.prepare: Flag property -->
<!-- ****************************************************** -->
<!-- (1) Check/set from application properties file -->
<!-- (2) Default: unset -->
<condition
property= "appsrvear.dist.prepare"
value= "${pf.app.appsrvear.dist.prepare}" >
<isset property= "pf.app.appsrvear.dist.prepare" />
</condition>
<!-- ****************************************************** -->
<!-- appsrvear.file.name: EAR file name -->
<!-- ****************************************************** -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from application properties file -->
<!-- (3) Default: application name if set -->
<condition
property= "appsrvear.file.name"
value= "${pf.app.appsrvear.file.name}" >
<and>
<isset property= "pf.app.appsrvear.file.name" />
<not>
<isset property= "appsrvear.file.name" />
</not>
</and>
</condition>
<condition
property= "appsrvear.file.name"
value= "${app.name}.ear" >
<and>
<isset property= "app.name" />
<not>
<isset property= "appsrvear.file.name" />
</not>
</and>
</condition>
<!-- ****************************************************** -->
<!-- appsrvjartar.dist.prepare: Flag property -->
<!-- ****************************************************** -->
<!-- (1) Check/set from application properties file -->
<!-- (2) Default: unset -->
<condition
property= "appsrvjartar.dist.prepare"
value= "${pf.app.appsrvjartar.dist.prepare}" >
<isset property= "pf.app.appsrvjartar.dist.prepare" />
</condition>
<!-- ****************************************************** -->
<!-- appsrvjartar.target.dir: Application tar target install directory -->
<!-- ****************************************************** -->
<!-- This defines the target directory where application jars -->
<!-- and possibly application server content are to be -->
<!-- untarred. -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from application properties file -->
<!-- (3) Default: /clocal/www/web-data/${app.name} -->
<!-- Note: The default is *not* intended to work but to -->
<!-- just provide some dummy value which will identify -->
<!-- the application in which this value was not assigned. -->
<condition
property= "appsrvjartar.target.dir"
value= "${pf.app.appsrvjartar.target.dir}" >
<and>
<isset property= "pf.app.appsrvjartar.target.dir" />
<not>
<isset property= "appsrvjartar.target.dir" />
</not>
</and>
</condition>
<condition
property= "appsrvjartar.target.dir"
value= "./${app.name}" >
<not>
<isset property= "appsrvjartar.target.dir" />
</not>
</condition>
<!-- ****************************************************** -->
<!-- appsrvjartar.file.name: Application tar file name -->
<!-- ****************************************************** -->
<!-- This defines the name of the tar file created to -->
<!-- contain common *.jar and possibly some content files -->
<!-- deployed to specific path on the application server. -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from application properties file -->
<!-- (3) Default: application name -->
<condition
property= "appsrvjartar.file.name"
value= "${pf.app.appsrvjartar.file.name}" >
<and>
<isset property= "pf.app.appsrvjartar.file.name" />
<not>
<isset property= "appsrvjartar.file.name" />
</not>
</and>
</condition>
<condition
property= "appsrvjartar.file.name"
value= "${app.name}_code_appserver.tar" >
<and>
<isset property= "app.name" />
<not>
<isset property= "appsrvjartar.file.name" />
</not>
</and>
</condition>
<!-- ****************************************************** -->
<!-- websrvcontenttar.dist.prepare: Flag property -->
<!-- ****************************************************** -->
<!-- (1) Check/set from application properties file -->
<!-- (2) Default: unset -->
<condition
property= "websrvcontenttar.dist.prepare"
value= "${pf.app.websrvcontenttar.dist.prepare}" >
<isset property= "pf.app.websrvcontenttar.dist.prepare" />
</condition>
<!-- ****************************************************** -->
<!-- websrvcontenttar.target.dir: Content tar file target directory -->
<!-- ****************************************************** -->
<!-- This is the root-level target directory path prefixed -->
<!-- to all content files bundled into the application -->
<!-- content tar file. Default is a DealerCONNECT path -->
<!-- under which each application has defined subdirectories. -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from application properties file -->
<!-- (3) Default: "./${app.name}" -->
<condition
property= "websrvcontenttar.target.dir"
value= "${pf.app.websrvcontenttar.target.dir}" >
<and>
<isset property= "pf.app.websrvcontenttar.target.dir" />
<not>
<isset property= "websrvcontenttar.target.dir" />
</not>
</and>
</condition>
<condition
property= "websrvcontenttar.target.dir"
value= "./${app.name}" >
<not>
<isset property= "websrvcontenttar.target.dir" />
</not>
</condition>
<!-- ****************************************************** -->
<!-- websrvcontenttar.file.name: Content tar file name -->
<!-- ****************************************************** -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from application properties file -->
<!-- (3) Default: application name if set -->
<condition
property= "websrvcontenttar.file.name"
value= "${pf.app.websrvcontenttar.file.name}" >
<and>
<isset property= "pf.app.websrvcontenttar.file.name" />
<not>
<isset property= "websrvcontenttar.file.name" />
</not>
</and>
</condition>
<condition
property= "websrvcontenttar.file.name"
value= "${app.name}_content_webserver.tar" >
<and>
<isset property= "app.name" />
<not>
<isset property= "websrvcontenttar.file.name" />
</not>
</and>
</condition>
<!-- ****************************************************** -->
<!-- websrvjartar.dist.prepare: Flag property -->
<!-- ****************************************************** -->
<!-- (1) Check/set from application properties file -->
<!-- (2) Default: unset -->
<condition
property= "websrvjartar.dist.prepare"
value= "${pf.app.websrvjartar.dist.prepare}" >
<isset property= "pf.app.websrvjartar.dist.prepare" />
</condition>
<!-- ****************************************************** -->
<!-- websrvjartar.target.dir: Web Server jar tar file target directory -->
<!-- ****************************************************** -->
<!-- This is the root-level target directory path prefixed -->
<!-- to all content files bundled into the application -->
<!-- content tar file. Default is a DealerCONNECT path -->
<!-- under which each application has defined subdirectories. -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from application properties file -->
<!-- (3) Default: "./${app.name}" -->
<condition
property= "websrvjartar.target.dir"
value= "${pf.app.websrvjartar.target.dir}" >
<and>
<isset property= "pf.app.websrvjartar.target.dir" />
<not>
<isset property= "websrvjartar.target.dir" />
</not>
</and>
</condition>
<condition
property= "websrvjartar.target.dir"
value= "./${app.name}" >
<not>
<isset property= "websrvjartar.target.dir" />
</not>
</condition>
<!-- ****************************************************** -->
<!-- websrvjartar.file.name: Content tar file name -->
<!-- ****************************************************** -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from application properties file -->
<!-- (3) Default: application name if set -->
<condition
property= "websrvjartar.file.name"
value= "${pf.app.websrvjartar.file.name}" >
<and>
<isset property= "pf.app.websrvjartar.file.name" />
<not>
<isset property= "websrvjartar.file.name" />
</not>
</and>
</condition>
<condition
property= "websrvjartar.file.name"
value= "${app.name}_code_webserver.tar" >
<and>
<isset property= "app.name" />
<not>
<isset property= "websrvjartar.file.name" />
</not>
</and>
</condition>
<!-- ****************************************************** -->
<!-- pf.buildinfo : Build Information File -->
<!-- ****************************************************** -->
<!-- Build information file: pf.buildinfo -->
<!-- This is an output file which records certain values -->
<!-- used to create the build. This file is generated -->
<!-- and included in the final application ear file -->
<!-- Won't place it in the pf.dir since it's not an -->
<!-- input/controlling type of properties file -->
<property name= "build.tmpdir" value= "${app.build.dir}/tmp" />
<!-- Always create this directory up front -->
<mkdir dir= "${build.tmpdir}" />
<mkdir dir= "${build.tmpdir}/lib" />
<!-- Special build file: Build Information -->
<property name= "pf.buildinfo" value= "buildinfo" />
<!-- ****************************************************** -->
<!-- build.info : Extra build identifier -->
<!-- ****************************************************** -->
<!-- Determine initial build value from one of the following -->
<!-- (1) In all cases, -D<property>= <value> will override -->
<!-- (2) Check/set from application properties file -->
<!-- (3) Default: Empty string -->
<!-- This is an extra build identifier string which may be -->
<!-- passed to the build and is written to the buildinfo file. -->
<!-- Ck/set from application properties file if set there -->
<condition
property= "build.info"
value= "${pf.app.build.info}" >
<and>
<isset property= "pf.app.build.info" />
<not>
<isset property= "build.info" />
</not>
</and>
</condition>
<!-- Ck/set from application properties file if set there -->
<condition
property= "build.info"
value= "" >
<not>
<isset property= "build.info" />
</not>
</condition>
<!-- ****************************************************** -->
<!-- pf.appdep : Application Dependencies Properties File -->
<!-- ****************************************************** -->
<!-- Resolve locations of other external applications required -->
<!-- for build. This setup is partially implemented by script -->
<!-- on the build machine. If an 'appdep.txt' file is in the -->
<!-- build directory , it is expanded to an -->
<!-- appdep.${username}.${hostname}.properties file which receives -->
<!-- a listing of properties along with the full path location to -->
<!-- other application builds in the build area. -->
<!-- Requires global env var setting: ${hostname} -->
<!-- Checks & settings: -->
<!-- (1) "appdep.${user.name}.${hostname}.properties" if found -->
<!-- (2) "appdep.${user.name}.properties" if found -->
<!-- (3) "${app.build.dir}/tmp/appdep.null.properties" (null created) if found -->
<!-- This configuration creates and sets the properties file name -->
<!-- to a null file so that ant will quietly ignore the situation -->
<!-- where it would abort if the file was not present. -->
<!-- This file is not normally used within the build.xml file -->
<!-- but was provided as a workaround for certain application that -->
<!-- need to be built and deployed in a more modular way. -->
<!-- (1) "appdep.${user.name}.${hostname}.properties" if found -->
<condition
property= "pf.appdep"
value= "${pf.dir}/appdep.${user.name}.${hostname}.properties" >
<available
type= "file"
file= "${pf.dir}/appdep.${user.name}.${hostname}.properties" >
</available>
</condition>
<!-- (2) "appdep.${user.name}.properties" if found -->
<condition
property= "pf.appdep"
value= "${pf.dir}/appdep.${user.name}.properties" >
<and>
<available
type= "file"
file= "${pf.dir}/appdep.${user.name}.properties" >
</available>
<not>
<isset property= "pf.appdep" />
</not>
</and>
</condition>
<!-- (3) 'loadproperties' will blow up if not there though so -->
<!-- if not found, create a null properties file and set the -->
<!-- pf.appdep property to point to the dummy file. Can't -->
<!-- use 'touch' since even a zero length file will blow up, -->
<!-- had to at least put a space in the file so it was -->
<!-- greater than zero length in size. -->
<echo file= "${build.tmpdir}/appdep.null.properties" > </echo>
<condition
property= "pf.appdep"
value= "${build.tmpdir}/appdep.null.properties" >
<not>
<isset property= "pf.appdep" />
</not>
</condition>
<!-- Reference each property via: ${appdep.PROPERTY} -->
<loadproperties srcFile= "${pf.appdep}">
<filterchain>
<prefixlines prefix= "appdep." />
</filterchain>
</loadproperties>
<!-- ****************************************************** -->
<!-- pf.user : User Properties File -->
<!-- ****************************************************** -->
<!-- Layered checks & settings: -->
<!-- (1) "user.${user.name}.${hostname}.properties" if found -->
<!-- (2) "user.${user.name}.properties" if found -->
<!-- (3) "user.default.properties" if found -->
<!-- Requires global env var setting: ${hostname} -->
<!-- NOTE: Ant will quietly ignore if this file not present -->
<!-- (1) "user.${user.name}.${hostname}.properties" if found -->
<condition
property= "pf.user"
value= "${pf.dir}/user.${user.name}.${hostname}.properties" >
<and>
<available
type= "file"
file= "${pf.dir}/user.${user.name}.${hostname}.properties" >
</available>
<not>
<isset property= "pf.user" />
</not>
</and>
</condition>
<!-- (2) "user.${user.name}.properties" if found -->
<condition
property= "pf.user"
value= "${pf.dir}/user.${user.name}.properties" >
<and>
<available
type= "file"
file= "${pf.dir}/user.${user.name}.properties" >
</available>
<not>
<isset property= "pf.user" />
</not>
</and>
</condition>
<!-- (3) "user.default.properties" if found -->
<condition
property= "pf.user"
value= "${pf.dir}/user.default.properties" >
<and>
<available
type= "file"
file= "${pf.dir}/user.default.properties" >
</available>
<not>
<isset property= "pf.user" />
</not>
</and>
</condition>
<!-- Reference each property via: ${user.PROPERTY} -->
<loadproperties srcFile= "${pf.user}">
<filterchain>
<prefixlines prefix= "pf.user." />
</filterchain>
</loadproperties>
<!-- NOTE: Per DEALERCONNECT2.0 Architecture document, pp. 5: -->
<!-- "do NOT use the deprecation= "on" option for the javac Ant -->
<!-- task or it will crash Application Developer. Either -->
<!-- don't specify anything or else use deprecation= "off"" -->
<!-- In the name of avoiding properties file & ant build file -->
<!-- conflicts, we prefixed all the properties read in from the -->
<!-- properties file with "user." Assign the users file -->
<!-- we wish to retain here. -->
<property name= "compiler.debug"
value= "${pf.user.compiler.debug}" />
<property name= "compiler.debuglevel"
value= "${pf.user.compiler.debuglevel}" />
<property name= "compiler.deprecation"
value= "${pf.user.compiler.deprecation}" />
<property name= "compiler.encoding"
value= "${pf.user.compiler.encoding}" />
<property name= "compiler.type"
value= "${pf.user.compiler.type}" />
<property name= "compiler.verbose"
value= "${pf.user.compiler.verbose}" />
<property name= "compiler.optimize"
value= "${pf.user.compiler.optimize}" />
<!-- Special property set to control deletion of files -->
<condition property= "source.and.build.are.same" >
<equals arg1= "${src.dir}" arg2= "${bld.dir}" />
</condition>
<!-- ****************************************************** -->
<!-- ext.rootdir.vendor: Outside-of-Project 3rd Party Directory -->
<!-- ****************************************************** -->
<!-- Set ext.rootdir.vendor to the location of the global vendor -->
<!-- application directory. The intent of this -->
<!-- implementation was to allow for various properties -->
<!-- referring to the static and known -->
<!-- relative subdirectories *within* the tree once they are -->
<!-- provided with the location of the vendor directory itself. -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from env var VENDORROOT -->
<!-- (3) Check/set from user/host properties file -->
<condition
property= "ext.rootdir.vendor"
value= "${env.VENDORROOT}" >
<and>
<isset property= "env.VENDORROOT" />
<not>
<isset property= "ext.rootdir.vendor" />
</not>
</and>
</condition>
<!-- NOTE: "ext.rootdir.vendor" prefixed with "pf.user." when parsed -->
<condition
property= "ext.rootdir.vendor"
value= "${pf.user.ext.rootdir.vendor}" >
<and>
<isset property= "pf.user.ext.rootdir.vendor" />
<not>
<isset property= "ext.rootdir.vendor" />
</not>
</and>
</condition>
<!-- ****************************************************** -->
<!-- ext.libdir.db2: DB2 Libraries -->
<!-- ****************************************************** -->
<!-- Set ext.libdir.db2 to the location of the MQ Libraries -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from env var DB2LIBS -->
<!-- (3) Check/set from user/host properties file -->
<condition
property= "ext.libdir.db2"
value= "${env.DB2LIBS}" >
<and>
<isset property= "env.DB2LIBS" />
<not>
<isset property= "ext.libdir.db2" />
</not>
</and>
</condition>
<!-- NOTE: "ext.libdir.db2" prefixed with "pf.user." when parsed -->
<condition
property= "ext.libdir.db2"
value= "${pf.user.ext.libdir.db2}" >
<and>
<isset property= "pf.user.ext.libdir.db2" />
<not>
<isset property= "ext.libdir.db2" />
</not>
</and>
</condition>
<!-- Dummy default, override will be ignored by ant. -->
<property name= "ext.libdir.db2" location= "${build.tmpdir}" />
<!-- ****************************************************** -->
<!-- ext.libdir.mq: MQ Libraries -->
<!-- ****************************************************** -->
<!-- Set ext.libdir.mq to the location of the MQ Libraries -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from env var MQLIBS -->
<!-- (3) Check/set from user/host properties file -->
<condition
property= "ext.libdir.mq"
value= "${env.MQLIBS}" >
<and>
<isset property= "env.MQLIBS" />
<not>
<isset property= "ext.libdir.mq" />
</not>
</and>
</condition>
<!-- NOTE: "ext.libdir.mq" prefixed with "pf.user." when parsed -->
<condition
property= "ext.libdir.mq"
value= "${pf.user.ext.libdir.mq}" >
<and>
<isset property= "pf.user.ext.libdir.mq" />
<not>
<isset property= "ext.libdir.mq" />
</not>
</and>
</condition>
<!-- Dummy default, override will be ignored by ant. -->
<property name= "ext.libdir.mq" location= "${build.tmpdir}" />
<!-- ****************************************************** -->
<!-- ext.libdir.common: COMMON code directory -->
<!-- ****************************************************** -->
<!-- Set common.vendor.dir to the location of the -->
<!-- development environment COMMON code-->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from env var COMMONLIBS -->
<!-- (3) Check/set from user/host properties file -->
<condition
property= "ext.libdir.common"
value= "${env.COMMONLIBS}" >
<and>
<isset property= "env.COMMONLIBS" />
<not>
<isset property= "ext.libdir.common" />
</not>
</and>
</condition>
<!-- NOTE: "ext.libdir.common" prefixed with "pf.user." when parsed -->
<condition
property= "ext.libdir.common"
value= "${pf.user.ext.libdir.common}" >
<and>
<isset property= "pf.user.ext.libdir.common" />
<not>
<isset property= "ext.libdir.common" />
</not>
</and>
</condition>
<!-- Dummy default, override will be ignored by ant. -->
<property name= "ext.libdir.common" location= "${build.tmpdir}" />
<!-- ****************************************************** -->
<!-- ext.rootdir.was: Root WAS Directory -->
<!-- ****************************************************** -->
<!-- Set ext.rootdir.was to the root WAS directory path -->
<!-- This is an important environment variable which must -->
<!-- map to the same relative directory path regardless of -->
<!-- platform: DOS/UNIX and application: WSAD/WAS. -->
<!-- The main set of WAS jars are located in the ./lib -->
<!-- subdirectory of this subdirectory -->
<!-- (1) In all cases, -D<property>= <value> will set first -->
<!-- (2) Check/set from env var WAS_HOME -->
<!-- (3) Check/set from user/host properties file -->
<condition
property= "ext.rootdir.was"
value= "${env.WAS_HOME}" >
<and>
<isset property= "env.WAS_HOME" />
<not>
<isset property= "ext.rootdir.was" />
</not>
</and>
</condition>
<!-- NOTE: "ext.rootdir.was" prefixed with "pf.user." when parsed -->
<condition
property= "ext.rootdir.was"
value= "${pf.user.ext.rootdir.was}" >
<and>
<isset property= "pf.user.ext.rootdir.was" />
<not>
<isset property= "ext.rootdir.was" />
</not>
</and>
</condition>
<!-- Dummy default, override will be ignored by ant. -->
<property name= "ext.rootdir.was" location= "${build.tmpdir}" />
<!-- ****************************************************** -->
<!-- CLASSPATH -->
<!-- ****************************************************** -->
<!-- Classpath ID references are listed in the order in which -->
<!-- they are set in the full classpath passed to the -->
<!-- builds. Libs found in WAS will always take precedence -->
<!-- over any others, then: DB2, MQ, DealerCONNECT Common -->
<!-- Code, and then the internal application classes. This -->
<!-- effectively prevents applications from using older -->
<!-- versions of existing classes in the vendorlib -->
<!-- directories of their applications. -->
<!-- WAS Directories -->
<!-- Default: Include the main ./lib directory under the -->
<!-- WAS root directory, some applications may need to -->
<!-- add in additional directories. -->
<!-- Warning: Do not include the entire WAS directory tree -->
<!-- because it is very large and parsing through it takes -->
<!-- substantial time and system resources. -->
<path id = "class.path.was" >
<fileset
dir = "${ext.rootdir.was}/lib" >
<include name= "**/*.jar" />
<include name= "**/*.zip" />
</fileset>
</path>
<!-- DB2 Directories -->
<path id = "class.path.db2" >
<fileset
dir = "${ext.libdir.db2}" >
<include name= "**/*.jar" />
<include name= "**/*.zip" />
</fileset>
</path>
<!-- MQ Series Directories -->
<path id = "class.path.mq" >
<fileset
dir = "${ext.libdir.mq}" >
<include name= "**/*.jar" />
<include name= "**/*.zip" />
</fileset>
</path>
<!-- Common Code -->
<path id = "class.path.common" >
<fileset
dir = "${ext.libdir.common}">
<include name= "**/*.jar" />
<include name= "**/*.zip" />
</fileset>
</path>
<!-- CUSTOMIZE.class.path.app -->
<!-- Add in each JAR Module or other lib directory if -->
<!-- required as dependencies to other modules. -->
<!-- You must 'mkdir' each of these directories prior to -->
<!-- the 'path id' tag otherwise the reference will fail -->
<!-- and the build.xml will abort. -->
<!-- Application JAR Module classes -->
<mkdir dir= "${bld.dir}/QuickLopJava/${subdir.jarm.libs}" />
<mkdir dir= "${bld.dir}/QuickLopWS/Web Content/WEB-INF/${subdir.jarm.libs}" />
<!-- START Changes for PMO#16.51 -->
<mkdir dir= "${bld.dir}/QuickLopDcidWS/Web Content/WEB-INF/${subdir.jarm.libs}" />
<!-- END Changes for PMO#16.51 -->
<path id = "class.path.app" >
<fileset
dir= "${bld.dir}/QuickLopJava/${subdir.jarm.libs}" >
<include name= "**/*.jar" />
</fileset>
<fileset
dir= "QuickLopWeb/Web Content/WEB-INF/lib/" >
<include name= "**/*.jar" />
</fileset>
<fileset
dir= "QuickLopWeb/Web Content/WEB-INF/lib/" >
<include name= "**/*.zip" />
</fileset>
<fileset
dir= "QuickLopWS/Web Content/WEB-INF/lib/" >
<include name= "**/*.jar" />
</fileset>
<fileset
dir= "QuickLopWS/Web Content/WEB-INF/lib/" >
<include name= "**/*.zip" />
</fileset>
<!-- START Changes for PMO#16.51 -->
<fileset
dir= "QuickLopDcidWS/Web Content/WEB-INF/lib/" >
<include name= "**/*.jar" />
</fileset>
<fileset
dir= "QuickLopDcidWS/Web Content/WEB-INF/lib/" >
<include name= "**/*.zip" />
</fileset>
<!-- END Changes for PMO#16.51 -->
</path>
<!-- FTT changes -->
<!-- Selenium -->
<path id="seleniumTest.classpath">
<path refid="class.path.common" />
</path>
<!-- Selenium -->
<!-- FTT changes -->
<!-- Accumulate all parts into one classpath reference ID -->
<path id = "class.path.full" >
<pathelement path= "${java.class.path}" />
<path refid= "class.path.was" />
<path refid= "class.path.db2" />
<path refid= "class.path.mq" />
<path refid= "class.path.common" />
<path refid= "class.path.app" />
</path>
<!-- Set property based on platform type -->
<condition property= "isunix">
<os family= "unix"/>
</condition>
<!-- Create any required target root-level directories -->
<mkdir dir= "${bld.dir}" />
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: compile -->
<!-- ************************************************************ -->
<!-- This is a top-level compile target which describes the -->
<!-- overall compile process. It has general tasks described -->
<!-- within. You should not need to modify this target at -->
<!-- instead, add in module dependencies to the sub-targets -->
<target name= "compile"
description= "Compile Modules: All JAR, WEB"
depends= "init,compile.jar,compile.web" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>compile</echo>
<echo>${header}</echo>
<echo></echo>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: compile.jar -->
<!-- ************************************************************ -->
<!-- CUSTOMIZE.compile.jar -->
<!-- Update the "depends" of compile.jar to include the -->
<!-- individual JAR Module targets to compile. -->
<!-- Compile All JAR Modules -->
<!-- This is a second-level grouping target which invokes -->
<!-- specific module packaging targets . -->
<!-- Please do not modify this target except to add in -->
<!-- dependency JAR module targets. -->
<target name= "compile.jar"
if= "compile.jars"
description= "Compile Modules: All JAR"
depends= "init,compile.jarm.QuickLopJava" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>compile.jar</echo>
<echo>${header}</echo>
<echo></echo>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: compile.jarm.antcall -->
<!-- ************************************************************ -->
<!-- This target compiles a JAR module in a standard way. -->
<!-- The classes are compiled in the subdirectory structure -->
<!-- immediately below the module name and will need to be -->
<!-- accumulated by 'ant' using the *.class suffix. -->
<!-- Either form may be included in other build & packaging -->
<!-- This target should not be modified in any way. -->
<!-- It can be invoked by a a module-specific target -->
<!-- by means of antcall while setting the property: -->
<!-- <param name= "module.name" value= "<MODULENAME>"/> -->
<!-- If something custom must be done for a specific module, -->
<!-- this target can be copied to a new module target named -->
<!-- 'compile.jarm.<MODULENAME>' and then modified as needed. -->
<target name= "compile.jarm.antcall"
if= "compile.jars"
depends= "init" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>compile.jarm.antcall: module.name= "${module.name}"</echo>
<echo>${header}</echo>
<echo></echo>
<!-- Required as a source dependency, even if no contents -->
<mkdir dir="${src.dir}/${module.name}/${subdir.jarm.vendorlibs}" />
<!-- Where we compile classes to -->
<mkdir dir= "${bld.dir}/${module.name}/${subdir.jarm.classes}" />
<javac
srcdir="${src.dir}/${module.name}"
destdir="${bld.dir}/${module.name}"
compiler="${compiler.type}"
debug="${compiler.debug}"
debuglevel="${compiler.debuglevel}"
deprecation="${compiler.deprecation}"
encoding="${compiler.encoding}"
includeAntRuntime="false"
optimize="${compiler.optimize}"
listfiles="true"
verbose="${compiler.verbose}" >
<classpath
refid= "class.path.full" >
</classpath>
<classpath>
<fileset
dir="${src.dir}/${module.name}/${subdir.jarm.vendorlibs}"
includes="**/*.jar" >
</fileset>
<fileset
dir="${bld.dir}/${module.name}/${subdir.jarm.classes}"
includes="**/*.class" >
</fileset>
</classpath>
</javac>
<!-- Where we copy and jar *.jars to -->
<mkdir dir="${bld.dir}/${module.name}/${subdir.jarm.libs}" />
<!-- Create the *.jar file with the newly compiled classes in -->
<!-- the target lib subdirectory -->
<jar
destfile= "${bld.dir}/${module.name}/${subdir.jarm.libs}/${jar.name}.jar"
basedir= "${bld.dir}/${module.name}/${subdir.jarm.classes}"
includes= "**/*.class,**/*.dtd,**/*.xml"
update="false" >
</jar>
<!-- Copy the vendor supplied jars kept in the source -->
<!-- repository directory into the target lib directory -->
<!-- for build and packaging -->
<echo>todir= "${bld.dir}/${module.name}/${subdir.jarm.libs}"</echo>
<echo>todir= "${bld.dir}/${module.name}/${subdir.jarm.libs}"</echo>
<echo>dir= "${src.dir}/${module.name}/${subdir.jarm.vendorlibs}"</echo>
<copy
todir= "${bld.dir}/${module.name}/${subdir.jarm.libs}"
preservelastmodified= "true"
verbose= "false" >
<fileset
dir= "${src.dir}/${module.name}/${subdir.jarm.vendorlibs}"
includes= "**/*.jar" >
</fileset>
</copy>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: compile.web -->
<!-- ************************************************************ -->
<!-- CUSTOMIZE.compile.web -->
<!-- Update the "depends" of compile.web to include the -->
<!-- individual WEB Module targets to compile. -->
<!-- Compile All WEB Modules -->
<!-- This is a second-level grouping target which invokes -->
<!-- specific module compile targets . -->
<!-- Please do not modify this target except to add in -->
<!-- dependency JAR & WEB module targets. -->
<!-- Changes for PMO#16.51 added compile.webm.QuickLopDcidWS -->
<target name= "compile.web"
if= "compile.webs"
description= "Compile Modules: All WEB"
depends= "init,compile.webm.QuickLopWeb,compile.webm.QuickLopWS,compile.webm.QuickLopDcidWS">
<!-- Standard target header -->
<echo>${header}</echo>
<echo>compile.web</echo>
<echo>${header}</echo>
<echo></echo>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: compile.webm.antcall -->
<!-- ************************************************************ -->
<!-- This target compiles a WEB module in a standard way. -->
<!-- This target should not be modified in any way. -->
<!-- It can be invoked by a a module-specific target -->
<!-- by means of antcall while setting the property: -->
<!-- <param name= "module.name" value= "<MODULENAME>"/> -->
<!-- If something custom must be done for a specific module, -->
<!-- this target can be copied to a new module target named -->
<!-- 'compile.webm.<MODULENAME>' and then modified as needed. -->
<target name= "compile.webm.antcall"
if= "compile.webs"
depends= "init" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>compile.webm.antcall: module.name= "${module.name}"</echo>
<echo>${header}</echo>
<echo></echo>
<!-- Required as a source dependency -->
<mkdir dir= "${src.dir}/${module.name}/${subdir.webm.vendorlibs}" />
<!-- Where we compile classes to -->
<mkdir dir= "${bld.dir}/${module.name}/${subdir.webm.classes}" />
<javac
srcdir= "${src.dir}/${module.name}/${subdir.webm.wsadjavasource}"
destdir= "${bld.dir}/${module.name}/${subdir.webm.classes}"
compiler= "${compiler.type}"
debug= "${compiler.debug}"
debuglevel= "${compiler.debuglevel}"
deprecation= "${compiler.deprecation}"
encoding= "${compiler.encoding}"
includeAntRuntime= "false"
optimize= "${compiler.optimize}"
listfiles="true"
verbose= "${compiler.verbose}" >
<classpath
refid= "class.path.full" >
</classpath>
<classpath>
<fileset
dir= "${src.dir}/${module.name}/${subdir.webm.vendorlibs}"
includes= "**/*.jar" >
</fileset>
<fileset
dir= "${bld.dir}/${module.name}/${subdir.webm.classes}"
includes= "**/*.class" >
</fileset>
</classpath>
</javac>
<!-- Copy the .xml files into the WEB-INF/classes folder - Added 12/4/04 t1351jh
<copy todir= "${bld.dir}/${module.name}/${subdir.webm.classes}" verbose="true">
<fileset
dir="${bld.dir}/${module.name}/${subdir.webm.wsadjavasource}/xml"
includes= "**" >
</fileset>
</copy>-->
<!-- Where we jar the files to -->
<mkdir dir= "${bld.dir}/${module.name}/${subdir.webm.libs}" />
<!-- Copy the vendor supplied jars kept in the source -->
<!-- repository directory into the target lib directory -->
<!-- for build and packaging -->
<copy
todir= "${bld.dir}/${module.name}/${subdir.webm.libs}"
preservelastmodified= "true"
verbose= "false" >
<fileset
dir= "${src.dir}/${module.name}/${subdir.webm.vendorlibs}"
includes= "**/*.jar" >
</fileset>
</copy>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: dist -->
<!-- ************************************************************ -->
<!-- Top-level target to prepare all distributions. -->
<!-- Additional standard "distributions" will be created and -->
<!-- added in as dependencies to this full distribution target -->
<!-- in the future. -->
<target name= "dist"
description= "Prepare Distribution: All"
depends= "dist.appsrvear,dist.appsrvjartar,dist.websrvcontenttar,dist.websrvjartar">
<!-- Standard target header -->
<echo>${header}</echo>
<echo>dist</echo>
<echo>${header}</echo>
<echo></echo>
<echo>Full Distribution Root: ${dist.dir}</echo>
<echo>Build Completed.</echo>
</target>
<!-- ************************************************************ -->
<!-- Target: dist.appsrvear -->
<!-- ************************************************************ -->
<!-- Application packaging -->
<!-- Create the J2EE Application EAR Module file -->
<!-- This target bundles up all the Web Project war files -->
<!-- created by the pkg.<TYPE>.<WEBPROJECT> targets along -->
<!-- with the Enterprise Application Project to produce the -->
<!-- final application ear file destined for deployment -->
<!-- on the application server. -->
<target name= "dist.appsrvear"
if= "appsrvear.dist.prepare"
description= "Prepare Distribution: J2EE Ear File of Application"
depends= "init,update.buildinfo,pkg.jar,pkg.web" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>dist.appsrvear</echo>
<echo>${header}</echo>
<echo></echo>
<mkdir dir="${subdir.dist.appsrvear}" />
<!-- Note: Itis posible to add and use the following -->
<!-- "manifest" file specifier passed to the "ear" task -->
<!-- and control packaging by individual file names -->
<!-- developers maintain in the manifest.mf file. -->
<!-- manifest="${subdir.dist.appsrvear}/manifest.mf"> -->
<echo>${src.dir}/${app.name}/QuickLopWeb/${subdir.webm.wsadwebcontent}/xml</echo>
<echo>${src.dir}/${app.name}/QuickLopWS/${subdir.webm.wsadwebcontent}/xml</echo>
<!-- START Changes for PMO# 16.51 -->
<echo>${src.dir}/${app.name}/QuickLopDcidWS/${subdir.webm.wsadwebcontent}/xml</echo>
<!-- END Changes for PMO# 16.51 -->
<ear destfile= "${subdir.dist.appsrvear}/${appsrvear.file.name}"
appxml="${src.dir}/${app.name}/META-INF/application.xml"
update="false" >
<!-- This is a special properties file created to record -->
<!-- information about the build itself -->
<fileset dir= "${build.tmpdir}" >
<include name= "${pf.buildinfo}" />
</fileset>
<!-- Include files from the Enterprise Application -->
<!-- Sub-directory directly into the EAR file. -->
<fileset dir= "${src.dir}/${app.name}/" >
<exclude name="ant/**" />
<exclude name="bin/**" />
<exclude name="lib/**" />
<exclude name="tmp/**" />
<exclude name="**/.classpath" />
<exclude name="**/.modulemaps" />
<exclude name="**/.project" />
<exclude name="**/.serverPreference" />
<exclude name="**/.websettings" />
<exclude name="**/*.ecl" />
<exclude name="**/*.jar" />
<exclude name="META-INF/application.xml" />
<include name="**/**" />
</fileset>
<!-- CUSTOMIZE.dist.appsrvear.include.subdirs -->
<!-- Add/change filesets below to include the contents -->
<!-- of each Java and Web Module into the final EAR -->
<!-- file. The contents of any intermediate packaging -->
<!-- subdirectories should be created/staged by the -->
<!-- pkg.<TYPE>.<WEBPROJECT> targets -->
<!-- Include pre-packaged Web project war file(s) -->
<fileset dir= "${bld.dir}/QuickLopWeb/${subdir.pkg.appsrvear}"
includes= "*.war" >
</fileset>
<fileset dir= "${bld.dir}/QuickLopWS/${subdir.pkg.appsrvear}"
includes= "*.war" >
</fileset>
<!-- START Changes for PMO#16.51 -->
<fileset dir= "${bld.dir}/QuickLopDcidWS/${subdir.pkg.appsrvear}"
includes= "*.war" >
</fileset>
<!-- END Changes for PMO#16.51 -->
</ear>
<echo>Dist Dir 'appsrvear': ${subdir.dist.appsrvear}</echo>
<echo>Build Completed.</echo>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: dist.appsrvjartar -->
<!-- ************************************************************ -->
<!-- Application packaging, application server tar file -->
<!-- This target creates a tar file distribution of files -->
<!-- destined for the application server but are not deployed -->
<!-- as part of the EAR file. This mainly includes -->
<!-- specially deployed jar or class files created in the -->
<!-- Java Modules and may also possibly include certain content, -->
<!-- if the content cannot be included in the application ear file. -->
<!-- In order to prevent issues with the handling of long -->
<!-- file paths, we are standardizing on GNU tar being used -->
<!-- as the tar format for preparing these tar files and -->
<!-- uncompressing them on the target server. -->
<!-- CUSTOMIZE.dist.appsrvjartar -->
<!-- Most applications will not require this packaging target -->
<!-- and can remove it as dependency from the dist target. -->
<!-- Other applications should update the source tarfileset(s) -->
<!-- below as necessary in order to create a tar file for -->
<!-- deployment on the application server. -->
<target name= "dist.appsrvjartar"
if= "appsrvjartar.dist.prepare"
description= "Prepare Distribution: Tar of Jars/Content for App Server"
depends= "init,pkg.jar" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>dist.appsrvjartar</echo>
<echo>${header}</echo>
<echo>src.dir=${src.dir}</echo>
<echo>appsrvjartar.target.dir=${appsrvjartar.target.dir}</echo>
<echo>subdir.webm.wsadwebcontent=${subdir.webm.wsadwebcontent}</echo>
<echo>this dir is ${src.dir}/QuickLopWeb/${subdir.webm.wsadwebcontent}</echo>
<echo>this dir is ${src.dir}/QuickLopWS/${subdir.webm.wsadwebcontent}</echo>
<!-- START Changes for PMO#16.51 -->
<echo>this dir is ${src.dir}/QuickLopDcidWS/${subdir.webm.wsadwebcontent}</echo>
<!-- END Changes for PMO#16.51 -->
<mkdir dir="${subdir.dist.appsrvjartar}" />
<tar
destfile= "${subdir.dist.appsrvjartar}/${appsrvjartar.file.name}"
longfile= "gnu">
<!-- CUSTOMIZE.dist.appsrvjartar -->
<!-- Add in subdirectories and contents to be included in -->
<!-- the tar file to be deployed to the application server. -->
<!-- This tarfileset packages jar file(s) compiled and packaged -->
<!-- in the Java Module ./lib subdirectory. Change source -->
<!-- and target prefix as needed. -->
<tarfileset
dir="${src.dir}/QuickLopJava/${subdir.jarm.libs}"
prefix="${appsrvjartar.target.dir}/WEB-INF/lib"
preserveLeadingSlashes="true">
<include name="*.jar"/>
</tarfileset>
<!-- This target is added by pradeep for copying the index files to the web-inf classes dir under the quicklop dir -->
<tarfileset
dir="${src.dir}/QuickLopWeb/${subdir.webm.wsadwebcontent}/index_files"
prefix="${appsrvjartar.target.dir}/WEB-INF/classes"
preserveLeadingSlashes="true">
<include name="**/*.*"/>
</tarfileset>
<tarfileset
dir="${src.dir}/QuickLopWeb/${subdir.webm.wsadwebcontent}/dtd"
prefix="${appsrvjartar.target.dir}/dtd"
preserveLeadingSlashes="true">
<include name="**/*.*"/>
</tarfileset>
<tarfileset
dir="${src.dir}/QuickLopWeb/${subdir.webm.wsadwebcontent}/annfile"
prefix="${appsrvjartar.target.dir}/annfile"
preserveLeadingSlashes="true">
<include name="**/*.*"/>
</tarfileset>
<!-- This command is added by pradeep to include the web-inf\lib\*.jar inside the appsrvjartar -->
<tarfileset
dir="${src.dir}/QuickLopWeb/${subdir.webm.wsadwebcontent}/WEB-INF/lib"
prefix="${appsrvjartar.target.dir}/WEB-INF/lib"
preserveLeadingSlashes="true">
<include name="**/*.jar"/>
</tarfileset>
<!-- This tarfileset packages application content -->
<!-- files destined for the application server by means -->
<!-- of tar file distribution. Change source and -->
<!-- target prefix as needed. -->
<tarfileset
dir="${src.dir}/QuickLopWeb/${subdir.webm.wsadwebcontent}"
prefix="${appsrvjartar.target.dir}/QuickLopWeb"
preserveLeadingSlashes="true">
<include name="app_resources/**" />
</tarfileset>
<tarfileset
dir="${src.dir}/QuickLopWS/${subdir.webm.wsadwebcontent}/WEB-INF/lib"
prefix="${appsrvjartar.target.dir}/WEB-INF/lib"
preserveLeadingSlashes="true">
<include name="**/*.jar"/>
</tarfileset>
<!-- START: Changes for PMO#16.51 -->
<tarfileset
dir="${src.dir}/QuickLopDcidWS/${subdir.webm.wsadwebcontent}/WEB-INF/lib"
prefix="${appsrvjartar.target.dir}/WEB-INF/lib"
preserveLeadingSlashes="true">
<include name="**/*.jar"/>
</tarfileset>
<!-- END: Changes for PMO#16.51 -->
</tar>
<echo>Dist Dir 'appsrvjartar': ${subdir.dist.appsrvjartar}</echo>
<echo>Build Completed.</echo>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: dist.websrvcontenttar -->
<!-- ************************************************************ -->
<!-- Content files destined for Web Server only -->
<!-- This target prepares a tar file of content destined for -->
<!-- the web server. This likely includes html and image -->
<!-- content prepared in the webcontent/web subdirectory. -->
<!-- In order to prevent issues with the handling of long -->
<!-- file paths, we are standardizing on GNU tar being used -->
<!-- as the tar format for preparing these tar files and -->
<!-- uncompressing them on the target server. -->
<target name= "dist.websrvcontenttar"
if= "websrvcontenttar.dist.prepare"
description= "Prepare Distribution: Tar of Web Content for Web Server"
depends= "init" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>dist.websrvcontenttar</echo>
<echo>${header}</echo>
<echo></echo>
<mkdir dir="${subdir.dist.websrvcontenttar}" />
<!-- CUSTOMIZE.dist.websrvcontenttar -->
<!-- The sources for each module that should be included -->
<!-- in the content tar file must be individually specified -->
<!-- as tarfilesets below. -->
<!-- Be very careful how the the base and relative directories -->
<!-- are specified because they impact how the file is -->
<!-- extracted on the remote web server. -->
<!-- The tarfileset subdirectories included follow a -->
<!-- proposed directory organization which attempted to -->
<!-- separate app and web content out into certain -->
<!-- sub-directories. -->
<!-- Initially 'resources' was proposed as a subdirectory -->
<!-- for webcontent and it was assumed that anything under -->
<!-- 'resources' would be deployed to the web servers only. -->
<!-- It later turned out that using one subdirectory -->
<!-- named 'resources' didn't organize the content as -->
<!-- desired for packaging for later distribution onto -->
<!-- separate app and web servers (dtds & xsds were suddenly -->
<!-- needed on the app server and not the web server). -->
<!-- It was later decided separating content into distinct -->
<!-- 'web_resources' and 'app_resources' directories -->
<!-- would help better organize content for packaging. -->
<!-- Application groups should attempt to organize their -->
<!-- content into the later two subdirectories or -->
<!-- customize the subdirectories listed as needed. -->
<tar destfile= "${subdir.dist.websrvcontenttar}/${websrvcontenttar.file.name}"
longfile= "gnu">
<tarfileset
dir= "${src.dir}/QuickLopWeb/${subdir.webm.wsadwebcontent}"
prefix= "${websrvcontenttar.target.dir}"
preserveLeadingSlashes= "true" >
<include name="**/*.js" />
<include name="**/*.css" />
<include name="**/*.html" />
<include name="images/**" />
<include name="resources/**" />
<include name="web_resources/**" />
</tarfileset>
<tarfileset
dir= "${src.dir}/QuickLopWS/${subdir.webm.wsadwebcontent}"
prefix= "${websrvcontenttar.target.dir}"
preserveLeadingSlashes= "true" >
<include name="**/*.js" />
<include name="**/*.css" />
<include name="**/*.html" />
<include name="images/**" />
<include name="resources/**" />
<include name="web_resources/**" />
</tarfileset>
<!-- START Changes for PMO#16.51 -->
<tarfileset
dir= "${src.dir}/QuickLopDcidWS/${subdir.webm.wsadwebcontent}"
prefix= "${websrvcontenttar.target.dir}"
preserveLeadingSlashes= "true" >
<include name="**/*.js" />
<include name="**/*.css" />
<include name="**/*.html" />
<include name="images/**" />
<include name="resources/**" />
<include name="web_resources/**" />
</tarfileset>
<!-- END Changes for PMO#16.51 -->
</tar>
<echo>Dist Dir 'websrvcontenttar': ${subdir.dist.websrvcontenttar}</echo>
<echo>Build Completed.</echo>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: dist.websrvjartar -->
<!-- ************************************************************ -->
<!-- Special distribution to handle the case where Jars/Applets -->
<!-- must be built and deployed on the Web Servers. -->
<!-- Unless there is a really special need/requirement worked -->
<!-- out with the architects and server administrators, -->
<!-- application code should go into the application ear -->
<!-- or application tar file. -->
<!-- In order to prevent issues with the handling of long -->
<!-- file paths, we are standardizing on GNU tar being used -->
<!-- as the tar format for preparing these tar files and -->
<!-- uncompressing them on the target server. -->
<target name= "dist.websrvjartar"
if= "websrvjartar.dist.prepare"
description= "Prepare Distribution: Tar Jars/Applets for Web Server"
depends= "init,pkg.jar" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>dist.websrvjartar</echo>
<echo>${header}</echo>
<echo></echo>
<mkdir dir="${subdir.dist.websrvjartar}" />
<!-- CUSTOMIZE.dist.websrvjartar -->
<!-- The sources and prefix destination directories for each -->
<!-- module that should be included in the web server jar -->
<!-- tar file must be individually specified as tarfilesets below. -->
<!-- Be very careful how the the base and relative directories -->
<!-- are specified because they impact how the file is -->
<!-- extracted on the remote web server. -->
<tar destfile= "${subdir.dist.websrvjartar}/${websrvjartar.file.name}"
longfile= "gnu">
<!-- This tarfileset packages jar file(s) compiled and packaged -->
<!-- in the Java Module ./lib subdirectory. Change source -->
<!-- and target prefix as needed. -->
<tarfileset
dir="${bld.dir}/QuickLopJava/${subdir.jarm.libs}"
prefix="${websrvjartar.target.dir}/WEB-INF/lib"
preserveLeadingSlashes="true">
<include name="*.jar"/>
</tarfileset>
</tar>
<echo>Dist Dir 'websrvjartar': ${subdir.dist.websrvjartar}</echo>
<echo>Build Completed.</echo>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: pkg.jar -->
<!-- ************************************************************ -->
<!-- CUSTOMIZE.pkg.jar -->
<!-- Package All WEB Modules -->
<!-- This is a second-level grouping target which invokes -->
<!-- specific module packaging targets . -->
<!-- The property "compile.jars" must be set in init in order -->
<!-- for this target to invoke. -->
<!-- Please do not modify this target except to add in -->
<!-- dependency JAR module targets. -->
<target name= "pkg.jar"
if= "compile.jars"
description= "Package Modules: All Jars"
depends= "init,compile.jar" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>pkg.jar</echo>
<echo>${header}</echo>
<echo></echo>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: pkg.jarm.antcall -->
<!-- ************************************************************ -->
<!-- Generic target to support standard packaging of a JAR module. -->
<!-- This target should not be modified in any way. -->
<!-- It can be invoked by a a module-specific target -->
<!-- by means of antcall while setting the property: -->
<!-- <param name= "module.name" value= "<MODULENAME>"/> -->
<!-- If something custom must be done for a specific module, -->
<!-- this target can be copied to a new module target named -->
<!-- 'pkg.jarm.<MODULENAME>' and then modified as needed. -->
<!-- Special note on JAR modules: The 'compile.jar*' modules -->
<!-- take care of copiles of the *.class files and creating -->
<!-- the module *.jar file(s). This is because they may be -->
<!-- required by other compile modules and the *.jar files -->
<!-- must therefore be available for classpathing. -->
<target name= "pkg.jarm.antcall"
if= "compile.jars"
depends= "init" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>pkg.jarm.antcall: module.name= "${module.name}"</echo>
<echo>${header}</echo>
<echo></echo>
<!-- Empty target -->
<!-- The compile.jarm.antcall task is responsible for -->
<!-- compiling the *.java files to *.class files and also -->
<!-- generating the final *.lib directory which is used as -->
<!-- dependencies to other modules and packaged separately -->
<!-- if necessary. -->
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: pkg.web -->
<!-- ************************************************************ -->
<!-- Package All WEB Modules -->
<!-- This is a second-level grouping target which invokes -->
<!-- specific module packaging targets . -->
<!-- Please do not modify this target except to add in -->
<!-- dependency WEB module targets. -->
<!-- CUSTOMIZE.pkg.web -->
<!-- Update the "depends" of pkg.web to include the -->
<!-- individual WEB Module targets to package. -->
<!-- PMO#16.51 changes: Added pkg.webm.QuickLopDcidWS -->
<target name= "pkg.web"
if= "compile.webs"
description= "Package Modules: All WEB"
depends= "init,compile.web,pkg.webm.QuickLopWeb,pkg.webm.QuickLopWS,pkg.webm.QuickLopDcidWS" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>pkg.web</echo>
<echo>${header}</echo>
<echo></echo>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: pkg.webm.antcall -->
<!-- ************************************************************ -->
<!-- Hopefully a generic target to support temporary "staging" -->
<!-- and packaging of WSAD Web Project subdirectories into -->
<!-- war files. -->
<!-- It can be invoked by a module-specific pkg.webm.<MODULE> -->
<!-- target by means of antcall while setting the property: -->
<!-- <param name= "module.name" value= "<MODULENAME>"/> -->
<!-- If something custom must be done for a specific module, -->
<!-- this target can be copied to a new module target named -->
<!-- 'compile.webm.<MODULENAME>' and then modified as needed. -->
<target name= "pkg.webm.antcall"
if= "compile.webs"
depends= "init" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>pkg.webm.antcall: module.name= "${module.name}"</echo>
<echo>${header}</echo>
<echo></echo>
<!-- Create staging directory in build directory -->
<mkdir dir= "${bld.dir}/${module.name}/${subdir.stage.appsrvear}" />
<!-- Web module war packaging will always be from files -->
<!-- staged to the module stage subdirectory which is populated -->
<!-- from the source and build directories specified here. -->
<!-- DDJ Mon Jun 21 17:24:14 EDT 2004 -->
<!-- Convention for populating source directory used to be -->
<!-- to include everything in the webcontent src.dir -->
<!-- subdirectory other than those items filtered out below. -->
<!-- New convention requires the specification of -->
<!-- anything needing to be included. -->
<!-- <exclude name= "**/*.java" /> -->
<!-- <exclude name= "**/*.properties" /> -->
<!-- <exclude name= "**/imported_classes/**" /> -->
<!-- <exclude name= "**/properties/**" /> -->
<!-- <exclude name= "**/vendorlib/**" /> -->
<!-- <exclude name= "**/web.xml" /> -->
<!-- <exclude name= "**/html/**" /> -->
<!-- <exclude name= "**/images/**" /> -->
<!-- <exclude name= "**/resources/**" /> -->
<!-- CUSTOMIZE -->
<!-- Applications may need to customize directories and -->
<!-- files staged and included in with web module war files -->
<!-- by changing the filesets below. The 'stage' directory -->
<!-- is a temporary subdirectory used to assemble files -->
<!-- for packaging into the war file. -->
<!-- Note: The directory paths of src.dir and bld.dir may or -->
<!-- may not be the same. Be source that items taken from the -->
<!-- source repository are identified within the src.dir -->
<!-- fileset and items which are compiled and packaged to -->
<!-- the bld.dir are copied from the bld.dir to the stage. -->
<!-- Note: Some applications may wish to include the -->
<!-- compiled classes as files rather than as the packaged -->
<!-- jar files below. Let the jar packaging remain as-is in -->
<!-- the compile target but switch out the staging to use -->
<!-- this entry in the bld.dir fileset instead. -->
<!-- This is added by pradeep to copy the external jar from the Vendor Lib dir to web-inf\lib dir -->
<echo>Pradeep1 : todir= "${bld.dir}/${module.name}/${subdir.webm.wsadwebcontent}"</echo>
<echo>Pradeep1 : fromdir= "${src.dir}/${module.name}/${subdir.webm.wsadwebcontent}"</echo>
<!-- This target is used for copying the venorlib to the lib dir -->
<!-- < <copy
todir= "${bld.dir}/${module.name}/${subdir.webm.wsadwebcontent}/WEB-INF/lib/"
preservelastmodified= "true"
verbose= "false" >
<fileset
dir= "${src.dir}/${module.name}/${subdir.webm.wsadwebcontent}/WEB-INF/${subdir.jarm.vendorlibs}"
includes= "**/*.jar" >
</fileset>
</copy> -->
<copy
todir= "${bld.dir}/${module.name}/${subdir.stage.appsrvear}"
preservelastmodified= "true"
verbose= "false" >
<fileset
dir= "${src.dir}/${module.name}/${subdir.webm.wsadwebcontent}" >
<exclude name="xml/**"/>
<exclude name="schema/**"/>
<exclude name="dtd/**"/>
<include name= "**/*.jsp" />
<include name= "app_resources/**" />
<include name= "**/*.dtd" />
<include name= "**/*.xsd" />
<include name= "**/*.wsdl" />
</fileset>
<fileset
dir= "${bld.dir}/${module.name}/${subdir.webm.wsadwebcontent}" >
<include name= "WEB-INF/classes/**" />
<include name= "WEB-INF/*.xml" />
<include name= "WEB-INF/ibm-web-bnd.xmi" />
<include name= "WEB-INF/ibm-web-ext.xmi" />
</fileset>
</copy>
<!-- Create packaging directories in build directory -->
<mkdir dir= "${bld.dir}/${module.name}/${subdir.pkg.appsrvear}" />
<!-- Create the war file, put in the pkg subdirectory -->
<!-- Note: The web.xml is specified here and is not -->
<!-- copied into the stage directory as part of normal file contents. -->
<war destfile= "${bld.dir}/${module.name}/${subdir.pkg.appsrvear}/${module.name}.war"
basedir= "${bld.dir}/${module.name}/${subdir.stage.appsrvear}"
webxml= "${bld.dir}/${module.name}/${subdir.webm.wsadwebcontent}/WEB-INF/web.xml"
update= "false" >
<!-- START Changes for PMO#16.51 -->
<manifest>
<attribute name="UseWSFEP61ScanPolicy" value="true"/>
</manifest>
<!-- END Changes for PMO#16.51 -->
</war>
<!-- No need to retain the stage subdirectory for this package -->
<delete
dir= "${bld.dir}/${module.name}/${subdir.stage.appsrvear}"
quiet= "true"
failonerror= "false"
includeemptydirs= "true" >
</delete>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: update.buildinfo -->
<!-- ************************************************************ -->
<!-- Create a build information file which documents the build -->
<!-- settings to a properties file for inclusion in the final -->
<!-- application ear file packaging -->
<!-- Also maintain and update the build counter file. This -->
<!-- properties file counter gets incremented with each -->
<!-- invocation. -->
<target name="update.buildinfo"
depends="init">
<!-- Standard target header -->
<echo>${header}</echo>
<echo>update.buildinfo</echo>
<echo>${header}</echo>
<echo></echo>
<!-- Create the buildinfo file from scratch. -->
<!-- Note: Delete the file before using the 'propertyfile' -->
<!-- task, otherwise, 'propertyfile' will re-load and update -->
<!-- the values from the file rather than writing out an -->
<!-- empty file from scratch. -->
<!-- Delete before create -->
<delete
file= "${build.tmpdir}/${pf.buildinfo}"
quiet= "true"
failonerror= "false" >
</delete>
<!-- Initialize time stamp values -->
<tstamp>
<format property= "build.date" pattern= "yyyy-MM-dd" />
<format property= "build.time" pattern= "hh:mm:ss" />
</tstamp>
<!-- Delete puts a message out there anyway, let user know -->
<!-- the file is being re-created. -->
<echo>Creating: ${build.tmpdir}/${pf.buildinfo}</echo>
<!-- Note, keep text flush at left margin, echo preserves the -->
<!-- full formatting in-between the markers -->
<echo file= "${build.tmpdir}/${pf.buildinfo}" >Application Name: ${app.name}
Version: ${app.version}
Build ID: ${user.name}
Build Date: ${build.date}
Build Time: ${build.time}
Build Machine: ${hostname}
Source Repository Set: ${build.repset}
Addtl Build Info (optional): ${build.info}
</echo>
<!-- Display buildinfo back to user as build header -->
<loadfile
property= "full.build.info"
srcfile= "${build.tmpdir}/${pf.buildinfo}" >
</loadfile>
<echo/>
<echo>${full.build.info}</echo>
<echo/>
</target>
<!-- ************************************************************ -->
<!-- Target: clean -->
<!-- ************************************************************ -->
<!-- Clean out any generated files -->
<target name= "clean"
description= "Clean: All"
depends= "init,clean.compile,clean.dist">
<!-- Standard target header -->
<echo>${header}</echo>
<echo>clean</echo>
<echo>${header}</echo>
<echo></echo>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: clean.compile -->
<!-- ************************************************************ -->
<!-- Remove any compiled/built objects -->
<target name= "clean.compile"
description= "Clean: Compiled Objects"
depends= "init">
<!-- Standard target header -->
<echo>${header}</echo>
<echo>clean.compile</echo>
<echo>${header}</echo>
<echo></echo>
<!-- Delete certain pre-defined build subdirectories known to -->
<!-- contain compiled objects, regardles of module -->
<delete
quiet= "false"
failonerror= "false"
includeemptydirs= "true" >
<fileset
dir= "${bld.dir}"
includes = "**/classes/" >
</fileset>
<fileset
dir= "${bld.dir}"
includes= "**/lib/" >
</fileset>
<fileset
dir= "${bld.dir}"
includes= "**/${subdir.stage}/" >
</fileset>
<fileset
dir= "${bld.dir}"
includes= "**/${subdir.pkg}/" >
</fileset>
<!-- CUSTOMIZE.clean.compile -->
<!-- Web Module directories follow standard directory -->
<!-- conventions and already handled by the default -->
<!-- deletion rules defined above. -->
<!-- Java Modules do not contain subdirectories -->
<!-- of known name however and we can't guess the names -->
<!-- of these modules either. -->
<!-- You must specify the module directory names of -->
<!-- each Java module containing freely placed -->
<!-- *.class files needing deletion -->
<fileset
dir= "${bld.dir}/QuickLopJava"
includes= "**/*.class" >
</fileset>
</delete>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: clean.dist -->
<!-- ************************************************************ -->
<!-- Clean out dist directory any existing package directories -->
<target name= "clean.dist"
description= "Clean: Distribution Directories"
depends= "init">
<!-- Standard target header -->
<echo>${header}</echo>
<echo>clean.dist</echo>
<echo>${header}</echo>
<echo></echo>
<delete
quiet= "false"
failonerror= "false"
includeemptydirs= "true" >
<fileset
dir= "${dist.dir}" >
</fileset>
<fileset
dir= "${bld.dir}"
includes= "**/${subdir.pkg}/" >
</fileset>
<fileset
dir= "${bld.dir}"
includes= "**/${subdir.stage}/" >
</fileset>
</delete>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: clean.buildinfo -->
<!-- ************************************************************ -->
<!-- Remove the temporary build info directory with contents. -->
<!-- NOTE: The build counter is incremented from a file in -->
<!-- this directory. Invoking this target clears this counter. -->
<!-- This target is not part of the top-level clean target -->
<!-- because of this. -->
<target name= "clean.buildinfo"
description= "Clean: Temp Build Info Files, Reset Counter"
depends= "init">
<!-- Standard target header -->
<echo>${header}</echo>
<echo>clean.buildinfo</echo>
<echo>${header}</echo>
<echo></echo>
<delete
quiet= "false"
failonerror= "false"
includeemptydirs= "true" >
<fileset dir= "${build.tmpdir}/" includes= "**" />
</delete>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: showenv -->
<!-- ************************************************************ -->
<!-- Display current build settings -->
<target name= "showenv"
description= "Display current build settings"
depends= "init,showenv.basic,showenv.externalresources,showenv.packaging,showenv.classpath">
<echo>${header}</echo>
<echo>showenv</echo>
<echo>${header}</echo>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: showenv.basic -->
<!-- ************************************************************ -->
<!-- Display basic build information -->
<target name= "showenv.basic"
description= "Display basic build information"
depends= "init">
<echo>${header}</echo>
<echo>showenv.basic</echo>
<echo>${header}</echo>
<echo></echo>
<echo>Application Name: "${app.name}"</echo>
<echo>Application Version: "${app.version}"</echo>
<echo>Source Repository Set: "${build.repset}"</echo>
<echo>Addtl Build Info (optional): "${build.info}"</echo>
<echo></echo>
<echo>Hostname: "${hostname}"</echo>
<echo></echo>
<echo>Ant base directory: "${basedir}"</echo>
<echo>Source root directory: "${src.dir}"</echo>
<echo>Build root directory: "${bld.dir}"</echo>
<echo>Application Build Directory: "${app.build.dir}"</echo>
<echo>Ant file: "${ant.file}"</echo>
</target>
<!-- ************************************************************ -->
<!-- Target: showenv.externalresources -->
<!-- ************************************************************ -->
<!-- Display settings involving external resources -->
<target name= "showenv.externalresources"
description= "Display settings involving external resources"
depends= "init">
<echo>${header}</echo>
<echo>showenv.externalresources</echo>
<echo>${header}</echo>
<echo></echo>
<echo>O.S. Name: "${os.name}"</echo>
<echo>Hostname: "${hostname}"</echo>
<echo></echo>
<echo>Java version: "${ant.java.version}"</echo>
<echo>Env var env.JAVA_HOME: "${env.JAVA_HOME}"</echo>
<echo></echo>
<echo>Ant version: "${ant.version}"</echo>
<echo>Env var env.ANT_HOME: "${env.ANT_HOME}"</echo>
<echo></echo>
<echo>(External) Root Vendor/3pty Directory:</echo>
<echo>ext.rootdir.vendor: ${ext.rootdir.vendor}"</echo>
<echo></echo>
<echo>(External) DB2 Library Directory:</echo>
<echo>ext.libdir.db2: "${ext.libdir.db2}"</echo>
<echo></echo>
<echo>(External) MQ Series Library Directory:</echo>
<echo>ext.libdir.mq: "${ext.libdir.mq}"</echo>
<echo></echo>
<echo>(External) WAS Root Directory:</echo>
<echo>ext.rootdir.was: "${ext.rootdir.was}"</echo>
<echo></echo>
<echo>(External) Common Code Directory:</echo>
<echo>ext.libdir.common: "${ext.libdir.common}"</echo>
<echo></echo>
<echo>Application Properties File: "${pf.app}"</echo>
<echo></echo>
<echoproperties
prefix= "pf.app." >
</echoproperties>
<echo></echo>
<echo>User Properties File: "${pf.user}"</echo>
<echo></echo>
<echoproperties
prefix= "pf.user." >
</echoproperties>
<echo></echo>
<echo>App Dependencies File: "${pf.appdep}"</echo>
<echo></echo>
<echoproperties
prefix= "appdep." >
</echoproperties>
<echo></echo>
<echo>Inherited Environment:</echo>
<echo></echo>
<echoproperties
prefix= "env." >
</echoproperties>
</target>
<!-- ************************************************************ -->
<!-- Target: showenv.packaging -->
<!-- ************************************************************ -->
<!-- Display current packaging settings -->
<target name= "showenv.packaging"
description= "Display packaging information"
depends= "init">
<echo>${header}</echo>
<echo>showenv.packaging</echo>
<echo>${header}</echo>
<echo></echo>
<echo>appsrvear.dist.prepare: "${appsrvear.dist.prepare}"</echo>
<echo>appsrvear.file.name: "${appsrvear.file.name}"</echo>
<echo></echo>
<echo>appsrvjartar.dist.prepare: "${appsrvjartar.dist.prepare}"</echo>
<echo>appsrvjartar.file.name: "${appsrvjartar.file.name}"</echo>
<echo>appsrvjartar.target.dir: "${appsrvjartar.target.dir}"</echo>
<echo></echo>
<echo>websrvcontenttar.dist.prepare:"${websrvcontenttar.dist.prepare}"</echo>
<echo>websrvcontenttar.file.name: "${websrvcontenttar.file.name}"</echo>
<echo>websrvcontenttar.target.dir: "${websrvcontenttar.target.dir}"</echo>
<echo></echo>
<echo>websrvjartar.dist.prepare: "${websrvjartar.dist.prepare}"</echo>
<echo>websrvjartar.file.name: "${websrvjartar.file.name}"</echo>
<echo>websrvjartar.target.dir: "${websrvjartar.target.dir}"</echo>
</target>
<!-- ************************************************************ -->
<!-- Target: showenv.classpath -->
<!-- ************************************************************ -->
<!-- Display classpath information -->
<target name= "showenv.classpath"
description= "Display classpath information"
depends= "init">
<echo>${header}</echo>
<echo>showenv.classpath</echo>
<echo>${header}</echo>
<echo></echo>
<echo>Env var env.CLASSPATH: "${env.CLASSPATH}"</echo>
<echo></echo>
<echo>Property java.class.path: "${java.class.path}"</echo>
<echo></echo>
<pathconvert property="formatted.class.path.full"
pathsep="${line.separator} "
refid="class.path.full" />
<echo message="Refid class.path.full: ${formatted.class.path.full}" />
<echo></echo>
<pathconvert property="formatted.class.path.was"
pathsep="${line.separator} "
refid="class.path.was" />
<echo message="Refid class.path.was: ${formatted.class.path.was}" />
<echo></echo>
<pathconvert property="formatted.class.path.db2"
pathsep="${line.separator} "
refid="class.path.db2" />
<echo message="Refid class.path.db2: ${formatted.class.path.db2}" />
<echo></echo>
<pathconvert property="formatted.class.path.mq"
pathsep="${line.separator} "
refid="class.path.mq" />
<echo message="Refid class.path.mq: ${formatted.class.path.mq}" />
<echo></echo>
<pathconvert property="formatted.class.path.common"
pathsep="${line.separator} "
refid="class.path.common" />
<echo message="Refid class.path.common: ${formatted.class.path.common}" />
<echo></echo>
<pathconvert property="formatted.class.path.app"
pathsep="${line.separator} "
refid="class.path.app" />
<echo message="Refid class.path.app: ${formatted.class.path.app}" />
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: javadoc -->
<!-- ************************************************************ -->
<!-- Prepare Java documentation on classes -->
<!-- NOTE: This is a separate task provided for the convenience -->
<!-- of developers only. It is not invoked as part of the -->
<!-- production build process. -->
<target name= "javadoc"
depends= "init"
description= "Javadoc for my API">
<mkdir dir= "${doc.dir}"/>
<javadoc destdir= "${doc.dir}"
packagenames= "*">
<sourcepath>
<pathelement location= "${src.dir}"/>
</sourcepath>
</javadoc>
<echo></echo>
</target>
<!-- CUSTOMIZE.module.targets -->
<!-- Create specific targets of name: -->
<!-- compile.{jarm|webm}.<MODULE> -->
<!-- pkg.{jarm|webm}.<MODULE> -->
<!-- below this section. These modules can build and package using -->
<!-- the *.antcall task for each module type if they are standard -->
<!-- ************************************************************ -->
<!-- Target: compile.jarm.QuickLopJava -->
<!-- ************************************************************ -->
<target name= "compile.jarm.QuickLopJava"
if= "compile.jars"
description= "Compile JAR Module: QuickLopJava"
depends= "init" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>compile.jarm.QuickLopJava</echo>
<echo>${header}</echo>
<echo></echo>
<antcall target= "compile.jarm.antcall">
<param name= "module.name" value= "QuickLopJava"/>
<param name= "jar.name" value= "QuickLop"/>
</antcall>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: compile.webm.QuickLopWeb -->
<!-- ************************************************************ -->
<target name= "compile.webm.QuickLopWeb"
if= "compile.webs"
description= "Compile Web Module: QuickLopWeb"
depends= "init">
<!-- Standard target header -->
<echo>${header}</echo>
<echo>compile.webm.QuickLopWeb</echo>
<echo>${header}</echo>
<echo></echo>
<!-- <antcall target= "compile.webm.antcall">
<param name= "module.name" value= "QuickLopWeb"/>
</antcall>-->
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: compile.webm.QuickLopWS -->
<!-- ************************************************************ -->
<target name= "compile.webm.QuickLopWS"
if= "compile.webs"
description= "Compile Web Module: QuickLopWS"
depends= "init,compile.jarm.QuickLopJava">
<!-- Standard target header -->
<echo>${header}</echo>
<echo>compile.webm.QuickLopWS</echo>
<echo>${header}</echo>
<echo></echo>
<antcall target= "compile.webm.antcall">
<param name= "module.name" value= "QuickLopWS"/>
</antcall>
<echo></echo>
</target>
<!-- START: PMO#16.51 changes -->
<!-- ************************************************************ -->
<!-- Target: compile.webm.QuickLopDcidWS -->
<!-- ************************************************************ -->
<target name= "compile.webm.QuickLopDcidWS"
if= "compile.webs"
description= "Compile Web Module: QuickLopDcidWS"
depends= "init,compile.jarm.QuickLopJava">
<!-- Standard target header -->
<echo>${header}</echo>
<echo>compile.webm.QuickLopDcidWS</echo>
<echo>${header}</echo>
<echo></echo>
<antcall target= "compile.webm.antcall">
<param name= "module.name" value= "QuickLopDcidWS"/>
</antcall>
<echo></echo>
</target>
<!-- END: PMO#16.51 changes -->
<!-- ************************************************************ -->
<!-- Target: pkg.jarm.QuickLopJava -->
<!-- ************************************************************ -->
<target name= "pkg.jarm.QuickLopJava"
if= "compile.jars"
description= "Package JAR Module: QuickLopJava"
depends= "init,compile.jarm.QuickLopJava" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>pkg.jarm.QuickLopJava</echo>
<echo>${header}</echo>
<echo></echo>
<antcall target= "pkg.jarm.antcall">
<param name= "module.name" value= "QuickLopJava"/>
</antcall>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: pkg.webm.QuickLopWeb -->
<!-- ************************************************************ -->
<!-- Create WAR file(s): QuickLopWeb -->
<target name= "pkg.webm.QuickLopWeb"
if= "compile.webs"
description= "Stage, create war file: QuickLopWeb"
depends= "init,compile.webm.QuickLopWeb" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>pkg.webm.QuickLopWeb</echo>
<echo>${header}</echo>
<echo></echo>
<!-- CUSTOMIZE.pkg.webmodule -->
<!-- QuickLopWeb is set up to copy QuickLopJava -->
<!-- jar files prepared in the Jar Module ./lib subdirectory -->
<!-- into the local Web Project ./lib subdirectory for -->
<!-- inclusion/packagin into this module's war file -->
<!-- You can delete this copy command if you wish -->
<!-- or else copy/modify as needed in order to populate -->
<!-- your Web Module with jar files compiled within your -->
<!-- application directory. -->
<!--<copy
todir= "${bld.dir}/QuickLopWeb/${subdir.webm.libs}"
preservelastmodified= "true"
verbose= "false" >
<fileset
dir= "${bld.dir}/QuickLopJava/${subdir.jarm.libs}"
includes= "**/*.jar" >
</fileset>
</copy>-->
<antcall target= "pkg.webm.antcall">
<param name= "module.name" value= "QuickLopWeb"/>
</antcall>
<echo></echo>
</target>
<!-- ************************************************************ -->
<!-- Target: pkg.webm.QuickLopWS -->
<!-- ************************************************************ -->
<!-- Create WAR file(s): QuickLopWS -->
<target name= "pkg.webm.QuickLopWS"
if= "compile.webs"
description= "Stage, create war file: QuickLopWS"
depends= "init,compile.webm.QuickLopWS" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>pkg.webm.QuickLopWS</echo>
<echo>${header}</echo>
<echo></echo>
<antcall target= "pkg.webm.antcall">
<param name= "module.name" value= "QuickLopWS"/>
</antcall>
<echo></echo>
</target>
<!-- START: PMO#16.51 changes -->
<!-- ************************************************************ -->
<!-- Target: pkg.webm.QuickLopDcidWS -->
<!-- ************************************************************ -->
<!-- Create WAR file(s): QuickLopDcidWS -->
<target name= "pkg.webm.QuickLopDcidWS"
if= "compile.webs"
description= "Stage, create war file: QuickLopDcidWS"
depends= "init,compile.webm.QuickLopDcidWS" >
<!-- Standard target header -->
<echo>${header}</echo>
<echo>pkg.webm.QuickLopDcidWS</echo>
<echo>${header}</echo>
<echo></echo>
<antcall target= "pkg.webm.antcall">
<param name= "module.name" value= "QuickLopDcidWS"/>
</antcall>
<echo></echo>
</target>
<!-- END: PMO#16.51 changes -->
<!-- JUnit Integration -->
<!-- FTT changes -->
<target name="functional-test-compile" >
<echo>start functional Test.</echo>
<javac srcdir="${bld.dir}/functionalTest" destdir="${bld.dir}/functionalTest" debug="true" includeantruntime="false" verbose = "${full-compile}">
<classpath refid="seleniumTest.classpath"/>
</javac>
</target>
<target name="integration-test" depends ="resolve,init,functional-test-compile">
<java classname="TestScripts.RunScript" >
<classpath>
<pathelement location="${bld.dir}/functionalTest"/>
<path id="class.path.common">
<fileset dir="${ext.libdir.common}">
<include name="**/*.jar" />
</fileset>
</path>
</classpath>
</java>
</target>
<!-- FTT changes -->
</project>Editor is loading...
Leave a Comment