2cacab200fb387e290386593d9b2fca2e7beef33csovant<!--
2cacab200fb387e290386593d9b2fca2e7beef33csovant ! CDDL HEADER START
2cacab200fb387e290386593d9b2fca2e7beef33csovant !
2cacab200fb387e290386593d9b2fca2e7beef33csovant ! The contents of this file are subject to the terms of the
2cacab200fb387e290386593d9b2fca2e7beef33csovant ! Common Development and Distribution License, Version 1.0 only
2cacab200fb387e290386593d9b2fca2e7beef33csovant ! (the "License"). You may not use this file except in compliance
2cacab200fb387e290386593d9b2fca2e7beef33csovant ! with the License.
2cacab200fb387e290386593d9b2fca2e7beef33csovant !
3437829f938dbb44527d91fbbc5f430a1243c5a5JnRouvignac ! You can obtain a copy of the license at legal-notices/CDDLv1_0.txt
3437829f938dbb44527d91fbbc5f430a1243c5a5JnRouvignac ! or http://forgerock.org/license/CDDLv1.0.html.
2cacab200fb387e290386593d9b2fca2e7beef33csovant ! See the License for the specific language governing permissions
2cacab200fb387e290386593d9b2fca2e7beef33csovant ! and limitations under the License.
2cacab200fb387e290386593d9b2fca2e7beef33csovant !
2cacab200fb387e290386593d9b2fca2e7beef33csovant ! When distributing Covered Code, include this CDDL HEADER in each
3437829f938dbb44527d91fbbc5f430a1243c5a5JnRouvignac ! file and include the License file at legal-notices/CDDLv1_0.txt.
3437829f938dbb44527d91fbbc5f430a1243c5a5JnRouvignac ! If applicable, add the following below this CDDL HEADER, with the
3437829f938dbb44527d91fbbc5f430a1243c5a5JnRouvignac ! fields enclosed by brackets "[]" replaced with your own identifying
3437829f938dbb44527d91fbbc5f430a1243c5a5JnRouvignac ! information:
2cacab200fb387e290386593d9b2fca2e7beef33csovant ! Portions Copyright [yyyy] [name of copyright owner]
2cacab200fb387e290386593d9b2fca2e7beef33csovant !
2cacab200fb387e290386593d9b2fca2e7beef33csovant ! CDDL HEADER END
2cacab200fb387e290386593d9b2fca2e7beef33csovant !
2cacab200fb387e290386593d9b2fca2e7beef33csovant !
23f633e1b8cc53fdac740eca4ab7e0341890bba2csovant ! Copyright 2008-2009 Sun Microsystems, Inc.
3c02f25171bf94ddbf7a49974e8b2f7da31d1276csovant ! Portions Copyright 2013 ForgeRock AS
2cacab200fb387e290386593d9b2fca2e7beef33csovant ! -->
2cacab200fb387e290386593d9b2fca2e7beef33csovant<project name="staf">
2cacab200fb387e290386593d9b2fca2e7beef33csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <description>
2cacab200fb387e290386593d9b2fca2e7beef33csovant Manage STAF (install/uninstall, start/stop).
2cacab200fb387e290386593d9b2fca2e7beef33csovant </description>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <!-- Install STAF and services -->
2cacab200fb387e290386593d9b2fca2e7beef33csovant <target name="install">
2cacab200fb387e290386593d9b2fca2e7beef33csovant <if>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <not>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <available file="${staf.install.dir}/${staf.name}/bin/STAF.cfg"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </not>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <then>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <mkdir dir="${tmp.dir}"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <!-- Install STAF -->
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Installing staf, please wait...</echo>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <mkdir dir="${staf.install.dir}/${staf.name}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <if>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <equals arg1="${os.family}" arg2="windows"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <then>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <exec executable="${archives.dir}/${staf.archive}"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant resultproperty="rc">
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="-i"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="silent"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="-DACCEPT_LICENSE=1"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="-DUSER_INSTALL_DIR=${staf.install.dir}/${staf.name}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="-DREGISTER=0"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="-DUPDATE_ENVIRONMENT=User"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="-DSTART_ON_LOGIN=0"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="-DSCREATE_START_MENU_ICONS=0"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </exec>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </then>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <else>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <gunzip src="${archives.dir}/${staf.archive}" dest="${tmp.dir}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <untar dest="${tmp.dir}">
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <fileset dir="${tmp.dir}">
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <include name="*.tar"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </fileset>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </untar>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <chmod file="${tmp.dir}/staf/STAFInst" perm="755"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <exec executable="${tmp.dir}/staf/STAFInst"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant resultproperty="rc">
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="-source"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="${tmp.dir}/staf"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="-target"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="${staf.install.dir}/${staf.name}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="-acceptlicense"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </exec>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <delete dir="${repository.dir}/staf"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </else>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </if>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <fail message="STAF installation failed">
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <condition>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <and>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <not>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <equals arg1="${rc}" arg2="0"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </not>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </and>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </condition>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </fail>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </then>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <else>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <echo>Staf is already installed in [${staf.install.dir}/${staf.name}]</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </else>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </if>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <!-- Install services -->
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <echo>Installing services, please wait...</echo>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <var name="list" value="${stax.archive},${email.archive}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <var name="list" value="${list},${event.archive},${eventmanager.archive}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <var name="list" value="${list},${http.archive}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <for list="${list}" param="archive">
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <sequential>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <var name="name" unset="true"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <propertyregex property="name"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant input="@{archive}"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant regexp="(.*)V(.*)\..*"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant select="\1-v\2"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant casesensitive="true"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <if>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <not>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <available file="${staf.install.dir}/${name}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </not>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <then>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <unzip src="${archives.dir}/@{archive}"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant dest="${staf.install.dir}">
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <chainedmapper>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <flattenmapper/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <globmapper from="*" to="${name}/*"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <mapper>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <globmapper from="*" to="*"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </mapper>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </chainedmapper>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </unzip>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </then>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <else>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <echo>${name} is already installed in [${staf.install.dir}/${name}]</echo>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </else>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </if>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </sequential>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </for>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <delete includeemptydirs="true">
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <fileset dir="${tmp.dir}" includes="**/*"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </delete>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </target>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <!-- Uninstall STAF and services -->
2cacab200fb387e290386593d9b2fca2e7beef33csovant <target name="uninstall">
2cacab200fb387e290386593d9b2fca2e7beef33csovant <if>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <available file="${staf.install.dir}/${staf.name}/bin/STAF.cfg"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <then>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Uninstalling staf, please wait...</echo>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <exec executable="${staf.install.dir}/${staf.name}/STAFUninst"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <delete dir="${staf.install.dir}/${staf.name}"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </then>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <else>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Staf is not installed</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </else>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </if>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </target>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <!-- Start STAF -->
2cacab200fb387e290386593d9b2fca2e7beef33csovant <target name="start">
23f633e1b8cc53fdac740eca4ab7e0341890bba2csovant <!-- Copy staf.cfg -->
23f633e1b8cc53fdac740eca4ab7e0341890bba2csovant <mkdir dir="${staf.config.dir}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <copy file="${staf.config.stubs}" tofile="${staf.config.file}" overwrite="true">
23f633e1b8cc53fdac740eca4ab7e0341890bba2csovant <filterchain>
23f633e1b8cc53fdac740eca4ab7e0341890bba2csovant <expandproperties/>
23f633e1b8cc53fdac740eca4ab7e0341890bba2csovant </filterchain>
23f633e1b8cc53fdac740eca4ab7e0341890bba2csovant </copy>
23f633e1b8cc53fdac740eca4ab7e0341890bba2csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <if>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <not>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <socket port="${staf.port}" server="${host.name}"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </not>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <then>
d7f8272d9e49a1317c353727f579275c4844be6bgary.williams <var name="cp" value="${project.home}/resource/dsml/lib/j2ee.jar:${project.home}/resource/dsml/lib/jaxb-api.jar:${project.home}/resource/dsml/lib/jaxb-impl.jar:${project.home}/resource/dsml/lib/jaxb-xjc.jar:${project.home}/resource/dsml/lib/jaxb1-impl.jar:${project.home}/resource/dsml/lib/jsr173_1.0_api.jar:${project.home}/resource/dsml/lib/saaj-1.3.jar:${project.home}/resource/dsml/lib/saaj-impl-1.3.jar"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Starting staf, please wait...</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <exec dir="${staf.bin.dir}"
2cacab200fb387e290386593d9b2fca2e7beef33csovant executable="${staf.daemon}"
2cacab200fb387e290386593d9b2fca2e7beef33csovant spawn="true">
2cacab200fb387e290386593d9b2fca2e7beef33csovant <arg value="${staf.config.file}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <env key="${var.path}" path="${java.path}/bin:${staf.install.dir}/${staf.name}/bin"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <env key="LD_LIBRARY_PATH" path="${staf.lib.dir}"/>
3c02f25171bf94ddbf7a49974e8b2f7da31d1276csovant <env key="CLASSPATH" path="${staf.lib.dir}/JSTAF.jar:${shared.dir}/resource/svnkit.jar:${cp}:."/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <env key="STAFCONVDIR" value="${staf.install.dir}/${staf.name}/codepage"/>
23f633e1b8cc53fdac740eca4ab7e0341890bba2csovant <env key="LANG" value="en_US.ISO8859-1"/>
23f633e1b8cc53fdac740eca4ab7e0341890bba2csovant <env key="LC_ALL" value="en_US.ISO8859-1"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <env key="STAFCODEPAGE" value="LATIN_1"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <env key="STAF_INSTANCE_NAME" value="STAF"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </exec>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Waiting for service to become available...</echo>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <waitfor maxwait="1"
2cacab200fb387e290386593d9b2fca2e7beef33csovant maxwaitunit="minute"
2cacab200fb387e290386593d9b2fca2e7beef33csovant checkevery="10"
2cacab200fb387e290386593d9b2fca2e7beef33csovant checkeveryunit="second"
2cacab200fb387e290386593d9b2fca2e7beef33csovant timeoutproperty="timeout">
2cacab200fb387e290386593d9b2fca2e7beef33csovant <socket server="${host.name}" port="${staf.port}"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </waitfor>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <if>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <isset property="timeout"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <then>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <fail>"STAF initialisation failed"</fail>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </then>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <else>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <echo>STAF is now ready to serve requests</echo>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </else>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </if>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </then>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <else>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Staf is already listening on port [${staf.port}]</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </else>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </if>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </target>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <!-- Stop STAF -->
2cacab200fb387e290386593d9b2fca2e7beef33csovant <target name="stop">
2cacab200fb387e290386593d9b2fca2e7beef33csovant <if>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <socket port="${staf.port}" server="${host.name}"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <then>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Stopping staf, please wait...</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <exec executable="${staf.executable}">
2cacab200fb387e290386593d9b2fca2e7beef33csovant <arg line="local shutdown shutdown"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <env key="${var.path}" path="${java.path}/bin:${staf.install.dir}/${staf.name}/bin"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <env key="LD_LIBRARY_PATH" path="${staf.lib.dir}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <env key="CLASSPATH" path="${staf.lib.dir}/JSTAF.jar:."/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <env key="STAFCONVDIR" value="${staf.install.dir}/${staf.name}/codepage"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </exec>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Waiting for service to shutdown gracefully...</echo>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <waitfor maxwait="1"
2cacab200fb387e290386593d9b2fca2e7beef33csovant maxwaitunit="minute"
2cacab200fb387e290386593d9b2fca2e7beef33csovant checkevery="10"
2cacab200fb387e290386593d9b2fca2e7beef33csovant checkeveryunit="second"
2cacab200fb387e290386593d9b2fca2e7beef33csovant timeoutproperty="timeoutSocketListening">
2cacab200fb387e290386593d9b2fca2e7beef33csovant <not>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <socket server="${host.name}" port="${staf.port}"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </not>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </waitfor>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>STAF stopped</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </then>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <else>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Staf is not running</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </else>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </if>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </target>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <!-- Display STAF status -->
2cacab200fb387e290386593d9b2fca2e7beef33csovant <target name="status">
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Operating System Family - ${os.myname}</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Operating System Name - ${os.name}</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Operating System Version - ${os.version}</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Machine Architecture - ${os.arch}</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Java Home - ${java.path}</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Java Version - ${java.version}</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo></echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <if>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <available file="${staf.install.dir}/${staf.name}/bin/STAF.cfg"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <then>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <echo>Staf is installed in [${staf.install.dir}/${staf.name}]</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </then>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <else>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Staf is not installed</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </else>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </if>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <if>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <socket port="${staf.port}" server="${host.name}"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <then>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Staf is listening on port [${staf.port}]</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </then>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <else>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <echo>Staf is not running</echo>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </else>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </if>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <echo></echo>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <var name="list" value="${stax.archive},${email.archive}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <var name="list" value="${list},${event.archive},${eventmanager.archive}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <var name="list" value="${list},${http.archive}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <for list="${list}" param="archive">
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <sequential>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <var name="shortname" unset="true"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <var name="name" unset="true"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <propertyregex property="shortname"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant input="@{archive}"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant regexp="(.*)V.*\..*"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant select="\1"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant casesensitive="true"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <propertyregex property="name"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant input="@{archive}"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant regexp="(.*)V(.*)\..*"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant select="\1-v\2"
f5aaa49dba43db0e99f06476534a8749820515dbcsovant casesensitive="true"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <if>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <not>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <available file="${staf.install.dir}/${name}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </not>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <then>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <echo>${shortname} is not installed</echo>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </then>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <else>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <echo>${shortname} is installed in [${staf.install.dir}/${name}]</echo>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </else>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </if>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </sequential>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant </for>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </target>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <!-- Display STAF gui -->
2cacab200fb387e290386593d9b2fca2e7beef33csovant <target name="gui">
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <exec dir="${staf.install.dir}/${staf.name}"
2cacab200fb387e290386593d9b2fca2e7beef33csovant executable="${java.path}/bin/java"
2cacab200fb387e290386593d9b2fca2e7beef33csovant spawn="true">
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <env key="${var.path}" path="${java.path}$/bin:${staf.install.dir}/${staf.name}/bin"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <env key="LD_LIBRARY_PATH" path="${staf.lib.dir}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <env key="CLASSPATH" path="${staf.lib.dir}/JSTAF.jar:."/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <env key="STAFCONVDIR" value="${staf.install.dir}/${staf.name}/codepage"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <arg value="-classpath"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <arg value="${staf.install.dir}/${stax.name}/STAXMon.jar:${staf.lib.dir}/JSTAF.jar"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <arg value="com.ibm.staf.service.stax.STAXMonitor"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </exec>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </target>
2cacab200fb387e290386593d9b2fca2e7beef33csovant
2cacab200fb387e290386593d9b2fca2e7beef33csovant <!-- Display jvmlogs -->
2cacab200fb387e290386593d9b2fca2e7beef33csovant <target name="jvmlogs">
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <exec dir="${staf.install.dir}/${staf.name}"
2cacab200fb387e290386593d9b2fca2e7beef33csovant executable="${java.path}/bin/java"
2cacab200fb387e290386593d9b2fca2e7beef33csovant spawn="true">
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <env key="${var.path}" path="${java.path}/bin:${staf.install.dir}/${staf.name}/bin"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <env key="LD_LIBRARY_PATH" path="${staf.lib.dir}"/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <env key="CLASSPATH" path="${staf.lib.dir}/JSTAF.jar:."/>
f5aaa49dba43db0e99f06476534a8749820515dbcsovant <env key="STAFCONVDIR" value="${staf.install.dir}/${staf.name}/codepage"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <arg value="-classpath"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <arg value="${staf.lib.dir}${path.separator}${staf.lib.dir}/JSTAF.jar"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant <arg value="com.ibm.staf.STAFJVMLogViewer"/>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </exec>
2cacab200fb387e290386593d9b2fca2e7beef33csovant </target>
2cacab200fb387e290386593d9b2fca2e7beef33csovant</project>