<?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">
  <parent>
    <artifactId>flink-connectors</artifactId>
    <groupId>org.apache.flink</groupId>
    <version>1.8.2</version>
    <relativePath>pom.xml</relativePath>
  </parent>
  <modelVersion>4.0.0</modelVersion>
  <groupId>software.amazon.kinesis</groupId>
  <artifactId>amazon-kinesis-connector-flink</artifactId>
  <name>Amazon Kinesis Connector for Apache Flink</name>
  <version>1.6.0</version>
  <scm>
    <connection>scm:git:https://github.com/awslabs/amazon-kinesis-connector-flink.git</connection>
    <developerConnection>scm:git:git@github.com:awslabs/amazon-kinesis-connector-flink.git</developerConnection>
    <url>https://github.com/awslabs/amazon-kinesis-connector-flink/tree/master</url>
  </scm>
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <configuration>
          <suppressionsLocation>tools/maven/suppressions.xml</suppressionsLocation>
          <configLocation>tools/maven/checkstyle.xml</configLocation>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-shade-plugin</artifactId>
        <version>3.2.4</version>
        <executions>
          <execution>
            <id>shade</id>
            <phase>package</phase>
            <goals>
              <goal>shade</goal>
            </goals>
            <configuration>
              <promoteTransitiveDependencies>true</promoteTransitiveDependencies>
              <artifactSet>
                <includes>
                  <include>com.amazonaws:*</include>
                  <include>com.google.protobuf:*</include>
                  <include>org.apache.httpcomponents:*</include>
                  <include>software.amazon.awssdk:*</include>
                  <include>software.amazon.eventstream:*</include>
                  <include>software.amazon.ion:*</include>
                  <include>org.reactivestreams:*</include>
                  <include>io.netty:*</include>
                  <include>com.typesafe.netty:*</include>
                </includes>
              </artifactSet>
              <relocations>
                <relocation>
                  <pattern>com.google.protobuf</pattern>
                  <shadedPattern>software.amazon.kinesis.shaded.com.google.protobuf</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>com.amazonaws</pattern>
                  <shadedPattern>software.amazon.kinesis.shaded.com.amazonaws</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>org.apache.http</pattern>
                  <shadedPattern>software.amazon.kinesis.shaded.org.apache.http</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>software.amazon.awssdk</pattern>
                  <shadedPattern>software.amazon.kinesis.shaded.software.amazon.awssdk</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>software.amazon.eventstream</pattern>
                  <shadedPattern>software.amazon.kinesis.shaded.software.amazon.eventstream</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>software.amazon.ion</pattern>
                  <shadedPattern>software.amazon.kinesis.shaded.software.amazon.ion</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>io.netty</pattern>
                  <shadedPattern>software.amazon.kinesis.shaded.io.netty</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>com.typesafe.netty</pattern>
                  <shadedPattern>software.amazon.kinesis.shaded.com.typesafe.netty</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>org.reactivestreams</pattern>
                  <shadedPattern>software.amazon.kinesis.shaded.org.reactivestreams</shadedPattern>
                </relocation>
              </relocations>
              <filters>
                <filter>
                  <artifact>com.amazonaws:amazon-kinesis-producer</artifact>
                  <excludes>
                    <exclude>META-INF/THIRD_PARTY_NOTICES</exclude>
                  </excludes>
                </filter>
              </filters>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <argLine>${surefireArgLine} -Xmx2048m</argLine>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <version>0.8.5</version>
        <executions>
          <execution>
            <goals>
              <goal>prepare-agent</goal>
            </goals>
          </execution>
          <execution>
            <id>report</id>
            <phase>test</phase>
            <goals>
              <goal>report</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <destFile>${sonar.jacoco.reportPath}</destFile>
          <propertyName>surefireArgLine</propertyName>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <dependencies>
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>guava</artifactId>
      <version>30.0-jre</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>failureaccess</artifactId>
      <version>1.0.1</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>listenablefuture</artifactId>
      <version>9999.0-empty-to-avoid-conflict-with-guava</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.checkerframework</groupId>
      <artifactId>checker-qual</artifactId>
      <version>3.5.0</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>com.google.errorprone</groupId>
      <artifactId>error_prone_annotations</artifactId>
      <version>2.3.4</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>com.google.j2objc</groupId>
      <artifactId>j2objc-annotations</artifactId>
      <version>1.3</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>commons-io</groupId>
      <artifactId>commons-io</artifactId>
      <version>2.4</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-lang3</artifactId>
      <version>3.3.2</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.dataformat</groupId>
      <artifactId>jackson-dataformat-cbor</artifactId>
      <version>2.13.4</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>joda-time</groupId>
      <artifactId>joda-time</artifactId>
      <version>2.5</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>commons-lang</groupId>
      <artifactId>commons-lang</artifactId>
      <version>2.6</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>commons-logging</groupId>
      <artifactId>commons-logging</artifactId>
      <version>1.1.3</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-core</artifactId>
      <version>2.13.4</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
      <version>2.13.4</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-annotations</artifactId>
      <version>2.13.4</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>commons-codec</groupId>
      <artifactId>commons-codec</artifactId>
      <version>1.10</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.flink</groupId>
      <artifactId>force-shading</artifactId>
      <version>1.8.2</version>
      <scope>compile</scope>
    </dependency>
  </dependencies>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-java-sdk-bom</artifactId>
        <version>${aws.sdk.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>software.amazon.awssdk</groupId>
        <artifactId>bom</artifactId>
        <version>${aws.sdkv2.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-test-utils-junit</artifactId>
        <version>${project.parent.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-core</artifactId>
        <version>${jackson2.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>${jackson2.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-annotations</artifactId>
        <version>${jackson2.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-cbor</artifactId>
        <version>${jackson2.version}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <properties>
    <aws.kinesis-kcl.version>1.14.8</aws.kinesis-kcl.version>
    <aws.sdk.version>1.12.276</aws.sdk.version>
    <aws.dynamodbstreams-kinesis-adapter.version>1.5.3</aws.dynamodbstreams-kinesis-adapter.version>
    <jackson2.version>2.13.4</jackson2.version>
    <guava.version>30.0-jre</guava.version>
    <aws.kinesis-kpl.version>0.14.0</aws.kinesis-kpl.version>
    <httpcore.version>4.4.11</httpcore.version>
    <aws.sdkv2.version>2.17.247</aws.sdkv2.version>
    <httpclient.version>4.5.9</httpclient.version>
  </properties>
</project>
