<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>com.axway.ats.framework</groupId>
    <artifactId>ats-framework</artifactId>
    <version>4.0.8</version>
  </parent>

  <artifactId>ats-actionlibrary</artifactId>
  <name>ATS-ActionLibrary</name>
  <description>
        ATS Action library.
        ATS - Action library for performing different operations like: file system;
        file transfers over different protocols, DB, mail, process operations
    </description>
  <url>https://github.com/Axway/ats-framework</url>

  <properties>
    <javax.jms.jms-api.version>1.1-rev-1</javax.jms.jms-api.version>
    <org.json.json.version>20140107</org.json.json.version>
    <org.json.simple.version>1.1.1</org.json.simple.version>
    <org.jaxen.version>1.1.1</org.jaxen.version>
  </properties>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <includes>
            <include>**/Test_*.java</include>
          </includes>
          <excludes>
            <exclude>**/*$*</exclude>
            <!-- TODO: investigate tests. They are also disabled in build.xml -->
            <exclude>**/mail/Test_*.java</exclude>
          </excludes>
        </configuration>
      </plugin>
    </plugins>
  </build>

  <dependencies>
    <dependency>
      <groupId>com.axway.ats.framework</groupId>
      <artifactId>ats-common</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>com.axway.ats.framework</groupId>
      <artifactId>ats-core</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>com.axway.ats.framework</groupId>
      <artifactId>ats-configuration</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>com.axway.ats.framework</groupId>
      <artifactId>ats-log</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>com.axway.ats.framework</groupId>
      <artifactId>ats-testharness</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>com.axway.ats.framework.agent</groupId>
      <artifactId>ats-agent-core</artifactId>
      <version>${project.version}</version>
      <exclusions>
        <!-- Remove exclusion after agent core is migrated to log4j2 -->
        <exclusion>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>com.axway.ats.framework.agent.webapp</groupId>
      <artifactId>ats-agent-webapp-client</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>com.axway.ats.framework.agent.standalone</groupId>
      <artifactId>ats-agent-systemoperations</artifactId>
      <version>${project.version}</version>
      <classifier>client</classifier>
      <exclusions>
        <!-- Remove exclusion after agent core is migrated to log4j2 -->
        <exclusion>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

    <!-- external dependencies -->
    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-core</artifactId>
    </dependency>
    <dependency>
      <groupId>javax.mail</groupId>
      <artifactId>mail</artifactId>
      <version>${javax.mail.version}</version>
    </dependency>
    <dependency>
      <groupId>javax.activation</groupId>
      <artifactId>activation</artifactId>
      <version>${javax.activation.version}</version>
    </dependency>
    <dependency>
      <groupId>org.bouncycastle</groupId>
      <artifactId>bcprov-jdk15on</artifactId>
      <version>${org.bouncycastle.version}</version>
    </dependency>
    <dependency>
      <groupId>org.bouncycastle</groupId>
      <artifactId>bcmail-jdk15on</artifactId>
      <version>${org.bouncycastle.version}</version>
    </dependency>
    <dependency>
      <groupId>org.bouncycastle</groupId>
      <artifactId>bcpkix-jdk15on</artifactId>
      <version>${org.bouncycastle.version}</version>
    </dependency>
    <dependency>
      <groupId>com.axway.ats.gnu.classpath.ext</groupId>
      <artifactId>inetlib</artifactId>
      <version>${gnu.classpath.ext.inetlib.version}</version>
    </dependency>
    <dependency>
      <groupId>org.apache.httpcomponents</groupId>
      <artifactId>httpclient</artifactId>
      <version>${apache.httpcomponents.version}</version>
    </dependency>
    <dependency>
      <groupId>org.apache.httpcomponents</groupId>
      <artifactId>httpmime</artifactId>
      <version>${apache.httpcomponents.version}</version>
    </dependency>
    <dependency>
      <groupId>javax.ws.rs</groupId>
      <artifactId>javax.ws.rs-api</artifactId>
      <version>${javax.ws.rs-api.version}</version>
    </dependency>

    <!-- REST module dependencies -->
    <dependency>
      <groupId>org.glassfish.jersey.core</groupId>
      <artifactId>jersey-client</artifactId>
      <version>${org.glassfish.jersey.jersey-client.version}</version>
    </dependency>
    <dependency> <!-- Default provider -->
      <groupId>org.glassfish.jersey.media</groupId>
      <artifactId>jersey-media-moxy</artifactId>
      <version>${org.glassfish.jersey.jersey-client.version}</version>
    </dependency>
    <dependency> <!-- Compile time only. Runtime to be added from clients if they need it -->
      <groupId>org.glassfish.jersey.media</groupId>
      <artifactId>jersey-media-multipart</artifactId>
      <version>${org.glassfish.jersey.jersey-client.version}</version>
      <scope>compile</scope>
    </dependency>
    <!-- this dependency is required after jersey 2.26 -->
    <!-- https://stackoverflow.com/questions/44088493/jersey-stopped-working-with-injectionmanagerfactory-not-found -->
    <!-- <dependency> 
             <groupId>org.glassfish.jersey.inject</groupId>
             <artifactId>jersey-hk2</artifactId> 
             <version>${org.glassfish.jersey.inject.version}</version>
         </dependency> -->
    <dependency>
      <groupId>org.json</groupId>
      <artifactId>json</artifactId>
      <version>${org.json.json.version}</version>
    </dependency>
    <dependency>
      <groupId>com.googlecode.json-simple</groupId>
      <artifactId>json-simple</artifactId>
      <version>${org.json.simple.version}</version>
    </dependency>
    <dependency>
      <groupId>com.jcraft</groupId>
      <artifactId>jsch</artifactId>
      <version>${com.jcraft.jsch.version}</version>
    </dependency>
    <dependency>
      <groupId>javax.jms</groupId>
      <artifactId>jms-api</artifactId>
      <version>${javax.jms.jms-api.version}</version>
    </dependency>

    <!-- XML dependencies -->
    <dependency>
      <groupId>org.dom4j</groupId>
      <artifactId>dom4j</artifactId>
      <version>${org.dom4j.version}</version>
      <exclusions>
        <exclusion>
          <groupId>xml-apis</groupId>
          <artifactId>xml-apis</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>jaxen</groupId>
      <artifactId>jaxen</artifactId>
      <version>${org.jaxen.version}</version>
      <exclusions>
        <exclusion>
          <groupId>xml-apis</groupId>
          <artifactId>xml-apis</artifactId>
        </exclusion>
      </exclusions>
    </dependency>


    <!-- TEST dependencies -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.easymock</groupId>
      <artifactId>easymock</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.powermock</groupId>
      <artifactId>powermock-module-junit4</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.powermock</groupId>
      <artifactId>powermock-api-easymock</artifactId>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>com.oracle.jdbc</groupId>
      <artifactId>ojdbc7</artifactId>
      <optional>true</optional> <!-- Add explicitly only when connections to Oracle DB are needed.
                    Resolved from maven.oracle.com password protected repository -->
      <scope>test</scope> <!-- Indirectly referred. Declare here since it is also optional in Core library -->
      <exclusions>
        <exclusion> <!-- incompatibility with Apache Xerces and Xalan -->
          <groupId>com.oracle.jdbc</groupId>
          <artifactId>xmlparserv2</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
  </dependencies>

</project>
