<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.qubership.mockingbird</groupId>
    <artifactId>parent-java</artifactId>
    <version>4.4.367</version>
    <relativePath>../parent/parent-java/pom.xml</relativePath>
  </parent>
  <groupId>org.qubership.mockingbird</groupId>
  <artifactId>common</artifactId>
  <version>4.4.367</version>
  <packaging>pom</packaging>
  <name>common</name>
  <licenses>
    <license>
      <name>Apache License, Version 2.0</name>
      <url>https://www.apache.org/licenses/LICENSE-2.0</url>
    </license>
  </licenses>
  <properties>
    <finalName>mockingbird-app_${project.version}_${timestamp}</finalName>
    <timestamp>${maven.build.timestamp}</timestamp>
    <maven.build.timestamp.format>yyyyMMdd-HHmmss</maven.build.timestamp.format>
    <abbreviation>mockingbird</abbreviation>
  </properties>
  <dependencies>
    <dependency>
      <groupId>org.apache.cxf</groupId>
      <artifactId>cxf-core</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-openfeign-core</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <version>3.1.0</version>
        <executions>
          <execution>
            <id>regex-property</id>
            <goals>
              <goal>regex-property</goal>
            </goals>
            <configuration>
              <name>finalName.replaced</name>
              <value>${finalName}</value>
              <regex>\/</regex>
              <replacement>_</replacement>
              <failIfNoMatch>false</failIfNoMatch>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-antrun-plugin</artifactId>
        <version>1.7</version>
        <executions>
          <execution>
            <id>generate-transport-jars</id>
            <phase>package</phase>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
              <target name="generate-transport-jars">
                <mkdir dir="../transports" />
                <copy todir="../transports">
                  <fileset includes="mockingbird-transport-cli.jar" dir="../mockingbird-transports-camel/mockingbird-transport-cli/target" />
                  <fileset includes="mockingbird-transport-file.jar" dir="../mockingbird-transports-camel/mockingbird-transport-file/target" />
                  <fileset includes="mockingbird-transport-diameter.jar" dir="../mockingbird-transports-camel/mockingbird-transport-diameter/target" />
                  <fileset includes="mockingbird-transport-http2.jar" dir="../mockingbird-transports-camel/mockingbird-transport-http2/target" />
                  <fileset includes="mockingbird-transport-jms.jar" dir="../mockingbird-transports-camel/mockingbird-transport-jms/target" />
                  <fileset includes="mockingbird-transport-kafka.jar" dir="../mockingbird-transports-camel/mockingbird-transport-kafka/target" />
                  <fileset includes="mockingbird-transport-ldap.jar" dir="../mockingbird-transports-camel/mockingbird-transport-ldap/target" />
                  <fileset includes="mockingbird-transport-rest.jar" dir="../mockingbird-transports-camel/mockingbird-transport-rest/target" />
                  <fileset includes="mockingbird-transport-snmp.jar" dir="../mockingbird-transports-camel/mockingbird-transport-snmp/target" />
                  <fileset includes="mockingbird-transport-smpp.jar" dir="../mockingbird-transports-camel/mockingbird-transport-smpp/target" />
                  <fileset includes="mockingbird-transport-soap-http.jar" dir="../mockingbird-transports-camel/mockingbird-transport-soap-http/target" />
                  <fileset includes="mockingbird-transport-sql.jar" dir="../mockingbird-transports-camel/mockingbird-transport-sql/target" />
                  <fileset includes="mockingbird-transport-ss7.jar" dir="../mockingbird-transports-camel/mockingbird-transport-ss7/target" />
                </copy>
                <mkdir dir="../transports/lib" />
                <copy todir="../transports/lib">
                  <fileset dir="../mockingbird-transports-camel/mockingbird-camel-common/target/lib" />
                  <fileset dir="../mockingbird-transports-camel/mockingbird-transport-cli/target/lib" />
                  <fileset dir="../mockingbird-transports-camel/mockingbird-transport-diameter/target/lib" />
                  <fileset dir="../mockingbird-transports-camel/mockingbird-transport-file/target/lib" />
                  <fileset dir="../mockingbird-transports-camel/mockingbird-transport-http2/target/lib" />
                  <fileset dir="../mockingbird-transports-camel/mockingbird-transport-jms/target/lib" />
                  <fileset dir="../mockingbird-transports-camel/mockingbird-transport-kafka/target/lib" />
                  <fileset dir="../mockingbird-transports-camel/mockingbird-transport-ldap/target/lib" />
                  <fileset dir="../mockingbird-transports-camel/mockingbird-transport-rest/target/lib" />
                  <fileset dir="../mockingbird-transports-camel/mockingbird-transport-snmp/target/lib" />
                  <fileset dir="../mockingbird-transports-camel/mockingbird-transport-smpp/target/lib" />
                  <fileset dir="../mockingbird-transports-camel/mockingbird-transport-soap-http/target/lib" />
                  <fileset dir="../mockingbird-transports-camel/mockingbird-transport-sql/target/lib" />
                  <fileset dir="../mockingbird-transports-camel/mockingbird-transport-ss7/target/lib" />
                </copy>
                <mkdir dir="../transports/lib/mockingbird-transport-jms" />
              </target>
            </configuration>
          </execution>
          <execution>
            <id>generate-interceptor-jars</id>
            <phase>package</phase>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
              <target name="generate-interceptor-jars">
                <mkdir dir="../interceptors/" />
                <copy todir="../interceptors/">
                  <fileset includes="interceptor-utils.jar" dir="../mockingbird-interceptors/interceptor-utils/target" />
                </copy>
                <mkdir dir="../interceptors/compress-interceptor/" />
                <copy todir="../interceptors/compress-interceptor/">
                  <fileset includes="compress-interceptor.jar" dir="../mockingbird-interceptors/compress-interceptor/target" />
                  <fileset includes="gzip.interceptor.command" dir="../mockingbird-interceptors/compress-interceptor/target/classes/" />
                  <fileset includes="rar.interceptor.command" dir="../mockingbird-interceptors/compress-interceptor/target/classes/" />
                  <fileset includes="tar.interceptor.command" dir="../mockingbird-interceptors/compress-interceptor/target/classes/" />
                  <fileset includes="zip.interceptor.command" dir="../mockingbird-interceptors/compress-interceptor/target/classes/" />
                </copy>
                <mkdir dir="../interceptors/decompress-interceptor/" />
                <copy todir="../interceptors/decompress-interceptor/">
                  <fileset includes="decompress-interceptor.jar" dir="../mockingbird-interceptors/decompress-interceptor/target" />
                  <fileset includes="gzip.interceptor.command" dir="../mockingbird-interceptors/decompress-interceptor/target/classes/" />
                  <fileset includes="tar.interceptor.command" dir="../mockingbird-interceptors/decompress-interceptor/target/classes/" />
                  <fileset includes="unrar.interceptor.command" dir="../mockingbird-interceptors/decompress-interceptor/target/classes/" />
                  <fileset includes="unzip.interceptor.command" dir="../mockingbird-interceptors/decompress-interceptor/target/classes/" />
                </copy>
                <mkdir dir="../interceptors/decrypt-interceptor/" />
                <copy todir="../interceptors/decrypt-interceptor/">
                  <fileset includes="decrypt-interceptor.jar" dir="../mockingbird-interceptors/decrypt-interceptor/target" />
                  <fileset includes="interceptor.command" dir="../mockingbird-interceptors/decrypt-interceptor/target/classes/" />
                </copy>
                <mkdir dir="../interceptors/encrypt-interceptor/" />
                <copy todir="../interceptors/encrypt-interceptor/">
                  <fileset includes="encrypt-interceptor.jar" dir="../mockingbird-interceptors/encrypt-interceptor/target" />
                  <fileset includes="interceptor.command" dir="../mockingbird-interceptors/encrypt-interceptor/target/classes/" />
                </copy>
                <mkdir dir="../interceptors/decrypt-xml-interceptor/" />
                <copy todir="../interceptors/decrypt-xml-interceptor/">
                  <fileset includes="decrypt-xml-interceptor.jar" dir="../mockingbird-interceptors/decrypt-xml-interceptor/target" />
                </copy>
                <mkdir dir="../interceptors/encrypt-xml-interceptor/" />
                <copy todir="../interceptors/encrypt-xml-interceptor/">
                  <fileset includes="encrypt-xml-interceptor.jar" dir="../mockingbird-interceptors/encrypt-xml-interceptor/target" />
                </copy>
                <mkdir dir="../interceptors/redefine-transport-params-interceptor/" />
                <copy todir="../interceptors/redefine-transport-params-interceptor/">
                  <fileset includes="redefine-transport-params-interceptor.jar" dir="../mockingbird-interceptors/redefine-transport-params-interceptor/target" />
                </copy>
              </target>
            </configuration>
          </execution>
          <execution>
            <id>check-dir-exists</id>
            <phase>clean</phase>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
              <target>
                <available file="../transports" property="transportsDirExists" />
                <available file="../interceptors" property="interceptorsDirExists" />
              </target>
              <exportAntProperties>true</exportAntProperties>
            </configuration>
          </execution>
          <execution>
            <id>clean-generate-transport-jars</id>
            <phase>clean</phase>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
              <target if="${transportsDirExists}">
                <delete>
                  <fileset dir="../transports" />
                </delete>
                <echo message="Folder [../transports] with transport files *.jar has been cleared." />
              </target>
            </configuration>
          </execution>
          <execution>
            <id>clean-generate-interceptor-jars</id>
            <phase>clean</phase>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
              <target if="${interceptorsDirExists}">
                <delete>
                  <fileset dir="../interceptors" />
                </delete>
                <echo message="Folder [../interceptors] with interceptor files *.jar has been cleared." />
              </target>
            </configuration>
          </execution>
        </executions>
        <dependencies>
          <dependency>
            <groupId>ant-contrib</groupId>
            <artifactId>ant-contrib</artifactId>
            <version>1.0b3</version>
            <exclusions>
              <exclusion>
                <groupId>ant</groupId>
                <artifactId>ant</artifactId>
              </exclusion>
            </exclusions>
          </dependency>
          <dependency>
            <groupId>org.apache.ant</groupId>
            <artifactId>ant-nodeps</artifactId>
            <version>1.8.1</version>
          </dependency>
        </dependencies>
      </plugin>
      <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>2.3</version>
        <executions>
          <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <attach>false</attach>
          <descriptors>
            <descriptor>maven/assembly/build-modules.xml</descriptor>
          </descriptors>
          <finalName>${finalName.replaced}</finalName>
          <appendAssemblyId>false</appendAssemblyId>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>
