<?xml version="1.0" encoding="ISO-8859-1"?>
<!--

    Copyright (c) 1997, 2018 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

-->

<!DOCTYPE project [
<!ENTITY commonSetup SYSTEM "./../../../../config/properties.xml">
<!ENTITY commonBuild SYSTEM "./../../../../config/common.xml">
<!ENTITY commonRun SYSTEM "./../../../../config/run.xml">
<!ENTITY reporting SYSTEM "./../../../../config/report.xml">
<!ENTITY eeCommon SYSTEM "file:./../ee.xml">
<!ENTITY testproperties SYSTEM "file:./build.properties">
]>

<project name="tx-ee-autorecovery" default="usage" basedir=".">


    &commonSetup;
    &commonBuild;
    &commonRun;
    &eeCommon;
    &testproperties;
    &reporting;

    <target name="all" depends="build,setup,run,unsetup,dev-report"/>
    <target name="test" depends="build,setup-test,run,unsetup-test"/>

    <target name="setup" depends="init-common">
      <antcall target="clean-results"/>
      <antcall target="start-derby"/>
      <ant target="start-domain"/>
      <antcall target="setup-test"/>
    </target>

    <target name="setup-test" depends="init-common">
      <antcall target="setup-database"/>
      <antcall target="setup-cluster"/>
    </target>

    <target name="setup-database" depends="init-common">
      <antcall target="setup-xa-database-common">
            <param name="pool.name" value="jdbc-xa-pool"/>
            <param name="resource.name" value="jdbc/xa"/>
        </antcall>
      <antcall target="execute-ejb-sql-common">
        <param name="sql.file" value="sql/create.sql"/>
      </antcall>
      <echo message="db.name=${db.name}"/>
      <antcall target="execute-sql-common">
        <param name="sql.file" value="sql/create.sql"/>
        <param name="db.url" value="jdbc:derby://localhost:${db.port}/${db.name};create=true;"/>
      </antcall>

    </target>

    <target name="setup-cluster" depends="init-common">
        <echo message="Starting cluster"/>
        <java  fork="on"
              failonerror="true"
              classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${env.APS_HOME}/lib/reportbuilder.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar"
              classname="${se.client}">
           <arg line="prepare"/>
           <arg line="${assemble.dir}/${appname}-web.war"/>
           <arg line="${assemble.dir}"/>
           <sysproperty key="enableShoalLogger" value="${enableShoalLogger}"/>
        </java>
    </target>

    <target name="unsetup-test" depends="init-common">
        <antcall target="save-logs"/>
        <antcall target="unsetup-cluster"/>
        <antcall target="unsetup-database"/>
    </target>

    <target name="unsetup" depends="init-common">
        <antcall target="unsetup-test"/>
        <antcall target="stop-derby"/>
        <ant target="stop-domain"/>
    </target>

    <target name="unsetup-database" depends="init-common">
        <antcall target="execute-ejb-sql-common">
            <param name="sql.file" value="sql/drop.sql"/>
        </antcall>

        <antcall target="execute-sql-common">
           <param name="sql.file" value="sql/drop.sql"/>
           <param name="db.url" value="jdbc:derby://localhost:${db.port}/${db.name};create=true;"/>
         </antcall>

        <antcall target="delete-jdbc-resource-common">
            <param name="jdbc.resource.name" value="jdbc/xa"/>
        </antcall>

        <antcall target="delete-jdbc-connpool-common">
            <param name="jdbc.conpool.name" value="jdbc-xa-pool"/>
        </antcall>
    </target>

    <target name="run" depends="init-common">
        <antcall target="run-recover"/>
    </target>

    <target name="run-recover" depends="init-common">
        <parallel>
           <antcall target="insert-data"/>
           <antcall target="kill-instance"/>
        </parallel>

        <!-- Let GMS do the work -->
        <sleep seconds="135"/>

        <echo message="Verifying results"/>
        <java  fork="on"
              failonerror="true"
              classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${env.APS_HOME}/lib/reportbuilder.jar:${build.classes.dir}"
              classname="${se.client}">
           <jvmarg value="--add-opens=java.base/java.lang=ALL-UNNAMED" />
           <arg line="verify_xa"/>
           <arg line="${appname}-web"/>
           <arg line="in2"/>
           <arg line="recover"/>
        </java>

        <exec executable="${ASADMIN}" failonerror="false">
          <arg line="start-local-instance"/>
          <arg line="in1"/>
        </exec>
    </target>

    <target name="kill-instance">
      <sleep seconds="20"/>
      <exec executable="./kill_instance.sh" failonerror="true">
        <arg line="in1"/>
      </exec>
    </target>

    <target name="insert-data">
        <echo message="Executing test on in1"/>
        <java  fork="on"
              failonerror="true"
              classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${env.APS_HOME}/lib/reportbuilder.jar:${build.classes.dir}"
              classname="${se.client}">
           <arg line="insert_xa_data"/>
           <arg line="${appname}-web"/>
           <arg line="in1"/>
        </java>
    </target>

</project>
