<!--

    Copyright (c) 2017, 2021 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->

<property environment="env" />
<target name="init-common" depends="setToolProperty,setS1ASclassPath">
    <!-- Appserver setup properties -->
    <echo message="Loading props from file ${env.APS_HOME}/config.properties" level="verbose" />
    <property name="pe" value="Platform Edition of S1AS" />
    <property file="${env.APS_HOME}/config.properties" />
    <echo message="admin.domain ${admin.domain}" level="verbose" />
    <echo message="admin.user ${admin.user}" level="verbose" />
    <echo message="admin.port ${admin.port}" level="verbose" />
    <echo message="http.port ${http.port}" level="verbose" />
    <echo message="http.host ${http.host}" level="verbose" />

    <echo file="${admin.password.file}" append="false">AS_ADMIN_PASSWORD=${admin.password}
AS_ADMIN_ADMINPASSWORD=${admin.password}
AS_ADMIN_MASTERPASSWORD=${master.password}</echo>

    <property name="as.props"
        value="--user ${admin.user} --passwordfile ${admin.password.file} --host ${admin.host} --port ${admin.port} --echo=true --terse=true" />

    <property name="authrealmname" value="file" />
    <property name="apptype" value="application" />
    <!-- pointbase properties -->
    <property name="db.root" value="${env.S1AS_HOME}/../javadb" />
    <property name="db.dir" value="${env.APS_HOME}/build" />
    <property name="db.classpath"
        value="${db.root}/lib/derby.jar:${db.root}/lib/derbyclient.jar:${db.root}/lib/derbynet.jar:${env.APS_HOME}/sqetests/connector/lib/cci-derby-proc.jar" />

    <property file="${env.APS_HOME}/config/derby.properties" />

    <!-- set home directory for the AVK -->
    <property name="javke.home" value="${env.JAVKE_HOME}" />

    <!-- resource properties -->
    <property name="dest.type" value="queue" />
    <property name="dest.name" value="Queue" />
    <property name="jms.factory.name" value="jms/QCFactory" />
    <property name="jms.factory.type" value="jakarta.jms.QueueConnectionFactory" />
    <property name="jms.resource.name" value="jms/SampleQueue" />
    <property name="jms.resource.type" value="jakarta.jms.Queue" />

    <property name="jdbc.conpool.name" value="ql-jdbc-pool" />
    <property name="jdbc.resource.name" value="jdbc/s1qeDB" />
    <property name="jdbc.resource.type" value="javax.sql.DataSource" />
    <property name="pm.resource.name" value="jdo/s1qePM" />
    <property name="pm.factory.class"
        value="com.sun.jdo.spi.persistence.support.sqlstore.impl.PersistenceManagerFactoryImpl" />

    <!-- appclient properties -->
    <property name="appclient.application.args" value="" />

    <!-- Test Harnes properties -->
    <property name="build.base.dir" value="${env.APS_HOME}/build/module" />
    <property name="build.webapps.dir" value="${env.APS_HOME}/build/wars" />
    <property name="build.classes.dir" value="${build.base.dir}/classes" />
    <property name="assemble.dir" value="${build.base.dir}/archive" />
    <property name="results.dir" value="${build.base.dir}/results" />
    <property name="s1astest.classpath"
        value="${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar:${s1as.classpath}:${db.classpath}:${Derby.classpath}" />
    <property name="ejbjar.classes" value="**/*Local*.class,**/*Remote*.class,**/*Home*.class,**/*Bean*.class" />
    <property name="appclientjar.classes"
        value="**/*Local*.class,**/*Home*.class,**/*Remote*.class,**/*Client*.class" />
    <property name="webclient.war.files" value="${build.classes.dir}" />
    <property name="webclient.war.classes" value="**/*Servlet*.class" />

    <property name="test.name" value="" />
    <property name="test.description" value="" />
    <property name="test.count" value="1" />

    <!-- SE/EE specific properties -->
    <property name="cluster.name" value="cluster1" />
    <property name="clustered.server.name" value="server1" />
    <property name="clustered.server.name.two" value="server2" />
    <property name="nodeagent.name" value="agent1" />
    <property name="das.host" value="localhost" />
    <property name="das.jmx.port" value="8686" />
    <property name="http.listener1.port" value="38080" />
    <property name="http.listener2.port" value="38181" />
    <property name="orb.listener1.port" value="33700" />
    <property name="ssl.port" value="33820" />
    <property name="ssl.mutualauth.port" value="33920" />
    <property name="jmx.system.connector.port" value="38686" />
    <property name="http.listener1.port.two" value="38081" />
    <property name="http.listener2.port.two" value="38182" />
    <property name="orb.listener1.port.two" value="33701" />
    <property name="ssl.port.two" value="33821" />
    <property name="ssl.mutualauth.port.two" value="33921" />
    <property name="jmx.system.connector.port.two" value="38687" />
    <property name="cert.nickname" value="s1as" />

    <copy
        file="${env.MVN_REPOSITORY}/org/glassfish/main/tests/connectors/cciblackbox-tx/${gf.version}/cciblackbox-tx-${gf.version}.jar"
        tofile="${bundles.dir}/cciblackbox-tx.jar" />
    <copy
        file="${env.MVN_REPOSITORY}/org/glassfish/main/tests/connectors/connectors-ra-redeploy-jars/${gf.version}/connectors-ra-redeploy-jars-${gf.version}.jar"
        tofile="${bundles.dir}/connectors-ra-redeploy-jars.jar" />
    <copy
        file="${env.MVN_REPOSITORY}/org/glassfish/main/tests/connectors/connectors-ra-redeploy-rars/${gf.version}/connectors-ra-redeploy-rars-${gf.version}.rar"
        tofile="${bundles.dir}/connectors-ra-redeploy-rars.rar" />
    <copy
        file="${env.MVN_REPOSITORY}/org/glassfish/main/tests/connectors/connectors-ra-redeploy-rars/${gf.version}/connectors-ra-redeploy-rars-${gf.version}-v2.rar"
        tofile="${bundles.dir}/connectors-ra-redeploy-rars-v2.rar" />
    <copy
        file="${env.MVN_REPOSITORY}/org/glassfish/main/tests/connectors/connectors-ra-redeploy-rars/${gf.version}/connectors-ra-redeploy-rars-${gf.version}-nojar.rar"
        tofile="${bundles.dir}/connectors-ra-redeploy-rars-nojar.rar" />
    <copy
        file="${env.MVN_REPOSITORY}/org/glassfish/main/tests/connectors/connectors-ra-redeploy-rars-xa/${gf.version}/connectors-ra-redeploy-rars-xa-${gf.version}.rar"
        tofile="${bundles.dir}/connectors-ra-redeploy-rars-xa.rar" />
</target>

<target name="setS1ASclassPath" unless="s1as.classpath">
    <path id="s1as_classpath_jars">
        <fileset dir="${env.S1AS_HOME}/modules" includes="**/*.jar" />
    </path>
    <pathconvert pathsep=":" property="s1as.classpath" refid="s1as_classpath_jars" />
</target>

<target name="setToolProperty" depends="setOSConditions,setToolWin,setToolUnix">
</target>

<!-- This was needed to make sure that we can differentiate between .exe/.bat for windows and .sh for solaris. -->
<target name="setOSConditions">
    <condition property="isUnix">
        <os family="unix" />
    </condition>

    <condition property="isWindows">
        <os family="windows" />
    </condition>
</target>

<target name="setToolWin" if="isWindows">
    <!--
        Some tests launch app clients by directly running the appclient script, using the APPCLIENT property.
        Others do so by invoking the runclient-common target.

        We use the test script (not appclient) if the user wants to launch app clients
        using Java Web Start.
    -->
    <condition property="APPCLIENT" value="${env.APS_HOME}/config/jws-appclient.bat"
        else="${env.S1AS_HOME}/bin/appclient.bat">
        <isset property="use.javaws" />
    </condition>

    <property name="ASADMIN" value="${env.S1AS_HOME}/bin/asadmin.bat" />
    <property name="ASANT" value="${env.S1AS_HOME}/bin/asant.bat" />
    <property name="CAPTURESCHEMA" value="${env.S1AS_HOME}/bin/capture-schema.bat" />
    <property name="CHECKPATCH" value="${env.S1AS_HOME}/bin/checkpatch.bat" />
    <property name="INSTALLPATCH" value="${env.S1AS_HOME}/bin/installpatch.bat" />
    <property name="JSPC" value="${env.S1AS_HOME}/bin/jspc.bat" />
    <property name="LISTPATCH" value="${env.S1AS_HOME}/bin/listpatch.bat" />
    <property name="PACKAGE-APPCLIENT" value="${env.S1AS_HOME}/bin/package-appclient.bat" />
    <property name="VERIFIER" value="${env.S1AS_HOME}/bin/verifier.bat" />
    <property name="RMIC" value="${env.S1AS_HOME}/jdk/bin/rmic.exe" />
    <property name="TNAMESERV" value="${env.S1AS_HOME}/jdk/bin/tnameserv.exe" />

    <property name="WSCOMPILE" value="${env.S1AS_HOME}/bin/wscompile.bat" />
    <property name="WSGEN" value="${env.S1AS_HOME}/bin/wsgen.bat" />
    <property name="WSIMPORT" value="${env.S1AS_HOME}/bin/wsimport.bat" />
    <property name="pb.start.server" value="${env.S1AS_HOME}/pointbase/server/StartServer.bat" />
    <property name="pb.start.server1" value="${env.S1AS_HOME}/pointbase/server/StartServer1.bat" />
    <property name="IMQDBMGR" value="${env.S1AS_HOME}/imq/bin/imqdbmgr.bat" />
    <property name="ld.library.path" location="${env.S1AS_HOME}/lib;${env.S1AS_HOME}/bin" />
</target>

<target name="setToolUnix" if="isUnix">
    <condition property="APPCLIENT" value="${env.APS_HOME}/config/jws-appclient"
        else="${env.S1AS_HOME}/bin/appclient">
        <isset property="use.javaws" />
    </condition>
    <property name="ASADMIN" value="${env.S1AS_HOME}/bin/asadmin" />
    <property name="ASANT" value="${env.S1AS_HOME}/bin/asant" />
    <property name="CAPTURESCHEMA" value="${env.S1AS_HOME}/bin/capture-schema" />
    <property name="CHECKPATCH" value="${env.S1AS_HOME}/bin/checkpatch" />
    <property name="INSTALLPATCH" value="${env.S1AS_HOME}/bin/installpatch" />
    <property name="JSPC" value="${env.S1AS_HOME}/bin/jspc" />
    <property name="LISTPATCH" value="${env.S1AS_HOME}/bin/listpatch" />
    <property name="PACKAGE-APPCLIENT" value="${env.S1AS_HOME}/bin/package-appclient" />
    <property name="VERIFIER" value="${env.S1AS_HOME}/bin/verifier" />
    <property name="RMIC" value="${env.S1AS_HOME}/jdk/bin/rmic" />
    <property name="TNAMESERV" value="${env.S1AS_HOME}/jdk/bin/tnameserv" />
    <property name="WSCOMPILE" value="${env.S1AS_HOME}/bin/wscompile" />
    <property name="WSGEN" value="${env.S1AS_HOME}/bin/wsgen" />
    <property name="WSIMPORT" value="${env.S1AS_HOME}/bin/wsimport" />
    <property name="pb.start.server" value="${env.S1AS_HOME}/pointbase/server/StartServer" />
    <property name="pb.start.server1" value="${env.S1AS_HOME}/pointbase/server/StartServer1" />
    <property name="IMQDBMGR" value="${env.S1AS_HOME}/imq/bin/imqdbmgr" />
    <property name="ld.library.path" location="${env.S1AS_HOME}/lib:${env.S1AS_HOME}/bin" />
</target>

<!-- The fixFiles target removes all ^M charectars from the end of lines of MANIFEST.MF files
     since they are very sensitive to it.
-->
<target name="fixFiles" depends="setOSConditions">
    <antcall target="convUnix" />
    <antcall target="convWin" />
</target>

<target name="convUnix" if="isUnix">
    <fixcrlf srcdir="." eol="lf" eof="remove" includes="**/*.MF" />
    <echo message="fixed files for Unix" level="verbose" />
</target>

<target name="convWin" if="isWindows">
    <fixcrlf srcdir="." eol="crlf" eof="asis" includes="**/*.MF" />
    <echo message="fixed files for Windows" level="verbose" />
</target>

<target name="ee-common" depends="setToolProperty">
</target>
