* Only advance the shard iterator when we accept a result to return This changes the retriever strategy to only accept the shard iterator when we have accepted a result to return. This is for the asynchronous retriever where multiple threads may contend for the same iterator slot. This ensures only the one selected for the response will advance the shard iterator. * Release 1.8.5 of the Amazon Kinesis Client for Java (#232) * Release 1.8.5 of the Amazon Kinesis Client for Java Release 1.8.5 (September 26, 2017) * Only advance the shard iterator for the accepted response. This fixes a race condition in the `KinesisDataFetcher` when it's being used to make asynchronous requests. The shard iterator is now only advanced when the retriever calls `DataFetcherResult#accept()`. * PR #230 * Issue #231 * Change the TerminalResult to return an empty GetRecordsResult Changes the TerminalResult to provide an empty GetRecordsResult, which components downstream depend on. * Fix unit test for behavior change of TerminalResult Got distracted, and forgot to run the unit tests.
310 lines
9.6 KiB
XML
310 lines
9.6 KiB
XML
<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 https://maven.apache.org/maven-v4_0_0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<groupId>com.amazonaws</groupId>
|
|
<artifactId>amazon-kinesis-client</artifactId>
|
|
<packaging>jar</packaging>
|
|
<name>Amazon Kinesis Client Library for Java</name>
|
|
<version>1.8.6-SNAPSHOT</version>
|
|
<description>The Amazon Kinesis Client Library for Java enables Java developers to easily consume and process data
|
|
from Amazon Kinesis.
|
|
</description>
|
|
<url>https://aws.amazon.com/kinesis</url>
|
|
|
|
<scm>
|
|
<url>https://github.com/awslabs/amazon-kinesis-client.git</url>
|
|
</scm>
|
|
|
|
<licenses>
|
|
<license>
|
|
<name>Amazon Software License</name>
|
|
<url>https://aws.amazon.com/asl</url>
|
|
<distribution>repo</distribution>
|
|
</license>
|
|
</licenses>
|
|
|
|
<properties>
|
|
<aws-java-sdk.version>1.11.198</aws-java-sdk.version>
|
|
<sqlite4java.version>1.0.392</sqlite4java.version>
|
|
<sqlite4java.native>libsqlite4java</sqlite4java.native>
|
|
<sqlite4java.libpath>${project.build.directory}/test-lib</sqlite4java.libpath>
|
|
</properties>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.amazonaws</groupId>
|
|
<artifactId>aws-java-sdk-dynamodb</artifactId>
|
|
<version>${aws-java-sdk.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.amazonaws</groupId>
|
|
<artifactId>aws-java-sdk-kinesis</artifactId>
|
|
<version>${aws-java-sdk.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.amazonaws</groupId>
|
|
<artifactId>aws-java-sdk-cloudwatch</artifactId>
|
|
<version>${aws-java-sdk.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.guava</groupId>
|
|
<artifactId>guava</artifactId>
|
|
<version>18.0</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.protobuf</groupId>
|
|
<artifactId>protobuf-java</artifactId>
|
|
<version>2.6.1</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>commons-lang</groupId>
|
|
<artifactId>commons-lang</artifactId>
|
|
<version>2.6</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>commons-logging</groupId>
|
|
<artifactId>commons-logging</artifactId>
|
|
<version>1.1.3</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<version>1.16.10</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
|
|
<!-- Test -->
|
|
<dependency>
|
|
<groupId>junit</groupId>
|
|
<artifactId>junit</artifactId>
|
|
<version>4.11</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-all</artifactId>
|
|
<version>1.10.19</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.hamcrest</groupId>
|
|
<artifactId>hamcrest-all</artifactId>
|
|
<version>1.3</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.amazonaws</groupId>
|
|
<artifactId>DynamoDBLocal</artifactId>
|
|
<version>1.11.86</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<repositories>
|
|
<repository>
|
|
<id>dynamodblocal</id>
|
|
<name>AWS DynamoDB Local Release Repository</name>
|
|
<url>https://s3-us-west-2.amazonaws.com/dynamodb-local/release</url>
|
|
</repository>
|
|
</repositories>
|
|
|
|
<developers>
|
|
<developer>
|
|
<id>amazonwebservices</id>
|
|
<organization>Amazon Web Services</organization>
|
|
<organizationUrl>https://aws.amazon.com</organizationUrl>
|
|
<roles>
|
|
<role>developer</role>
|
|
</roles>
|
|
</developer>
|
|
</developers>
|
|
|
|
<build>
|
|
<pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.2</version>
|
|
<configuration>
|
|
<source>1.8</source>
|
|
<target>1.8</target>
|
|
<encoding>UTF-8</encoding>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</pluginManagement>
|
|
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>2.19.1</version>
|
|
<configuration>
|
|
<excludes>
|
|
<exclude>**/*IntegrationTest.java</exclude>
|
|
</excludes>
|
|
<systemProperties>
|
|
<property>
|
|
<name>sqlite4java.library.path</name>
|
|
<value>${sqlite4java.libpath}</value>
|
|
</property>
|
|
</systemProperties>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<version>2.19.1</version>
|
|
<configuration>
|
|
<includes>
|
|
<include>**/*IntegrationTest.java</include>
|
|
</includes>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
<goal>verify</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>copy</id>
|
|
<phase>test-compile</phase>
|
|
<goals>
|
|
<goal>copy</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<!-- Mac OS X -->
|
|
<artifactItem>
|
|
<groupId>com.almworks.sqlite4java</groupId>
|
|
<artifactId>${sqlite4java.native}-osx</artifactId>
|
|
<version>${sqlite4java.version}</version>
|
|
<type>dylib</type>
|
|
<overWrite>true</overWrite>
|
|
<outputDirectory>${sqlite4java.libpath}</outputDirectory>
|
|
</artifactItem>
|
|
|
|
<!-- Linux -->
|
|
<!-- i386 -->
|
|
<artifactItem>
|
|
<groupId>com.almworks.sqlite4java</groupId>
|
|
<artifactId>${sqlite4java.native}-linux-i386</artifactId>
|
|
<version>${sqlite4java.version}</version>
|
|
<type>so</type>
|
|
<overWrite>true</overWrite>
|
|
<outputDirectory>${sqlite4java.libpath}</outputDirectory>
|
|
</artifactItem>
|
|
|
|
<!-- amd64 -->
|
|
<artifactItem>
|
|
<groupId>com.almworks.sqlite4java</groupId>
|
|
<artifactId>${sqlite4java.native}-linux-amd64</artifactId>
|
|
<version>${sqlite4java.version}</version>
|
|
<type>so</type>
|
|
<overWrite>true</overWrite>
|
|
<outputDirectory>${sqlite4java.libpath}</outputDirectory>
|
|
</artifactItem>
|
|
|
|
<!-- Windows -->
|
|
<!-- x86 -->
|
|
<artifactItem>
|
|
<groupId>com.almworks.sqlite4java</groupId>
|
|
<artifactId>sqlite4java-win32-x86</artifactId>
|
|
<version>${sqlite4java.version}</version>
|
|
<type>dll</type>
|
|
<overWrite>true</overWrite>
|
|
<outputDirectory>${sqlite4java.libpath}</outputDirectory>
|
|
</artifactItem>
|
|
|
|
<!-- x64 -->
|
|
<artifactItem>
|
|
<groupId>com.almworks.sqlite4java</groupId>
|
|
<artifactId>sqlite4java-win32-x64</artifactId>
|
|
<version>${sqlite4java.version}</version>
|
|
<type>dll</type>
|
|
<overWrite>true</overWrite>
|
|
<outputDirectory>${sqlite4java.libpath}</outputDirectory>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-javadoc-plugin</artifactId>
|
|
<version>2.10.3</version>
|
|
<configuration>
|
|
<excludePackageNames>com.amazonaws.services.kinesis.producer.protobuf</excludePackageNames>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>attach-javadocs</id>
|
|
<goals>
|
|
<goal>jar</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-source-plugin</artifactId>
|
|
<version>3.0.1</version>
|
|
<executions>
|
|
<execution>
|
|
<id>attach-sources</id>
|
|
<goals>
|
|
<goal>jar</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
|
|
</build>
|
|
<profiles>
|
|
<profile>
|
|
<id>disable-java8-doclint</id>
|
|
<activation>
|
|
<jdk>[1.8,)</jdk>
|
|
</activation>
|
|
<properties>
|
|
<additionalparam>-Xdoclint:none</additionalparam>
|
|
</properties>
|
|
</profile>
|
|
<profile>
|
|
<id>publishing</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-gpg-plugin</artifactId>
|
|
<version>1.5</version>
|
|
<executions>
|
|
<execution>
|
|
<id>sign-artifacts</id>
|
|
<phase>verify</phase>
|
|
<goals>
|
|
<goal>sign</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
</profiles>
|
|
|
|
</project>
|