<!--

    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" />
</target>

<target name="setS1ASclassPath" unless="s1as.classpath">
    <path id="s1as_classpath_jars">
        <fileset dir="${env.S1AS_HOME}/modules" includes="**/*.jar" />
        <!-- fileset dir="${env.S1AS_HOME}/imq/lib" 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>
