diff --git a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MessageWriter.java b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MessageWriter.java
index 1659c1f3..5d6be701 100644
--- a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MessageWriter.java
+++ b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MessageWriter.java
@@ -23,8 +23,8 @@ import java.util.concurrent.ExecutorService;
import java.util.concurrent.Future;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShutdownReason;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.InitializationInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
import com.amazonaws.services.kinesis.multilang.messages.CheckpointMessage;
import com.amazonaws.services.kinesis.multilang.messages.InitializeMessage;
import com.amazonaws.services.kinesis.multilang.messages.Message;
diff --git a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangDaemon.java b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangDaemon.java
index 5b9aff0a..e75cdc47 100644
--- a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangDaemon.java
+++ b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangDaemon.java
@@ -23,7 +23,7 @@ import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessorFactory;
+import software.amazon.kinesis.processor.v2.IRecordProcessorFactory;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisClientLibConfiguration;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.Worker;
diff --git a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangProtocol.java b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangProtocol.java
index 26112fce..b777cb71 100644
--- a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangProtocol.java
+++ b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangProtocol.java
@@ -21,11 +21,11 @@ import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisClientLibConfiguration;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShutdownReason;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.InitializationInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
import com.amazonaws.services.kinesis.multilang.messages.CheckpointMessage;
import com.amazonaws.services.kinesis.multilang.messages.InitializeMessage;
import com.amazonaws.services.kinesis.multilang.messages.Message;
diff --git a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangRecordProcessor.java b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangRecordProcessor.java
index e5667759..d8d13fdd 100644
--- a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangRecordProcessor.java
+++ b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangRecordProcessor.java
@@ -20,13 +20,13 @@ import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Future;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IShutdownNotificationAware;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.processor.v2.IShutdownNotificationAware;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisClientLibConfiguration;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ShutdownInput;
+import software.amazon.kinesis.lifecycle.InitializationInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.ShutdownInput;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangRecordProcessorFactory.java b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangRecordProcessorFactory.java
index 71f6bb83..8bc258a7 100644
--- a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangRecordProcessorFactory.java
+++ b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/MultiLangRecordProcessorFactory.java
@@ -16,8 +16,8 @@ package com.amazonaws.services.kinesis.multilang;
import java.util.concurrent.ExecutorService;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessorFactory;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.processor.v2.IRecordProcessorFactory;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisClientLibConfiguration;
import com.fasterxml.jackson.databind.ObjectMapper;
diff --git a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/messages/InitializeMessage.java b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/messages/InitializeMessage.java
index cc6be56f..bf0027e9 100644
--- a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/messages/InitializeMessage.java
+++ b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/messages/InitializeMessage.java
@@ -14,7 +14,7 @@
*/
package com.amazonaws.services.kinesis.multilang.messages;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
+import software.amazon.kinesis.lifecycle.InitializationInput;
import lombok.Getter;
import lombok.Setter;
diff --git a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/messages/JsonFriendlyRecord.java b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/messages/JsonFriendlyRecord.java
index 19100993..368cc0a4 100644
--- a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/messages/JsonFriendlyRecord.java
+++ b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/messages/JsonFriendlyRecord.java
@@ -16,7 +16,7 @@ package com.amazonaws.services.kinesis.multilang.messages;
import java.util.Date;
-import com.amazonaws.services.kinesis.clientlibrary.types.UserRecord;
+import software.amazon.kinesis.retrieval.kpl.UserRecord;
import com.amazonaws.services.kinesis.model.Record;
import com.fasterxml.jackson.annotation.JsonProperty;
diff --git a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/messages/ProcessRecordsMessage.java b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/messages/ProcessRecordsMessage.java
index 12371eb8..816affe3 100644
--- a/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/messages/ProcessRecordsMessage.java
+++ b/amazon-kinesis-client-multilang/src/main/java/com/amazonaws/services/kinesis/multilang/messages/ProcessRecordsMessage.java
@@ -17,7 +17,7 @@ package com.amazonaws.services.kinesis.multilang.messages;
import java.util.ArrayList;
import java.util.List;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
import com.amazonaws.services.kinesis.model.Record;
import lombok.Getter;
import lombok.Setter;
diff --git a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/Matchers.java b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/Matchers.java
index 92ac15f7..ab3d2ef3 100644
--- a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/Matchers.java
+++ b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/Matchers.java
@@ -21,8 +21,8 @@ import org.hamcrest.Description;
import org.hamcrest.Matcher;
import org.hamcrest.TypeSafeDiagnosingMatcher;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.lifecycle.InitializationInput;
public class Matchers {
diff --git a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/MessageWriterTest.java b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/MessageWriterTest.java
index f9fd1d58..fa1a841d 100644
--- a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/MessageWriterTest.java
+++ b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/MessageWriterTest.java
@@ -23,8 +23,8 @@ import java.util.concurrent.ExecutionException;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.InitializationInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
diff --git a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/MultiLangProtocolTest.java b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/MultiLangProtocolTest.java
index da14d256..9c725753 100644
--- a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/MultiLangProtocolTest.java
+++ b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/MultiLangProtocolTest.java
@@ -18,11 +18,11 @@ import com.amazonaws.services.kinesis.clientlibrary.exceptions.InvalidStateExcep
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibDependencyException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ShutdownException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ThrottlingException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisClientLibConfiguration;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShutdownReason;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.InitializationInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
import com.amazonaws.services.kinesis.model.Record;
import com.amazonaws.services.kinesis.multilang.messages.CheckpointMessage;
import com.amazonaws.services.kinesis.multilang.messages.Message;
diff --git a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/StreamingRecordProcessorFactoryTest.java b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/StreamingRecordProcessorFactoryTest.java
index ba3e735b..36a456be 100644
--- a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/StreamingRecordProcessorFactoryTest.java
+++ b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/StreamingRecordProcessorFactoryTest.java
@@ -18,7 +18,7 @@ import com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisClientLibC
import org.junit.Assert;
import org.junit.Test;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
diff --git a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/StreamingRecordProcessorTest.java b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/StreamingRecordProcessorTest.java
index f32fa5bf..99aea7ac 100644
--- a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/StreamingRecordProcessorTest.java
+++ b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/StreamingRecordProcessorTest.java
@@ -18,13 +18,13 @@ import com.amazonaws.services.kinesis.clientlibrary.exceptions.InvalidStateExcep
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibDependencyException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ShutdownException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ThrottlingException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IPreparedCheckpointer;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.processor.IPreparedCheckpointer;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisClientLibConfiguration;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShutdownReason;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ShutdownInput;
+import software.amazon.kinesis.lifecycle.InitializationInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.ShutdownInput;
import com.amazonaws.services.kinesis.model.Record;
import com.amazonaws.services.kinesis.multilang.messages.InitializeMessage;
import com.amazonaws.services.kinesis.multilang.messages.Message;
diff --git a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/config/KinesisClientLibConfiguratorTest.java b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/config/KinesisClientLibConfiguratorTest.java
index 7589d45a..cd130139 100644
--- a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/config/KinesisClientLibConfiguratorTest.java
+++ b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/config/KinesisClientLibConfiguratorTest.java
@@ -32,7 +32,7 @@ import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.InitialPositionInStream;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisClientLibConfiguration;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.metrics.MetricsLevel;
import com.google.common.collect.ImmutableSet;
public class KinesisClientLibConfiguratorTest {
diff --git a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/messages/MessageTest.java b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/messages/MessageTest.java
index 2b2fe402..69db6761 100644
--- a/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/messages/MessageTest.java
+++ b/amazon-kinesis-client-multilang/src/test/java/com/amazonaws/services/kinesis/multilang/messages/MessageTest.java
@@ -17,8 +17,8 @@ package com.amazonaws.services.kinesis.multilang.messages;
import java.nio.ByteBuffer;
import java.util.ArrayList;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.InitializationInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
import org.junit.Assert;
import org.junit.Test;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/IRecordProcessorFactory.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/IRecordProcessorFactory.java
deleted file mode 100644
index b87fd7ec..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/IRecordProcessorFactory.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.clientlibrary.interfaces;
-
-/**
- * The Amazon Kinesis Client Library will use this to instantiate a record processor per shard.
- * Clients may choose to create separate instantiations, or re-use instantiations.
- */
-public interface IRecordProcessorFactory {
-
- /**
- * Returns a record processor to be used for processing data records for a (assigned) shard.
- *
- * @return Returns a processor object.
- */
- IRecordProcessor createProcessor();
-
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/v2/IRecordProcessorFactory.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/v2/IRecordProcessorFactory.java
deleted file mode 100644
index 08010ee7..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/v2/IRecordProcessorFactory.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.clientlibrary.interfaces.v2;
-
-
-/**
- * The Amazon Kinesis Client Library will use this to instantiate a record processor per shard.
- * Clients may choose to create separate instantiations, or re-use instantiations.
- */
-public interface IRecordProcessorFactory {
-
- /**
- * Returns a record processor to be used for processing data records for a (assigned) shard.
- *
- * @return Returns a processor object.
- */
- IRecordProcessor createProcessor();
-
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockOnParentShardTask.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockOnParentShardTask.java
index b5c05e5f..c4ad765a 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockOnParentShardTask.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockOnParentShardTask.java
@@ -15,9 +15,9 @@
package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.internal.BlockedOnParentShardException;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.ILeaseManager;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/CheckpointValueComparator.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/CheckpointValueComparator.java
index 0d3dd001..4238f313 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/CheckpointValueComparator.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/CheckpointValueComparator.java
@@ -18,7 +18,7 @@ import java.io.Serializable;
import java.math.BigInteger;
import java.util.Comparator;
-import com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint.SentinelCheckpoint;
+import software.amazon.kinesis.checkpoint.SentinelCheckpoint;
/**
*
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/DataFetchingStrategy.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/DataFetchingStrategy.java
deleted file mode 100644
index 05c2ab3f..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/DataFetchingStrategy.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
-
-/**
- *
- */
-public enum DataFetchingStrategy {
- DEFAULT, PREFETCH_CACHED;
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/DoesNothingPreparedCheckpointer.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/DoesNothingPreparedCheckpointer.java
index d40f51d3..a6083bc7 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/DoesNothingPreparedCheckpointer.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/DoesNothingPreparedCheckpointer.java
@@ -18,8 +18,8 @@ import com.amazonaws.services.kinesis.clientlibrary.exceptions.InvalidStateExcep
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibDependencyException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ShutdownException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ThrottlingException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IPreparedCheckpointer;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.processor.IPreparedCheckpointer;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
/**
* A special IPreparedCheckpointer that does nothing, which can be used when preparing a checkpoint at the current
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsRetriever.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsRetriever.java
deleted file mode 100644
index d5b4a782..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsRetriever.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
-
-import com.amazonaws.services.kinesis.model.GetRecordsResult;
-
-import java.util.concurrent.Callable;
-
-/**
- * This class uses the GetRecordsRetrievalStrategy class to retrieve the next set of records and update the cache.
- */
-public interface GetRecordsRetriever {
- GetRecordsResult getNextRecords(int maxRecords);
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/InitializeTask.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/InitializeTask.java
index e85b67a9..66f9e3b2 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/InitializeTask.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/InitializeTask.java
@@ -14,13 +14,15 @@
*/
package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.ICheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint.Checkpoint;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.processor.ICheckpoint;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.checkpoint.Checkpoint;
+import software.amazon.kinesis.retrieval.GetRecordsCache;
+import software.amazon.kinesis.retrieval.KinesisDataFetcher;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.lifecycle.InitializationInput;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.MetricsLevel;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibConfiguration.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibConfiguration.java
index 5a822f88..5044e0e0 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibConfiguration.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibConfiguration.java
@@ -23,12 +23,18 @@ import org.apache.commons.lang.Validate;
import com.amazonaws.ClientConfiguration;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.regions.RegionUtils;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.IMetricsScope;
+import software.amazon.kinesis.metrics.MetricsLevel;
import com.google.common.collect.ImmutableSet;
import lombok.Getter;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.retrieval.DataFetchingStrategy;
+import software.amazon.kinesis.retrieval.KinesisProxy;
+import software.amazon.kinesis.retrieval.RecordsFetcherFactory;
+import software.amazon.kinesis.retrieval.SimpleRecordsFetcherFactory;
/**
* Configuration for the Amazon Kinesis Client Library.
@@ -994,11 +1000,11 @@ public class KinesisClientLibConfiguration {
*
* This value is only used when no records are returned; if records are returned, the {@link com.amazonaws.services.kinesis.clientlibrary.lib.worker.ProcessTask} will
* immediately retrieve the next set of records after the call to
- * {@link com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor#processRecords(ProcessRecordsInput)}
+ * {@link IRecordProcessor#processRecords(ProcessRecordsInput)}
* has returned. Setting this value to high may result in the KCL being unable to catch up. If you are changing this
* value it's recommended that you enable {@link #withCallProcessRecordsEvenForEmptyRecordList(boolean)}, and
* monitor how far behind the records retrieved are by inspecting
- * {@link com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput#getMillisBehindLatest()}, and the
+ * {@link ProcessRecordsInput#getMillisBehindLatest()}, and the
* CloudWatch
* Metric: GetRecords.MillisBehindLatest
@@ -1407,7 +1413,7 @@ public class KinesisClientLibConfiguration {
/**
* @param listShardsBackoffTimeInMillis Max sleep between two listShards call when throttled
- * in {@link com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisProxy}.
+ * in {@link KinesisProxy}.
* @return
*/
public KinesisClientLibConfiguration withListShardsBackoffTimeInMillis(long listShardsBackoffTimeInMillis) {
@@ -1418,7 +1424,7 @@ public class KinesisClientLibConfiguration {
/**
* @param maxListShardsRetryAttempts Max number of retries for listShards when throttled
- * in {@link com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisProxy}.
+ * in {@link KinesisProxy}.
* @return
*/
public KinesisClientLibConfiguration withMaxListShardsRetryAttempts(int maxListShardsRetryAttempts) {
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibLeaseCoordinator.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibLeaseCoordinator.java
index e56b0942..4d0bf6dc 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibLeaseCoordinator.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibLeaseCoordinator.java
@@ -27,16 +27,16 @@ import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibE
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ShutdownException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ThrottlingException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.internal.KinesisClientLibIOException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.ICheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint.Checkpoint;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.impl.LeaseCoordinator;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
+import software.amazon.kinesis.processor.ICheckpoint;
+import software.amazon.kinesis.checkpoint.Checkpoint;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.LeaseCoordinator;
+import software.amazon.kinesis.leases.ILeaseManager;
+import software.amazon.kinesis.metrics.IMetricsFactory;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/MetricsCollectingTaskDecorator.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/MetricsCollectingTaskDecorator.java
index e61da491..68fff081 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/MetricsCollectingTaskDecorator.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/MetricsCollectingTaskDecorator.java
@@ -14,9 +14,9 @@
*/
package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.IMetricsFactory;
+import software.amazon.kinesis.metrics.MetricsLevel;
/**
* Decorates an ITask and reports metrics about its timing and success/failure.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PreparedCheckpointer.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PreparedCheckpointer.java
index b7b4ba9d..3e9544df 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PreparedCheckpointer.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PreparedCheckpointer.java
@@ -18,9 +18,9 @@ import com.amazonaws.services.kinesis.clientlibrary.exceptions.InvalidStateExcep
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibDependencyException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ShutdownException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ThrottlingException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IPreparedCheckpointer;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.processor.IPreparedCheckpointer;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
/**
* Objects of this class are prepared to checkpoint at a specific sequence number. They use an
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ProcessTask.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ProcessTask.java
index d06c3a8b..95ade7e3 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ProcessTask.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ProcessTask.java
@@ -19,15 +19,17 @@ import java.util.List;
import java.util.ListIterator;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxyExtended;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.UserRecord;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.retrieval.GetRecordsCache;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.retrieval.IKinesisProxyExtended;
+import software.amazon.kinesis.retrieval.KinesisDataFetcher;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
+import software.amazon.kinesis.retrieval.kpl.UserRecord;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.IMetricsScope;
+import software.amazon.kinesis.metrics.MetricsLevel;
import com.amazonaws.services.kinesis.model.ExpiredIteratorException;
import com.amazonaws.services.kinesis.model.ProvisionedThroughputExceededException;
import com.amazonaws.services.kinesis.model.Record;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordProcessorCheckpointer.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordProcessorCheckpointer.java
index 1bd6b6ad..6e8640ef 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordProcessorCheckpointer.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordProcessorCheckpointer.java
@@ -19,14 +19,14 @@ import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibD
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ShutdownException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ThrottlingException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.ICheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IPreparedCheckpointer;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.clientlibrary.types.UserRecord;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.impl.ThreadSafeMetricsDelegatingScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
+import software.amazon.kinesis.processor.ICheckpoint;
+import software.amazon.kinesis.processor.IPreparedCheckpointer;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.retrieval.kpl.UserRecord;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.ThreadSafeMetricsDelegatingScope;
+import software.amazon.kinesis.metrics.IMetricsFactory;
import com.amazonaws.services.kinesis.model.Record;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SequenceNumberValidator.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SequenceNumberValidator.java
index 2bdd6159..d6d24f67 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SequenceNumberValidator.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SequenceNumberValidator.java
@@ -17,8 +17,8 @@ package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
import com.amazonaws.AmazonServiceException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibDependencyException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ThrottlingException;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
import com.amazonaws.services.kinesis.model.InvalidArgumentException;
import com.amazonaws.services.kinesis.model.ProvisionedThroughputExceededException;
import com.amazonaws.services.kinesis.model.ShardIteratorType;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardConsumer.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardConsumer.java
index b05ee6b4..4a46264a 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardConsumer.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardConsumer.java
@@ -21,15 +21,20 @@ import java.util.concurrent.Future;
import java.util.concurrent.RejectedExecutionException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.internal.BlockedOnParentShardException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.ICheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
+import software.amazon.kinesis.processor.ICheckpoint;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.ILeaseManager;
+import software.amazon.kinesis.metrics.IMetricsFactory;
import com.google.common.annotations.VisibleForTesting;
import lombok.Getter;
import lombok.extern.slf4j.Slf4j;
+import software.amazon.kinesis.retrieval.AsynchronousGetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.GetRecordsCache;
+import software.amazon.kinesis.retrieval.GetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.KinesisDataFetcher;
+import software.amazon.kinesis.retrieval.SynchronousGetRecordsRetrievalStrategy;
/**
* Responsible for consuming data records of a (specified) shard.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardConsumerShutdownNotification.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardConsumerShutdownNotification.java
index aa5a7942..59c80400 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardConsumerShutdownNotification.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardConsumerShutdownNotification.java
@@ -16,9 +16,9 @@ package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
import java.util.concurrent.CountDownLatch;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IShutdownNotificationAware;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.impl.LeaseCoordinator;
+import software.amazon.kinesis.processor.v2.IShutdownNotificationAware;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.LeaseCoordinator;
/**
* Contains callbacks for completion of stages in a requested record processor shutdown.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardInfo.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardInfo.java
index e681d905..cd742b13 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardInfo.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardInfo.java
@@ -22,7 +22,7 @@ import java.util.List;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
/**
* Used to pass shard related info among different classes and as a key to the map of shard consumers.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTask.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTask.java
index 9efcbe3a..a8bb926b 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTask.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTask.java
@@ -14,9 +14,9 @@
*/
package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.ILeaseManager;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTaskManager.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTaskManager.java
index d1528acb..a79444b2 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTaskManager.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTaskManager.java
@@ -19,10 +19,10 @@ import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Future;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.ILeaseManager;
+import software.amazon.kinesis.metrics.IMetricsFactory;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncer.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncer.java
index 2eb7400d..b992b55d 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncer.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncer.java
@@ -29,15 +29,15 @@ import java.util.Set;
import org.apache.commons.lang.StringUtils;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.internal.KinesisClientLibIOException;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.ILeaseManager;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.MetricsLevel;
import com.amazonaws.services.kinesis.model.Shard;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownNotification.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownNotification.java
index 8fd492cf..43a6b08e 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownNotification.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownNotification.java
@@ -14,7 +14,8 @@
*/
package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
-import com.amazonaws.services.kinesis.clientlibrary.types.ShutdownInput;
+import software.amazon.kinesis.lifecycle.ShutdownInput;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
/**
* A shutdown request to the ShardConsumer
@@ -29,7 +30,7 @@ public interface ShutdownNotification {
/**
* Used to indicate that the record processor has completed the call to
- * {@link com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor#shutdown(ShutdownInput)} has
+ * {@link IRecordProcessor#shutdown(ShutdownInput)} has
* completed.
*/
void shutdownComplete();
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownNotificationTask.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownNotificationTask.java
index 11997367..198c6fa6 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownNotificationTask.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownNotificationTask.java
@@ -14,9 +14,9 @@
*/
package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IShutdownNotificationAware;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.processor.v2.IShutdownNotificationAware;
/**
* Notifies record processor of incoming shutdown request, and gives them a chance to checkpoint.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownReason.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownReason.java
index 05925120..8b6a93a4 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownReason.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownReason.java
@@ -14,7 +14,9 @@
*/
package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
-import com.amazonaws.services.kinesis.clientlibrary.types.ShutdownInput;
+import software.amazon.kinesis.lifecycle.ShutdownInput;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+
import static com.amazonaws.services.kinesis.clientlibrary.lib.worker.ConsumerStates.ConsumerState;
import static com.amazonaws.services.kinesis.clientlibrary.lib.worker.ConsumerStates.ShardConsumerState;
@@ -46,7 +48,7 @@ public enum ShutdownReason {
/**
* Indicates that the entire application is being shutdown, and if desired the record processor will be given a
* final chance to checkpoint. This state will not trigger a direct call to
- * {@link com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor#shutdown(ShutdownInput)}, but
+ * {@link IRecordProcessor#shutdown(ShutdownInput)}, but
* instead depend on a different interface for backward compatibility.
*/
REQUESTED(1, ShardConsumerState.SHUTDOWN_REQUESTED.getConsumerState());
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownTask.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownTask.java
index cd5607b5..205caa18 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownTask.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownTask.java
@@ -14,14 +14,15 @@
*/
package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.clientlibrary.types.ShutdownInput;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.retrieval.GetRecordsCache;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.lifecycle.ShutdownInput;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.ILeaseManager;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.MetricsLevel;
import com.google.common.annotations.VisibleForTesting;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/StreamConfig.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/StreamConfig.java
index b5c283fb..45db90bc 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/StreamConfig.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/StreamConfig.java
@@ -14,7 +14,7 @@
*/
package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
/**
* Used to capture stream configuration and pass it along.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/V1ToV2RecordProcessorAdapter.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/V1ToV2RecordProcessorAdapter.java
index 477acb74..840ea50a 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/V1ToV2RecordProcessorAdapter.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/V1ToV2RecordProcessorAdapter.java
@@ -14,21 +14,21 @@
*/
package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ShutdownInput;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.lifecycle.InitializationInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.ShutdownInput;
/**
- * Adapts a V1 {@link com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessor IRecordProcessor}
- * to V2 {@link com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor IRecordProcessor}.
+ * Adapts a V1 {@link software.amazon.kinesis.processor.IRecordProcessor IRecordProcessor}
+ * to V2 {@link IRecordProcessor IRecordProcessor}.
*/
class V1ToV2RecordProcessorAdapter implements IRecordProcessor {
- private com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessor recordProcessor;
+ private software.amazon.kinesis.processor.IRecordProcessor recordProcessor;
V1ToV2RecordProcessorAdapter(
- com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessor recordProcessor) {
+ software.amazon.kinesis.processor.IRecordProcessor recordProcessor) {
this.recordProcessor = recordProcessor;
}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/V1ToV2RecordProcessorFactoryAdapter.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/V1ToV2RecordProcessorFactoryAdapter.java
index 57146e64..fa1cbcd1 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/V1ToV2RecordProcessorFactoryAdapter.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/V1ToV2RecordProcessorFactoryAdapter.java
@@ -14,20 +14,20 @@
*/
package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessorFactory;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
+import software.amazon.kinesis.processor.v2.IRecordProcessorFactory;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
/**
- * Adapts a V1 {@link com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory
+ * Adapts a V1 {@link software.amazon.kinesis.processor.IRecordProcessorFactory
* IRecordProcessorFactory} to V2
- * {@link com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessorFactory IRecordProcessorFactory}.
+ * {@link IRecordProcessorFactory IRecordProcessorFactory}.
*/
class V1ToV2RecordProcessorFactoryAdapter implements IRecordProcessorFactory {
- private com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory factory;
+ private software.amazon.kinesis.processor.IRecordProcessorFactory factory;
V1ToV2RecordProcessorFactoryAdapter(
- com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory factory) {
+ software.amazon.kinesis.processor.IRecordProcessorFactory factory) {
this.factory = factory;
}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/Worker.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/Worker.java
index 5cb2e09c..440ec46e 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/Worker.java
+++ b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/Worker.java
@@ -40,20 +40,20 @@ import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient;
import com.amazonaws.services.kinesis.AmazonKinesis;
import com.amazonaws.services.kinesis.AmazonKinesisClient;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.ICheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessorFactory;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IShutdownNotificationAware;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisProxy;
-import com.amazonaws.services.kinesis.leases.exceptions.LeasingException;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLeaseManager;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
-import com.amazonaws.services.kinesis.metrics.impl.CWMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.impl.NullMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.processor.ICheckpoint;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.processor.v2.IRecordProcessorFactory;
+import software.amazon.kinesis.processor.v2.IShutdownNotificationAware;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.retrieval.KinesisProxy;
+import software.amazon.kinesis.leases.exceptions.LeasingException;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.KinesisClientLeaseManager;
+import software.amazon.kinesis.leases.ILeaseManager;
+import software.amazon.kinesis.metrics.CWMetricsFactory;
+import software.amazon.kinesis.metrics.NullMetricsFactory;
+import software.amazon.kinesis.metrics.IMetricsFactory;
+import software.amazon.kinesis.metrics.MetricsLevel;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
@@ -132,7 +132,7 @@ public class Worker implements Runnable {
*/
@Deprecated
public Worker(
- com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory recordProcessorFactory,
+ software.amazon.kinesis.processor.IRecordProcessorFactory recordProcessorFactory,
KinesisClientLibConfiguration config) {
this(recordProcessorFactory, config, getExecutorService());
}
@@ -152,7 +152,7 @@ public class Worker implements Runnable {
*/
@Deprecated
public Worker(
- com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory recordProcessorFactory,
+ software.amazon.kinesis.processor.IRecordProcessorFactory recordProcessorFactory,
KinesisClientLibConfiguration config, ExecutorService execService) {
this(recordProcessorFactory, config,
new AmazonKinesisClient(config.getKinesisCredentialsProvider(), config.getKinesisClientConfiguration()),
@@ -176,7 +176,7 @@ public class Worker implements Runnable {
*/
@Deprecated
public Worker(
- com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory recordProcessorFactory,
+ software.amazon.kinesis.processor.IRecordProcessorFactory recordProcessorFactory,
KinesisClientLibConfiguration config, IMetricsFactory metricsFactory) {
this(recordProcessorFactory, config, metricsFactory, getExecutorService());
}
@@ -196,7 +196,7 @@ public class Worker implements Runnable {
*/
@Deprecated
public Worker(
- com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory recordProcessorFactory,
+ software.amazon.kinesis.processor.IRecordProcessorFactory recordProcessorFactory,
KinesisClientLibConfiguration config, IMetricsFactory metricsFactory, ExecutorService execService) {
this(recordProcessorFactory, config,
new AmazonKinesisClient(config.getKinesisCredentialsProvider(), config.getKinesisClientConfiguration()),
@@ -222,7 +222,7 @@ public class Worker implements Runnable {
*/
@Deprecated
public Worker(
- com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory recordProcessorFactory,
+ software.amazon.kinesis.processor.IRecordProcessorFactory recordProcessorFactory,
KinesisClientLibConfiguration config, AmazonKinesis kinesisClient, AmazonDynamoDB dynamoDBClient,
AmazonCloudWatch cloudWatchClient) {
this(recordProcessorFactory, config, kinesisClient, dynamoDBClient, cloudWatchClient, getExecutorService());
@@ -247,7 +247,7 @@ public class Worker implements Runnable {
*/
@Deprecated
public Worker(
- com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory recordProcessorFactory,
+ software.amazon.kinesis.processor.IRecordProcessorFactory recordProcessorFactory,
KinesisClientLibConfiguration config, AmazonKinesis kinesisClient, AmazonDynamoDB dynamoDBClient,
AmazonCloudWatch cloudWatchClient, ExecutorService execService) {
this(recordProcessorFactory, config, kinesisClient, dynamoDBClient, getMetricsFactory(cloudWatchClient, config),
@@ -275,7 +275,7 @@ public class Worker implements Runnable {
*/
@Deprecated
public Worker(
- com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory recordProcessorFactory,
+ software.amazon.kinesis.processor.IRecordProcessorFactory recordProcessorFactory,
KinesisClientLibConfiguration config, AmazonKinesisClient kinesisClient,
AmazonDynamoDBClient dynamoDBClient, AmazonCloudWatchClient cloudWatchClient) {
this(recordProcessorFactory, config, (AmazonKinesis) kinesisClient, (AmazonDynamoDB) dynamoDBClient,
@@ -304,7 +304,7 @@ public class Worker implements Runnable {
*/
@Deprecated
public Worker(
- com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory recordProcessorFactory,
+ software.amazon.kinesis.processor.IRecordProcessorFactory recordProcessorFactory,
KinesisClientLibConfiguration config, AmazonKinesisClient kinesisClient,
AmazonDynamoDBClient dynamoDBClient, AmazonCloudWatchClient cloudWatchClient, ExecutorService execService) {
this(recordProcessorFactory, config, (AmazonKinesis) kinesisClient, (AmazonDynamoDB) dynamoDBClient,
@@ -333,7 +333,7 @@ public class Worker implements Runnable {
*/
@Deprecated
public Worker(
- com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory recordProcessorFactory,
+ software.amazon.kinesis.processor.IRecordProcessorFactory recordProcessorFactory,
KinesisClientLibConfiguration config, AmazonKinesisClient kinesisClient,
AmazonDynamoDBClient dynamoDBClient, IMetricsFactory metricsFactory, ExecutorService execService) {
this(recordProcessorFactory, config, (AmazonKinesis) kinesisClient, (AmazonDynamoDB) dynamoDBClient,
@@ -359,7 +359,7 @@ public class Worker implements Runnable {
*/
@Deprecated
public Worker(
- com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory recordProcessorFactory,
+ software.amazon.kinesis.processor.IRecordProcessorFactory recordProcessorFactory,
KinesisClientLibConfiguration config, AmazonKinesis kinesisClient, AmazonDynamoDB dynamoDBClient,
IMetricsFactory metricsFactory, ExecutorService execService) {
this(config.getApplicationName(), new V1ToV2RecordProcessorFactoryAdapter(recordProcessorFactory),
@@ -1151,7 +1151,7 @@ public class Worker implements Runnable {
private WorkerStateChangeListener workerStateChangeListener;
/**
- * Provide a V1 {@link com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessor
+ * Provide a V1 {@link software.amazon.kinesis.processor.IRecordProcessor
* IRecordProcessor}.
*
* @param recordProcessorFactory
@@ -1159,13 +1159,13 @@ public class Worker implements Runnable {
* @return A reference to this updated object so that method calls can be chained together.
*/
public Builder recordProcessorFactory(
- com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory recordProcessorFactory) {
+ software.amazon.kinesis.processor.IRecordProcessorFactory recordProcessorFactory) {
this.recordProcessorFactory = new V1ToV2RecordProcessorFactoryAdapter(recordProcessorFactory);
return this;
}
/**
- * Provide a V2 {@link com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor
+ * Provide a V2 {@link IRecordProcessor
* IRecordProcessor}.
*
* @param recordProcessorFactory
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/IKinesisProxyExtended.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/IKinesisProxyExtended.java
deleted file mode 100644
index 7b3e8cc2..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/IKinesisProxyExtended.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.clientlibrary.proxies;
-
-import com.amazonaws.services.kinesis.model.Shard;
-
-/**
- * Kinesis proxy interface extended with addition method(s). Operates on a
- * single stream (set up at initialization).
- *
- */
-public interface IKinesisProxyExtended extends IKinesisProxy {
-
- /**
- * Get the Shard corresponding to shardId associated with this
- * IKinesisProxy.
- *
- * @param shardId
- * Fetch the Shard with this given shardId
- * @return the Shard with the given shardId
- */
- Shard getShard(String shardId);
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/IKinesisProxyFactory.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/IKinesisProxyFactory.java
deleted file mode 100644
index dd3c82e5..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/IKinesisProxyFactory.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.clientlibrary.proxies;
-
-/**
- * Interface for a KinesisProxyFactory.
- *
- * @deprecated Deprecating since KinesisProxy is just created once, there is no use of a factory. There is no
- * replacement for this class. This class will be removed in the next major/minor release.
- *
- */
-@Deprecated
-public interface IKinesisProxyFactory {
-
- /**
- * Return an IKinesisProxy object for the specified stream.
- * @param streamName Stream from which data is consumed.
- * @return IKinesisProxy object.
- */
- IKinesisProxy getProxy(String streamName);
-
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/exceptions/DependencyException.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/exceptions/DependencyException.java
deleted file mode 100644
index af5a8fec..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/exceptions/DependencyException.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.leases.exceptions;
-
-/**
- * Indicates that a lease operation has failed because a dependency of the leasing system has failed. This will happen
- * if DynamoDB throws an InternalServerException or a generic AmazonClientException (the specific subclasses of
- * AmazonClientException are all handled more gracefully).
- */
-public class DependencyException extends LeasingException {
-
- private static final long serialVersionUID = 1L;
-
- public DependencyException(Throwable e) {
- super(e);
- }
-
- public DependencyException(String message, Throwable e) {
- super(message, e);
- }
-
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/exceptions/InvalidStateException.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/exceptions/InvalidStateException.java
deleted file mode 100644
index 2cf44d20..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/exceptions/InvalidStateException.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.leases.exceptions;
-
-/**
- * Indicates that a lease operation has failed because DynamoDB is an invalid state. The most common example is failing
- * to create the DynamoDB table before doing any lease operations.
- */
-public class InvalidStateException extends LeasingException {
-
- private static final long serialVersionUID = 1L;
-
- public InvalidStateException(Throwable e) {
- super(e);
- }
-
- public InvalidStateException(String message, Throwable e) {
- super(message, e);
- }
-
- public InvalidStateException(String message) {
- super(message);
- }
-
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/exceptions/LeasingException.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/exceptions/LeasingException.java
deleted file mode 100644
index 00b3ea02..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/exceptions/LeasingException.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.leases.exceptions;
-
-/**
- * Top-level exception type for all exceptions thrown by the leasing code.
- */
-public class LeasingException extends Exception {
-
- public LeasingException(Throwable e) {
- super(e);
- }
-
- public LeasingException(String message, Throwable e) {
- super(message, e);
- }
-
- public LeasingException(String message) {
- super(message);
- }
-
- private static final long serialVersionUID = 1L;
-
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/exceptions/ProvisionedThroughputException.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/exceptions/ProvisionedThroughputException.java
deleted file mode 100644
index 167cb6aa..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/exceptions/ProvisionedThroughputException.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.leases.exceptions;
-
-/**
- * Indicates that a lease operation has failed due to lack of provisioned throughput for a DynamoDB table.
- */
-public class ProvisionedThroughputException extends LeasingException {
-
- private static final long serialVersionUID = 1L;
-
- public ProvisionedThroughputException(Throwable e) {
- super(e);
- }
-
- public ProvisionedThroughputException(String message, Throwable e) {
- super(message, e);
- }
-
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/IKinesisClientLeaseManager.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/IKinesisClientLeaseManager.java
deleted file mode 100644
index 2e3daeca..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/IKinesisClientLeaseManager.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.leases.interfaces;
-
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-
-/**
- * A decoration of ILeaseManager that adds methods to get/update checkpoints.
- */
-public interface IKinesisClientLeaseManager extends ILeaseManager {
-
- /**
- * Gets the current checkpoint of the shard. This is useful in the resharding use case
- * where we will wait for the parent shard to complete before starting on the records from a child shard.
- *
- * @param shardId Checkpoint of this shard will be returned
- * @return Checkpoint of this shard, or null if the shard record doesn't exist.
- *
- * @throws ProvisionedThroughputException if DynamoDB update fails due to lack of capacity
- * @throws InvalidStateException if lease table does not exist
- * @throws DependencyException if DynamoDB update fails in an unexpected way
- */
- public abstract ExtendedSequenceNumber getCheckpoint(String shardId)
- throws ProvisionedThroughputException, InvalidStateException, DependencyException;
-
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/AccumulateByNameMetricsScope.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/AccumulateByNameMetricsScope.java
deleted file mode 100644
index 959f889d..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/AccumulateByNameMetricsScope.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2012-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.metrics.impl;
-
-/**
- * This is a MetricScope with a KeyType of String. It provides the implementation of
- * getting the key based off of the String KeyType.
- */
-
-public abstract class AccumulateByNameMetricsScope extends AccumulatingMetricsScope {
-
- @Override
- protected String getKey(String name) {
- return name;
- }
-
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/LogMetricsFactory.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/LogMetricsFactory.java
deleted file mode 100644
index 07986d05..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/LogMetricsFactory.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.metrics.impl;
-
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
-
-/**
- * An IMetricsFactory that creates IMetricsScopes that output themselves via log4j.
- */
-public class LogMetricsFactory implements IMetricsFactory {
-
- @Override
- public LogMetricsScope createMetrics() {
- return new LogMetricsScope();
- }
-
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/NullMetricsFactory.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/NullMetricsFactory.java
deleted file mode 100644
index 4169d076..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/NullMetricsFactory.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.metrics.impl;
-
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-
-public class NullMetricsFactory implements IMetricsFactory {
-
- private static final NullMetricsScope SCOPE = new NullMetricsScope();
-
- @Override
- public IMetricsScope createMetrics() {
- return SCOPE;
- }
-
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/NullMetricsScope.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/NullMetricsScope.java
deleted file mode 100644
index 7d66dffc..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/NullMetricsScope.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright 2012-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.metrics.impl;
-
-import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
-
-public class NullMetricsScope implements IMetricsScope {
-
- @Override
- public void addData(String name, double value, StandardUnit unit) {
-
- }
-
- @Override
- public void addData(String name, double value, StandardUnit unit, MetricsLevel level) {
-
- }
-
- @Override
- public void addDimension(String name, String value) {
-
- }
-
- @Override
- public void end() {
-
- }
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/ThreadSafeMetricsDelegatingFactory.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/ThreadSafeMetricsDelegatingFactory.java
deleted file mode 100644
index ede5b9c5..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/ThreadSafeMetricsDelegatingFactory.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright 2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.metrics.impl;
-
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-
-/**
- * Metrics scope factory that delegates metrics scope creation to another factory, but
- * returns metrics scope that is thread safe.
- */
-public class ThreadSafeMetricsDelegatingFactory implements IMetricsFactory {
-
- /** Metrics factory to delegate to. */
- private final IMetricsFactory delegate;
-
- /**
- * Creates an instance of the metrics factory.
- * @param delegate metrics factory to delegate to
- */
- public ThreadSafeMetricsDelegatingFactory(IMetricsFactory delegate) {
- this.delegate = delegate;
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public IMetricsScope createMetrics() {
- return new ThreadSafeMetricsDelegatingScope(delegate.createMetrics());
- }
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/interfaces/IMetricsFactory.java b/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/interfaces/IMetricsFactory.java
deleted file mode 100644
index 03beda07..00000000
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/interfaces/IMetricsFactory.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/asl/
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.amazonaws.services.kinesis.metrics.interfaces;
-
-/**
- * Factory for MetricsScope objects.
- */
-public interface IMetricsFactory {
- /**
- * @return a new IMetricsScope object of the type constructed by this factory.
- */
- public IMetricsScope createMetrics();
-}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/Checkpoint.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/checkpoint/Checkpoint.java
similarity index 54%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/Checkpoint.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/checkpoint/Checkpoint.java
index d81c632f..8fdb9aab 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/Checkpoint.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/checkpoint/Checkpoint.java
@@ -1,6 +1,20 @@
-package com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint;
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.checkpoint;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
import lombok.Data;
/**
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/SentinelCheckpoint.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/checkpoint/SentinelCheckpoint.java
similarity index 50%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/SentinelCheckpoint.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/checkpoint/SentinelCheckpoint.java
index d4442b82..435f9cc2 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/SentinelCheckpoint.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/checkpoint/SentinelCheckpoint.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint;
+package software.amazon.kinesis.checkpoint;
/**
* Enumeration of the sentinel values of checkpoints.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/util/DynamoUtils.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/DynamoUtils.java
similarity index 76%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/util/DynamoUtils.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/DynamoUtils.java
index 9c40394b..f9264662 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/util/DynamoUtils.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/DynamoUtils.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.util;
+package software.amazon.kinesis.leases;
import java.util.ArrayList;
import java.util.Collection;
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/IKinesisClientLeaseManager.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/IKinesisClientLeaseManager.java
new file mode 100644
index 00000000..503ef65a
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/IKinesisClientLeaseManager.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.leases;
+
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+
+/**
+ * A decoration of ILeaseManager that adds methods to get/update checkpoints.
+ */
+public interface IKinesisClientLeaseManager extends ILeaseManager {
+
+ /**
+ * Gets the current checkpoint of the shard. This is useful in the resharding use case
+ * where we will wait for the parent shard to complete before starting on the records from a child shard.
+ *
+ * @param shardId Checkpoint of this shard will be returned
+ * @return Checkpoint of this shard, or null if the shard record doesn't exist.
+ *
+ * @throws ProvisionedThroughputException if DynamoDB update fails due to lack of capacity
+ * @throws InvalidStateException if lease table does not exist
+ * @throws DependencyException if DynamoDB update fails in an unexpected way
+ */
+ public abstract ExtendedSequenceNumber getCheckpoint(String shardId)
+ throws ProvisionedThroughputException, InvalidStateException, DependencyException;
+
+}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/ILeaseManager.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/ILeaseManager.java
similarity index 89%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/ILeaseManager.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/ILeaseManager.java
index ab296cc1..9b5088f3 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/ILeaseManager.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/ILeaseManager.java
@@ -1,25 +1,25 @@
/*
- * Copyright 2012-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.interfaces;
+package software.amazon.kinesis.leases;
import java.util.List;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.impl.Lease;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.leases.Lease;
/**
* Supports basic CRUD operations for Leases.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/ILeaseRenewer.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/ILeaseRenewer.java
similarity index 78%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/ILeaseRenewer.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/ILeaseRenewer.java
index 87e9182a..8f681531 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/ILeaseRenewer.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/ILeaseRenewer.java
@@ -1,27 +1,27 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.interfaces;
+package software.amazon.kinesis.leases;
import java.util.Collection;
import java.util.Map;
import java.util.UUID;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.impl.Lease;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.leases.Lease;
/**
* ILeaseRenewer objects are used by LeaseCoordinator to renew leases held by the LeaseCoordinator. Each
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/ILeaseSerializer.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/ILeaseSerializer.java
similarity index 83%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/ILeaseSerializer.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/ILeaseSerializer.java
index 2edb8d56..c01a03b1 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/ILeaseSerializer.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/ILeaseSerializer.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.interfaces;
+package software.amazon.kinesis.leases;
import java.util.Collection;
import java.util.Map;
@@ -22,7 +22,7 @@ import com.amazonaws.services.dynamodbv2.model.AttributeValue;
import com.amazonaws.services.dynamodbv2.model.AttributeValueUpdate;
import com.amazonaws.services.dynamodbv2.model.ExpectedAttributeValue;
import com.amazonaws.services.dynamodbv2.model.KeySchemaElement;
-import com.amazonaws.services.kinesis.leases.impl.Lease;
+import software.amazon.kinesis.leases.Lease;
/**
* Utility class that manages the mapping of Lease objects/operations to records in DynamoDB.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/ILeaseTaker.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/ILeaseTaker.java
similarity index 60%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/ILeaseTaker.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/ILeaseTaker.java
index 2f8b5caa..54b5546e 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/interfaces/ILeaseTaker.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/ILeaseTaker.java
@@ -1,24 +1,24 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.interfaces;
+package software.amazon.kinesis.leases;
import java.util.Map;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.impl.Lease;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.Lease;
/**
* ILeaseTaker is used by LeaseCoordinator to take new leases, or leases that other workers fail to renew. Each
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/KinesisClientLease.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/KinesisClientLease.java
similarity index 98%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/KinesisClientLease.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/KinesisClientLease.java
index 5f2d56b0..585ce9e8 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/KinesisClientLease.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/KinesisClientLease.java
@@ -12,14 +12,14 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.Collection;
import java.util.HashSet;
import java.util.Set;
import java.util.UUID;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
/**
* A Lease subclass containing KinesisClientLibrary related fields for checkpoints.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/KinesisClientLeaseManager.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/KinesisClientLeaseManager.java
similarity index 67%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/KinesisClientLeaseManager.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/KinesisClientLeaseManager.java
index 96897b60..f304b525 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/KinesisClientLeaseManager.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/KinesisClientLeaseManager.java
@@ -1,25 +1,24 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.interfaces.IKinesisClientLeaseManager;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
/**
* An implementation of LeaseManager for the KinesisClientLibrary - takeLease updates the ownerSwitchesSinceCheckpoint field.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/KinesisClientLeaseSerializer.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/KinesisClientLeaseSerializer.java
similarity index 96%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/KinesisClientLeaseSerializer.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/KinesisClientLeaseSerializer.java
index 1234e164..3fa620b4 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/KinesisClientLeaseSerializer.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/KinesisClientLeaseSerializer.java
@@ -12,7 +12,7 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.Collection;
import java.util.Map;
@@ -23,9 +23,7 @@ import com.amazonaws.services.dynamodbv2.model.AttributeValue;
import com.amazonaws.services.dynamodbv2.model.AttributeValueUpdate;
import com.amazonaws.services.dynamodbv2.model.ExpectedAttributeValue;
import com.amazonaws.services.dynamodbv2.model.KeySchemaElement;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseSerializer;
-import com.amazonaws.services.kinesis.leases.util.DynamoUtils;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
import com.google.common.base.Strings;
/**
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/Lease.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/Lease.java
similarity index 92%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/Lease.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/Lease.java
index 32234e35..05f7e731 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/Lease.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/Lease.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseCoordinator.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseCoordinator.java
similarity index 90%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseCoordinator.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseCoordinator.java
index 06eb2d35..e38a6fcb 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseCoordinator.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseCoordinator.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.Collection;
import java.util.Map;
@@ -27,18 +27,15 @@ import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisClientLibConfiguration;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.LeasingException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseRenewer;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseTaker;
-import com.amazonaws.services.kinesis.metrics.impl.LogMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.LeasingException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.metrics.LogMetricsFactory;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.IMetricsFactory;
+import software.amazon.kinesis.metrics.IMetricsScope;
+import software.amazon.kinesis.metrics.MetricsLevel;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseManager.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseManager.java
similarity index 98%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseManager.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseManager.java
index 0b4870f8..41772b1f 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseManager.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseManager.java
@@ -12,7 +12,7 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.ArrayList;
import java.util.List;
@@ -40,11 +40,9 @@ import com.amazonaws.services.dynamodbv2.model.ScanRequest;
import com.amazonaws.services.dynamodbv2.model.ScanResult;
import com.amazonaws.services.dynamodbv2.model.TableStatus;
import com.amazonaws.services.dynamodbv2.model.UpdateItemRequest;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseSerializer;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseRenewer.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseRenewer.java
similarity index 92%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseRenewer.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseRenewer.java
index e6a9c904..aa33ca0f 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseRenewer.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseRenewer.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.ArrayList;
import java.util.Collection;
@@ -30,15 +30,13 @@ import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseRenewer;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.impl.ThreadSafeMetricsDelegatingScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.ThreadSafeMetricsDelegatingScope;
+import software.amazon.kinesis.metrics.IMetricsScope;
+import software.amazon.kinesis.metrics.MetricsLevel;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseSerializer.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseSerializer.java
similarity index 89%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseSerializer.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseSerializer.java
index 42121292..029aae1e 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseSerializer.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseSerializer.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.ArrayList;
import java.util.Collection;
@@ -28,8 +28,6 @@ import com.amazonaws.services.dynamodbv2.model.ExpectedAttributeValue;
import com.amazonaws.services.dynamodbv2.model.KeySchemaElement;
import com.amazonaws.services.dynamodbv2.model.KeyType;
import com.amazonaws.services.dynamodbv2.model.ScalarAttributeType;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseSerializer;
-import com.amazonaws.services.kinesis.leases.util.DynamoUtils;
/**
* An implementation of ILeaseSerializer for basic Lease objects. Can also instantiate subclasses of Lease so that
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseTaker.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseTaker.java
similarity index 94%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseTaker.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseTaker.java
index d9c828b1..72661497 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/leases/impl/LeaseTaker.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/LeaseTaker.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.ArrayList;
import java.util.Collection;
@@ -27,14 +27,12 @@ import java.util.concurrent.Callable;
import java.util.concurrent.TimeUnit;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseTaker;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.IMetricsScope;
+import software.amazon.kinesis.metrics.MetricsLevel;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/exceptions/DependencyException.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/exceptions/DependencyException.java
new file mode 100644
index 00000000..efaa1ad9
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/exceptions/DependencyException.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.leases.exceptions;
+
+/**
+ * Indicates that a lease operation has failed because a dependency of the leasing system has failed. This will happen
+ * if DynamoDB throws an InternalServerException or a generic AmazonClientException (the specific subclasses of
+ * AmazonClientException are all handled more gracefully).
+ */
+public class DependencyException extends LeasingException {
+
+ private static final long serialVersionUID = 1L;
+
+ public DependencyException(Throwable e) {
+ super(e);
+ }
+
+ public DependencyException(String message, Throwable e) {
+ super(message, e);
+ }
+
+}
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/exceptions/InvalidStateException.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/exceptions/InvalidStateException.java
new file mode 100644
index 00000000..0929fee2
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/exceptions/InvalidStateException.java
@@ -0,0 +1,37 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.leases.exceptions;
+
+/**
+ * Indicates that a lease operation has failed because DynamoDB is an invalid state. The most common example is failing
+ * to create the DynamoDB table before doing any lease operations.
+ */
+public class InvalidStateException extends LeasingException {
+
+ private static final long serialVersionUID = 1L;
+
+ public InvalidStateException(Throwable e) {
+ super(e);
+ }
+
+ public InvalidStateException(String message, Throwable e) {
+ super(message, e);
+ }
+
+ public InvalidStateException(String message) {
+ super(message);
+ }
+
+}
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/exceptions/LeasingException.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/exceptions/LeasingException.java
new file mode 100644
index 00000000..a59e69c1
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/exceptions/LeasingException.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.leases.exceptions;
+
+/**
+ * Top-level exception type for all exceptions thrown by the leasing code.
+ */
+public class LeasingException extends Exception {
+
+ public LeasingException(Throwable e) {
+ super(e);
+ }
+
+ public LeasingException(String message, Throwable e) {
+ super(message, e);
+ }
+
+ public LeasingException(String message) {
+ super(message);
+ }
+
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/exceptions/ProvisionedThroughputException.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/exceptions/ProvisionedThroughputException.java
new file mode 100644
index 00000000..9409d3db
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/leases/exceptions/ProvisionedThroughputException.java
@@ -0,0 +1,32 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.leases.exceptions;
+
+/**
+ * Indicates that a lease operation has failed due to lack of provisioned throughput for a DynamoDB table.
+ */
+public class ProvisionedThroughputException extends LeasingException {
+
+ private static final long serialVersionUID = 1L;
+
+ public ProvisionedThroughputException(Throwable e) {
+ super(e);
+ }
+
+ public ProvisionedThroughputException(String message, Throwable e) {
+ super(message, e);
+ }
+
+}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/InitializationInput.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/lifecycle/InitializationInput.java
similarity index 93%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/InitializationInput.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/lifecycle/InitializationInput.java
index fce165f2..e6b95632 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/InitializationInput.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/lifecycle/InitializationInput.java
@@ -12,11 +12,14 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.types;
+package software.amazon.kinesis.lifecycle;
+
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
/**
* Container for the parameters to the IRecordProcessor's
- * {@link com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor#initialize(InitializationInput
+ * {@link IRecordProcessor#initialize(InitializationInput
* initializationInput) initialize} method.
*/
public class InitializationInput {
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/ProcessRecordsInput.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/lifecycle/ProcessRecordsInput.java
similarity index 93%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/ProcessRecordsInput.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/lifecycle/ProcessRecordsInput.java
index 362af357..b2bd2fb8 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/ProcessRecordsInput.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/lifecycle/ProcessRecordsInput.java
@@ -12,20 +12,21 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.types;
+package software.amazon.kinesis.lifecycle;
import java.time.Duration;
import java.time.Instant;
import java.util.List;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
import com.amazonaws.services.kinesis.model.Record;
import lombok.Getter;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
/**
* Container for the parameters to the IRecordProcessor's
- * {@link com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor#processRecords(
+ * {@link IRecordProcessor#processRecords(
* ProcessRecordsInput processRecordsInput) processRecords} method.
*/
public class ProcessRecordsInput {
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/ShutdownInput.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/lifecycle/ShutdownInput.java
similarity index 89%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/ShutdownInput.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/lifecycle/ShutdownInput.java
index 368dd3d3..464f2dd0 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/ShutdownInput.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/lifecycle/ShutdownInput.java
@@ -12,14 +12,15 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.types;
+package software.amazon.kinesis.lifecycle;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShutdownReason;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
/**
* Container for the parameters to the IRecordProcessor's
- * {@link com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor#shutdown(ShutdownInput
+ * {@link IRecordProcessor#shutdown(ShutdownInput
* shutdownInput) shutdown} method.
*/
public class ShutdownInput {
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/AccumulateByNameMetricsScope.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/AccumulateByNameMetricsScope.java
new file mode 100644
index 00000000..e8df50ec
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/AccumulateByNameMetricsScope.java
@@ -0,0 +1,29 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.metrics;
+
+/**
+ * This is a MetricScope with a KeyType of String. It provides the implementation of
+ * getting the key based off of the String KeyType.
+ */
+
+public abstract class AccumulateByNameMetricsScope extends AccumulatingMetricsScope {
+
+ @Override
+ protected String getKey(String name) {
+ return name;
+ }
+
+}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/AccumulatingMetricsScope.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/AccumulatingMetricsScope.java
similarity index 82%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/AccumulatingMetricsScope.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/AccumulatingMetricsScope.java
index 1e12744f..28a9de1c 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/AccumulatingMetricsScope.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/AccumulatingMetricsScope.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.HashMap;
import java.util.Map;
@@ -20,7 +20,6 @@ import java.util.Map;
import com.amazonaws.services.cloudwatch.model.MetricDatum;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
import com.amazonaws.services.cloudwatch.model.StatisticSet;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
/**
* An IMetricsScope that accumulates data from multiple calls to addData with
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/CWMetricKey.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/CWMetricKey.java
similarity index 66%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/CWMetricKey.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/CWMetricKey.java
index 26cb151f..b4cc9457 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/CWMetricKey.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/CWMetricKey.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.List;
import java.util.Objects;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/CWMetricsFactory.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/CWMetricsFactory.java
similarity index 86%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/CWMetricsFactory.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/CWMetricsFactory.java
index 66a977c5..2eada77b 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/CWMetricsFactory.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/CWMetricsFactory.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.Set;
@@ -21,9 +21,6 @@ import com.amazonaws.ClientConfiguration;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.services.cloudwatch.AmazonCloudWatch;
import com.amazonaws.services.cloudwatch.AmazonCloudWatchClient;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
import com.google.common.collect.ImmutableSet;
/**
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/CWMetricsScope.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/CWMetricsScope.java
similarity index 70%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/CWMetricsScope.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/CWMetricsScope.java
index c301850e..7d400e2a 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/CWMetricsScope.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/CWMetricsScope.java
@@ -1,26 +1,24 @@
/*
- * Copyright 2012-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import com.amazonaws.services.cloudwatch.model.MetricDatum;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
/**
* Metrics scope for CloudWatch metrics.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/CWPublisherRunnable.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/CWPublisherRunnable.java
similarity index 91%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/CWPublisherRunnable.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/CWPublisherRunnable.java
index c6e668ac..b45367d1 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/CWPublisherRunnable.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/CWPublisherRunnable.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.Collection;
import java.util.List;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/DefaultCWMetricsPublisher.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/DefaultCWMetricsPublisher.java
similarity index 75%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/DefaultCWMetricsPublisher.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/DefaultCWMetricsPublisher.java
index 1022d27e..c27e1153 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/DefaultCWMetricsPublisher.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/DefaultCWMetricsPublisher.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.ArrayList;
import java.util.List;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/DimensionTrackingMetricsScope.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/DimensionTrackingMetricsScope.java
similarity index 60%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/DimensionTrackingMetricsScope.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/DimensionTrackingMetricsScope.java
index d9780977..26a0c308 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/DimensionTrackingMetricsScope.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/DimensionTrackingMetricsScope.java
@@ -1,24 +1,23 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.HashSet;
import java.util.Set;
import com.amazonaws.services.cloudwatch.model.Dimension;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
/**
* DimensionTrackingMetricsScope is where we provide functionality for dimensions.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/EndingMetricsScope.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/EndingMetricsScope.java
similarity index 62%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/EndingMetricsScope.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/EndingMetricsScope.java
index 964b3539..1b00f025 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/EndingMetricsScope.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/EndingMetricsScope.java
@@ -1,21 +1,20 @@
/*
- * Copyright 2012-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
public abstract class EndingMetricsScope extends DimensionTrackingMetricsScope {
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/FilteringMetricsScope.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/FilteringMetricsScope.java
similarity index 82%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/FilteringMetricsScope.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/FilteringMetricsScope.java
index f10142f4..6496624d 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/FilteringMetricsScope.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/FilteringMetricsScope.java
@@ -1,23 +1,22 @@
/*
- * Copyright 2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.Set;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
import com.google.common.collect.ImmutableSet;
/**
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/ICWMetricsPublisher.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/ICWMetricsPublisher.java
similarity index 53%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/ICWMetricsPublisher.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/ICWMetricsPublisher.java
index 6c6afe17..41b987f7 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/ICWMetricsPublisher.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/ICWMetricsPublisher.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.List;
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/IMetricsFactory.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/IMetricsFactory.java
new file mode 100644
index 00000000..4d3db377
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/IMetricsFactory.java
@@ -0,0 +1,25 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.metrics;
+
+/**
+ * Factory for MetricsScope objects.
+ */
+public interface IMetricsFactory {
+ /**
+ * @return a new IMetricsScope object of the type constructed by this factory.
+ */
+ public IMetricsScope createMetrics();
+}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/interfaces/IMetricsScope.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/IMetricsScope.java
similarity index 73%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/interfaces/IMetricsScope.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/IMetricsScope.java
index 5683b345..cafb6c76 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/interfaces/IMetricsScope.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/IMetricsScope.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.interfaces;
+package software.amazon.kinesis.metrics;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/InterceptingMetricsFactory.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/InterceptingMetricsFactory.java
similarity index 70%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/InterceptingMetricsFactory.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/InterceptingMetricsFactory.java
index f89f9550..7182171c 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/InterceptingMetricsFactory.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/InterceptingMetricsFactory.java
@@ -1,23 +1,20 @@
/*
- * Copyright 2012-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
public abstract class InterceptingMetricsFactory implements IMetricsFactory {
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/LogMetricsFactory.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/LogMetricsFactory.java
new file mode 100644
index 00000000..70314045
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/LogMetricsFactory.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.metrics;
+
+/**
+ * An IMetricsFactory that creates IMetricsScopes that output themselves via log4j.
+ */
+public class LogMetricsFactory implements IMetricsFactory {
+
+ @Override
+ public LogMetricsScope createMetrics() {
+ return new LogMetricsScope();
+ }
+
+}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/LogMetricsScope.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/LogMetricsScope.java
similarity index 70%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/LogMetricsScope.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/LogMetricsScope.java
index 483f1723..ebea84a5 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/LogMetricsScope.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/LogMetricsScope.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import com.amazonaws.services.cloudwatch.model.Dimension;
import com.amazonaws.services.cloudwatch.model.MetricDatum;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/MetricAccumulatingQueue.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/MetricAccumulatingQueue.java
similarity index 85%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/MetricAccumulatingQueue.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/MetricAccumulatingQueue.java
index cfd01322..00eecb14 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/MetricAccumulatingQueue.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/MetricAccumulatingQueue.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.ArrayList;
import java.util.HashMap;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/MetricDatumWithKey.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/MetricDatumWithKey.java
similarity index 73%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/MetricDatumWithKey.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/MetricDatumWithKey.java
index c7066bc6..4e6001c7 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/MetricDatumWithKey.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/MetricDatumWithKey.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.Objects;
import com.amazonaws.services.cloudwatch.model.MetricDatum;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/MetricsHelper.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/MetricsHelper.java
similarity index 86%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/MetricsHelper.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/MetricsHelper.java
index becec3cc..21411136 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/MetricsHelper.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/MetricsHelper.java
@@ -1,23 +1,20 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/interfaces/MetricsLevel.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/MetricsLevel.java
similarity index 76%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/interfaces/MetricsLevel.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/MetricsLevel.java
index 5ad9ed48..860df187 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/interfaces/MetricsLevel.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/MetricsLevel.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.interfaces;
+package software.amazon.kinesis.metrics;
/**
* This class defines a set of standard metrics levels that can be used to control which metrics get emitted.
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/NullMetricsFactory.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/NullMetricsFactory.java
new file mode 100644
index 00000000..f3b7b4db
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/NullMetricsFactory.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.metrics;
+
+public class NullMetricsFactory implements IMetricsFactory {
+
+ private static final NullMetricsScope SCOPE = new NullMetricsScope();
+
+ @Override
+ public IMetricsScope createMetrics() {
+ return SCOPE;
+ }
+
+}
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/NullMetricsScope.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/NullMetricsScope.java
new file mode 100644
index 00000000..5cf334b4
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/NullMetricsScope.java
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.metrics;
+
+import com.amazonaws.services.cloudwatch.model.StandardUnit;
+
+public class NullMetricsScope implements IMetricsScope {
+
+ @Override
+ public void addData(String name, double value, StandardUnit unit) {
+
+ }
+
+ @Override
+ public void addData(String name, double value, StandardUnit unit, MetricsLevel level) {
+
+ }
+
+ @Override
+ public void addDimension(String name, String value) {
+
+ }
+
+ @Override
+ public void end() {
+
+ }
+}
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/ThreadSafeMetricsDelegatingFactory.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/ThreadSafeMetricsDelegatingFactory.java
new file mode 100644
index 00000000..e879f4c2
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/ThreadSafeMetricsDelegatingFactory.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.metrics;
+
+/**
+ * Metrics scope factory that delegates metrics scope creation to another factory, but
+ * returns metrics scope that is thread safe.
+ */
+public class ThreadSafeMetricsDelegatingFactory implements IMetricsFactory {
+
+ /** Metrics factory to delegate to. */
+ private final IMetricsFactory delegate;
+
+ /**
+ * Creates an instance of the metrics factory.
+ * @param delegate metrics factory to delegate to
+ */
+ public ThreadSafeMetricsDelegatingFactory(IMetricsFactory delegate) {
+ this.delegate = delegate;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public IMetricsScope createMetrics() {
+ return new ThreadSafeMetricsDelegatingScope(delegate.createMetrics());
+ }
+}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/ThreadSafeMetricsDelegatingScope.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/ThreadSafeMetricsDelegatingScope.java
similarity index 63%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/ThreadSafeMetricsDelegatingScope.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/ThreadSafeMetricsDelegatingScope.java
index 5af4fab8..8ed38710 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/metrics/impl/ThreadSafeMetricsDelegatingScope.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/metrics/ThreadSafeMetricsDelegatingScope.java
@@ -1,22 +1,20 @@
/*
- * Copyright 2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
/**
* Metrics scope that delegates to another metrics scope and is thread safe to be shared
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/ICheckpoint.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/ICheckpoint.java
similarity index 79%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/ICheckpoint.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/ICheckpoint.java
index 83c29b44..4e610b43 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/ICheckpoint.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/ICheckpoint.java
@@ -1,22 +1,22 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.interfaces;
+package software.amazon.kinesis.processor;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibException;
-import com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint.Checkpoint;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.checkpoint.Checkpoint;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
/**
* Interface for checkpoint trackers.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/IPreparedCheckpointer.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/IPreparedCheckpointer.java
similarity index 75%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/IPreparedCheckpointer.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/IPreparedCheckpointer.java
index 04827a63..da06843b 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/IPreparedCheckpointer.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/IPreparedCheckpointer.java
@@ -1,10 +1,24 @@
-package com.amazonaws.services.kinesis.clientlibrary.interfaces;
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.processor;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.InvalidStateException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibDependencyException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ShutdownException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ThrottlingException;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
/**
* Objects of this class are prepared to checkpoint at a specific sequence number. They use an
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/IRecordProcessor.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/IRecordProcessor.java
similarity index 77%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/IRecordProcessor.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/IRecordProcessor.java
index 89cf092a..19f27680 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/IRecordProcessor.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/IRecordProcessor.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.interfaces;
+package software.amazon.kinesis.processor;
import java.util.List;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/IRecordProcessorCheckpointer.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/IRecordProcessorCheckpointer.java
similarity index 96%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/IRecordProcessorCheckpointer.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/IRecordProcessorCheckpointer.java
index df4acc36..397b947f 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/IRecordProcessorCheckpointer.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/IRecordProcessorCheckpointer.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2014 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.interfaces;
+package software.amazon.kinesis.processor;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibDependencyException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.InvalidStateException;
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/IRecordProcessorFactory.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/IRecordProcessorFactory.java
new file mode 100644
index 00000000..8186fa13
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/IRecordProcessorFactory.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.processor;
+
+/**
+ * The Amazon Kinesis Client Library will use this to instantiate a record processor per shard.
+ * Clients may choose to create separate instantiations, or re-use instantiations.
+ */
+public interface IRecordProcessorFactory {
+
+ /**
+ * Returns a record processor to be used for processing data records for a (assigned) shard.
+ *
+ * @return Returns a processor object.
+ */
+ IRecordProcessor createProcessor();
+
+}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/v2/IRecordProcessor.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/v2/IRecordProcessor.java
similarity index 67%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/v2/IRecordProcessor.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/v2/IRecordProcessor.java
index bd445ac9..fd3bbca5 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/v2/IRecordProcessor.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/v2/IRecordProcessor.java
@@ -1,22 +1,22 @@
/*
- * Copyright 2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.interfaces.v2;
+package software.amazon.kinesis.processor.v2;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ShutdownInput;
+import software.amazon.kinesis.lifecycle.InitializationInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.ShutdownInput;
/**
* The Amazon Kinesis Client Library will instantiate record processors to process data records fetched from Amazon
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/v2/IRecordProcessorFactory.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/v2/IRecordProcessorFactory.java
new file mode 100644
index 00000000..fd4ca7b2
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/v2/IRecordProcessorFactory.java
@@ -0,0 +1,31 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.processor.v2;
+
+
+/**
+ * The Amazon Kinesis Client Library will use this to instantiate a record processor per shard.
+ * Clients may choose to create separate instantiations, or re-use instantiations.
+ */
+public interface IRecordProcessorFactory {
+
+ /**
+ * Returns a record processor to be used for processing data records for a (assigned) shard.
+ *
+ * @return Returns a processor object.
+ */
+ IRecordProcessor createProcessor();
+
+}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/v2/IShutdownNotificationAware.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/v2/IShutdownNotificationAware.java
similarity index 87%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/v2/IShutdownNotificationAware.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/v2/IShutdownNotificationAware.java
index b4d4629c..82200235 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/interfaces/v2/IShutdownNotificationAware.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/v2/IShutdownNotificationAware.java
@@ -12,9 +12,9 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.interfaces.v2;
+package software.amazon.kinesis.processor.v2;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
/**
* Allows a record processor to indicate it's aware of requested shutdowns, and handle the request.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/AsynchronousGetRecordsRetrievalStrategy.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/AsynchronousGetRecordsRetrievalStrategy.java
similarity index 96%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/AsynchronousGetRecordsRetrievalStrategy.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/AsynchronousGetRecordsRetrievalStrategy.java
index d4d00558..05da601b 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/AsynchronousGetRecordsRetrievalStrategy.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/AsynchronousGetRecordsRetrievalStrategy.java
@@ -12,7 +12,7 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
import java.util.HashSet;
import java.util.Set;
@@ -28,8 +28,9 @@ import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import java.util.function.Supplier;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.impl.ThreadSafeMetricsDelegatingScope;
+import com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisDataFetcher;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.ThreadSafeMetricsDelegatingScope;
import com.amazonaws.services.kinesis.model.ExpiredIteratorException;
import com.amazonaws.services.kinesis.model.GetRecordsResult;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockingGetRecordsCache.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/BlockingGetRecordsCache.java
similarity index 93%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockingGetRecordsCache.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/BlockingGetRecordsCache.java
index 67d786da..e8612a1f 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockingGetRecordsCache.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/BlockingGetRecordsCache.java
@@ -13,9 +13,9 @@
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
import com.amazonaws.services.kinesis.model.GetRecordsResult;
/**
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/DataFetcherResult.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/DataFetcherResult.java
similarity index 95%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/DataFetcherResult.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/DataFetcherResult.java
index a7121ff2..17cc47ce 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/DataFetcherResult.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/DataFetcherResult.java
@@ -5,7 +5,7 @@
* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific
* language governing permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
import com.amazonaws.services.kinesis.model.GetRecordsResult;
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/DataFetchingStrategy.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/DataFetchingStrategy.java
new file mode 100644
index 00000000..05547db2
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/DataFetchingStrategy.java
@@ -0,0 +1,22 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.retrieval;
+
+/**
+ *
+ */
+public enum DataFetchingStrategy {
+ DEFAULT, PREFETCH_CACHED;
+}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsCache.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/GetRecordsCache.java
similarity index 89%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsCache.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/GetRecordsCache.java
index dba24f8d..57abe45c 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsCache.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/GetRecordsCache.java
@@ -13,9 +13,9 @@
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
/**
* This class is used as a cache for Prefetching data from Kinesis.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsRetrievalStrategy.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/GetRecordsRetrievalStrategy.java
similarity index 96%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsRetrievalStrategy.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/GetRecordsRetrievalStrategy.java
index 4f474887..5a11a8a2 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsRetrievalStrategy.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/GetRecordsRetrievalStrategy.java
@@ -12,7 +12,7 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
import com.amazonaws.services.kinesis.model.GetRecordsResult;
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/GetRecordsRetriever.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/GetRecordsRetriever.java
new file mode 100644
index 00000000..ec3d4b15
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/GetRecordsRetriever.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.retrieval;
+
+import com.amazonaws.services.kinesis.model.GetRecordsResult;
+
+import java.util.concurrent.Callable;
+
+/**
+ * This class uses the GetRecordsRetrievalStrategy class to retrieve the next set of records and update the cache.
+ */
+public interface GetRecordsRetriever {
+ GetRecordsResult getNextRecords(int maxRecords);
+}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/IKinesisProxy.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/IKinesisProxy.java
similarity index 91%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/IKinesisProxy.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/IKinesisProxy.java
index 73a868dd..b579e9bb 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/IKinesisProxy.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/IKinesisProxy.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.proxies;
+package software.amazon.kinesis.retrieval;
import java.nio.ByteBuffer;
import java.util.Date;
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/IKinesisProxyExtended.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/IKinesisProxyExtended.java
new file mode 100644
index 00000000..fa036670
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/IKinesisProxyExtended.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.retrieval;
+
+import com.amazonaws.services.kinesis.model.Shard;
+
+/**
+ * Kinesis proxy interface extended with addition method(s). Operates on a
+ * single stream (set up at initialization).
+ *
+ */
+public interface IKinesisProxyExtended extends IKinesisProxy {
+
+ /**
+ * Get the Shard corresponding to shardId associated with this
+ * IKinesisProxy.
+ *
+ * @param shardId
+ * Fetch the Shard with this given shardId
+ * @return the Shard with the given shardId
+ */
+ Shard getShard(String shardId);
+}
diff --git a/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/IKinesisProxyFactory.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/IKinesisProxyFactory.java
new file mode 100644
index 00000000..87940de6
--- /dev/null
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/IKinesisProxyFactory.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.retrieval;
+
+/**
+ * Interface for a KinesisProxyFactory.
+ *
+ * @deprecated Deprecating since KinesisProxy is just created once, there is no use of a factory. There is no
+ * replacement for this class. This class will be removed in the next major/minor release.
+ *
+ */
+@Deprecated
+public interface IKinesisProxyFactory {
+
+ /**
+ * Return an IKinesisProxy object for the specified stream.
+ * @param streamName Stream from which data is consumed.
+ * @return IKinesisProxy object.
+ */
+ IKinesisProxy getProxy(String streamName);
+
+}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisDataFetcher.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/KinesisDataFetcher.java
similarity index 94%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisDataFetcher.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/KinesisDataFetcher.java
index 13a26505..dacf39f4 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisDataFetcher.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/KinesisDataFetcher.java
@@ -12,17 +12,20 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
import java.util.Collections;
import java.util.Date;
+import com.amazonaws.services.kinesis.clientlibrary.lib.worker.InitialPositionInStreamExtended;
+import com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShardInfo;
import org.apache.commons.lang.StringUtils;
-import com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint.SentinelCheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.MetricsCollectingKinesisProxyDecorator;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.checkpoint.SentinelCheckpoint;
+import software.amazon.kinesis.retrieval.DataFetcherResult;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.retrieval.MetricsCollectingKinesisProxyDecorator;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
import com.amazonaws.services.kinesis.model.GetRecordsResult;
import com.amazonaws.services.kinesis.model.ResourceNotFoundException;
import com.amazonaws.services.kinesis.model.ShardIteratorType;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisProxy.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/KinesisProxy.java
similarity index 99%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisProxy.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/KinesisProxy.java
index e9ad60aa..d8111a17 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisProxy.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/KinesisProxy.java
@@ -12,7 +12,7 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.proxies;
+package software.amazon.kinesis.retrieval;
import java.nio.ByteBuffer;
import java.util.ArrayList;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisProxyFactory.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/KinesisProxyFactory.java
similarity index 91%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisProxyFactory.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/KinesisProxyFactory.java
index 2a428b5e..fcd8e27c 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisProxyFactory.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/KinesisProxyFactory.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.proxies;
+package software.amazon.kinesis.retrieval;
import com.amazonaws.ClientConfiguration;
import com.amazonaws.auth.AWSCredentialsProvider;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/MetricsCollectingKinesisProxyDecorator.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/MetricsCollectingKinesisProxyDecorator.java
similarity index 89%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/MetricsCollectingKinesisProxyDecorator.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/MetricsCollectingKinesisProxyDecorator.java
index d27fc6a1..32af4609 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/proxies/MetricsCollectingKinesisProxyDecorator.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/MetricsCollectingKinesisProxyDecorator.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.proxies;
+package software.amazon.kinesis.retrieval;
import java.nio.ByteBuffer;
import java.util.Date;
@@ -26,8 +26,8 @@ import com.amazonaws.services.kinesis.model.InvalidArgumentException;
import com.amazonaws.services.kinesis.model.PutRecordResult;
import com.amazonaws.services.kinesis.model.ResourceNotFoundException;
import com.amazonaws.services.kinesis.model.Shard;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.MetricsLevel;
/**
* IKinesisProxy implementation that wraps another implementation and collects metrics.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PrefetchGetRecordsCache.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/PrefetchGetRecordsCache.java
similarity index 95%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PrefetchGetRecordsCache.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/PrefetchGetRecordsCache.java
index 1460c064..b0d0b816 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PrefetchGetRecordsCache.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/PrefetchGetRecordsCache.java
@@ -13,7 +13,7 @@
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
import java.time.Duration;
import java.time.Instant;
@@ -24,11 +24,11 @@ import org.apache.commons.lang.Validate;
import com.amazonaws.SdkClientException;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.impl.ThreadSafeMetricsDelegatingFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.ThreadSafeMetricsDelegatingFactory;
+import software.amazon.kinesis.metrics.IMetricsFactory;
+import software.amazon.kinesis.metrics.MetricsLevel;
import com.amazonaws.services.kinesis.model.ExpiredIteratorException;
import com.amazonaws.services.kinesis.model.GetRecordsResult;
@@ -67,7 +67,7 @@ public class PrefetchGetRecordsCache implements GetRecordsCache {
* Constructor for the PrefetchGetRecordsCache. This cache prefetches records from Kinesis and stores them in a
* LinkedBlockingQueue.
*
- * @see com.amazonaws.services.kinesis.clientlibrary.lib.worker.PrefetchGetRecordsCache
+ * @see PrefetchGetRecordsCache
*
* @param maxPendingProcessRecordsInput Max number of ProcessRecordsInput that can be held in the cache before
* blocking
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordsFetcherFactory.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/RecordsFetcherFactory.java
similarity index 91%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordsFetcherFactory.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/RecordsFetcherFactory.java
index c1a513a9..5e1ab1a8 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordsFetcherFactory.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/RecordsFetcherFactory.java
@@ -12,9 +12,12 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
+import software.amazon.kinesis.metrics.IMetricsFactory;
+import software.amazon.kinesis.retrieval.DataFetchingStrategy;
+import software.amazon.kinesis.retrieval.GetRecordsCache;
+import software.amazon.kinesis.retrieval.GetRecordsRetrievalStrategy;
/**
* This factory is used to create the records fetcher to retrieve data from Kinesis for a given shard.
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SimpleRecordsFetcherFactory.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/SimpleRecordsFetcherFactory.java
similarity index 95%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SimpleRecordsFetcherFactory.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/SimpleRecordsFetcherFactory.java
index 79ad9f55..37e6026b 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SimpleRecordsFetcherFactory.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/SimpleRecordsFetcherFactory.java
@@ -12,11 +12,11 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
import java.util.concurrent.Executors;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
+import software.amazon.kinesis.metrics.IMetricsFactory;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import lombok.extern.apachecommons.CommonsLog;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SynchronousGetRecordsRetrievalStrategy.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/SynchronousGetRecordsRetrievalStrategy.java
similarity index 95%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SynchronousGetRecordsRetrievalStrategy.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/SynchronousGetRecordsRetrievalStrategy.java
index f4209189..bb02fa35 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SynchronousGetRecordsRetrievalStrategy.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/SynchronousGetRecordsRetrievalStrategy.java
@@ -12,7 +12,7 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
import com.amazonaws.services.kinesis.model.GetRecordsResult;
import lombok.Data;
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/ExtendedSequenceNumber.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/kpl/ExtendedSequenceNumber.java
similarity index 92%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/ExtendedSequenceNumber.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/kpl/ExtendedSequenceNumber.java
index 1ed7ed67..2366a748 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/ExtendedSequenceNumber.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/kpl/ExtendedSequenceNumber.java
@@ -1,23 +1,23 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.types;
+package software.amazon.kinesis.retrieval.kpl;
import java.math.BigInteger;
//import com.amazonaws.services.kinesis.clientlibrary.lib.worker.String;
-import com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint.SentinelCheckpoint;
+import software.amazon.kinesis.checkpoint.SentinelCheckpoint;
/**
* Represents a two-part sequence number for records aggregated by the Kinesis
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/Messages.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/kpl/Messages.java
similarity index 99%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/Messages.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/kpl/Messages.java
index a467ee57..1a4d06fa 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/Messages.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/kpl/Messages.java
@@ -16,7 +16,7 @@
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: messages.proto
-package com.amazonaws.services.kinesis.clientlibrary.types;
+package software.amazon.kinesis.retrieval.kpl;
public final class Messages {
private Messages() {}
diff --git a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/UserRecord.java b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/kpl/UserRecord.java
similarity index 94%
rename from amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/UserRecord.java
rename to amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/kpl/UserRecord.java
index 8cbd7b0d..636709b2 100644
--- a/amazon-kinesis-client/src/main/java/com/amazonaws/services/kinesis/clientlibrary/types/UserRecord.java
+++ b/amazon-kinesis-client/src/main/java/software/amazon/kinesis/retrieval/kpl/UserRecord.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2014 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.types;
+package software.amazon.kinesis.retrieval.kpl;
import java.math.BigInteger;
import java.nio.ByteBuffer;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/CheckpointImplTestBase.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/CheckpointImplTestBase.java
index 075a89bd..ef0a4ad9 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/CheckpointImplTestBase.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/CheckpointImplTestBase.java
@@ -21,10 +21,10 @@ import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.ICheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.impl.NullMetricsFactory;
+import software.amazon.kinesis.processor.ICheckpoint;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.NullMetricsFactory;
/**
* Base class for unit testing checkpoint implementations.
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/InMemoryCheckpointImpl.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/InMemoryCheckpointImpl.java
index 35551de1..ea4219cc 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/InMemoryCheckpointImpl.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/checkpoint/InMemoryCheckpointImpl.java
@@ -18,8 +18,9 @@ import java.util.HashMap;
import java.util.Map;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.ICheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.checkpoint.Checkpoint;
+import software.amazon.kinesis.processor.ICheckpoint;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockOnParentShardTaskTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockOnParentShardTaskTest.java
index 7d003f3f..ccca4017 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockOnParentShardTaskTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockOnParentShardTaskTest.java
@@ -27,12 +27,12 @@ import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.ILeaseManager;
/**
*
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/CheckpointValueComparatorTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/CheckpointValueComparatorTest.java
index 7abe7c52..9851d183 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/CheckpointValueComparatorTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/CheckpointValueComparatorTest.java
@@ -18,7 +18,7 @@ import junit.framework.Assert;
import org.junit.Test;
-import com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint.SentinelCheckpoint;
+import software.amazon.kinesis.checkpoint.SentinelCheckpoint;
public class CheckpointValueComparatorTest {
@Test
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ConsumerStatesTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ConsumerStatesTest.java
index fa163ad2..2abf6601 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ConsumerStatesTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ConsumerStatesTest.java
@@ -38,12 +38,14 @@ import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.ICheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
+import software.amazon.kinesis.processor.ICheckpoint;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.retrieval.GetRecordsCache;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.ILeaseManager;
+import software.amazon.kinesis.retrieval.KinesisDataFetcher;
@RunWith(MockitoJUnitRunner.class)
public class ConsumerStatesTest {
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ExceptionThrowingLeaseManager.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ExceptionThrowingLeaseManager.java
index ff14a592..16b4a29a 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ExceptionThrowingLeaseManager.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ExceptionThrowingLeaseManager.java
@@ -17,11 +17,11 @@ package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
import java.util.Arrays;
import java.util.List;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.ILeaseManager;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibConfigurationTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibConfigurationTest.java
index cccbcb30..93d7f50e 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibConfigurationTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibConfigurationTest.java
@@ -32,8 +32,8 @@ import com.amazonaws.regions.RegionUtils;
import com.amazonaws.services.cloudwatch.AmazonCloudWatchClient;
import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient;
import com.amazonaws.services.kinesis.AmazonKinesisClient;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
+import software.amazon.kinesis.processor.IRecordProcessorFactory;
+import software.amazon.kinesis.metrics.MetricsLevel;
import com.google.common.collect.ImmutableSet;
import junit.framework.Assert;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibLeaseCoordinatorIntegrationTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibLeaseCoordinatorIntegrationTest.java
index 00c1310d..1cc286c7 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibLeaseCoordinatorIntegrationTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibLeaseCoordinatorIntegrationTest.java
@@ -23,7 +23,6 @@ import java.util.UUID;
import java.util.concurrent.Callable;
import com.amazonaws.auth.DefaultAWSCredentialsProviderChain;
-import com.amazonaws.auth.SystemPropertiesCredentialsProvider;
import junit.framework.Assert;
import org.junit.Before;
@@ -31,15 +30,15 @@ import org.junit.Test;
import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.LeasingException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLeaseManager;
-import com.amazonaws.services.kinesis.leases.impl.Lease;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseRenewer;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.LeasingException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.KinesisClientLeaseManager;
+import software.amazon.kinesis.leases.Lease;
+import software.amazon.kinesis.leases.ILeaseRenewer;
import static org.hamcrest.CoreMatchers.notNullValue;
import static org.hamcrest.MatcherAssert.assertThat;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibLeaseCoordinatorTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibLeaseCoordinatorTest.java
index 11962d8f..095e6647 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibLeaseCoordinatorTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibLeaseCoordinatorTest.java
@@ -28,11 +28,11 @@ import org.mockito.MockitoAnnotations;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ShutdownException;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.leases.ILeaseManager;
public class KinesisClientLibLeaseCoordinatorTest {
private static final String SHARD_ID = "shardId-test";
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ParentsFirstShardPrioritizationUnitTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ParentsFirstShardPrioritizationUnitTest.java
index 42fd82de..e0ab7efe 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ParentsFirstShardPrioritizationUnitTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ParentsFirstShardPrioritizationUnitTest.java
@@ -25,7 +25,7 @@ import java.util.Random;
import org.junit.Test;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
public class ParentsFirstShardPrioritizationUnitTest {
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PreparedCheckpointerTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PreparedCheckpointerTest.java
index bfcd7723..799e39c9 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PreparedCheckpointerTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PreparedCheckpointerTest.java
@@ -1,8 +1,8 @@
package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IPreparedCheckpointer;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.processor.IPreparedCheckpointer;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
import org.junit.Assert;
import org.junit.Test;
import org.mockito.Mockito;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ProcessTaskTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ProcessTaskTest.java
index 94d0918e..e6ed92ac 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ProcessTaskTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ProcessTaskTest.java
@@ -43,11 +43,14 @@ import org.mockito.ArgumentCaptor;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.clientlibrary.types.Messages.AggregatedRecord;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.UserRecord;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.retrieval.GetRecordsCache;
+import software.amazon.kinesis.retrieval.KinesisDataFetcher;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.retrieval.kpl.Messages;
+import software.amazon.kinesis.retrieval.kpl.Messages.AggregatedRecord;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
+import software.amazon.kinesis.retrieval.kpl.UserRecord;
import com.amazonaws.services.kinesis.model.ProvisionedThroughputExceededException;
import com.amazonaws.services.kinesis.model.Record;
import com.google.protobuf.ByteString;
@@ -69,7 +72,8 @@ public class ProcessTaskTest {
private static final InitialPositionInStreamExtended INITIAL_POSITION_LATEST =
InitialPositionInStreamExtended.newInitialPosition(InitialPositionInStream.LATEST);
- private @Mock KinesisDataFetcher mockDataFetcher;
+ private @Mock
+ KinesisDataFetcher mockDataFetcher;
private @Mock IRecordProcessor mockRecordProcessor;
private @Mock RecordProcessorCheckpointer mockCheckpointer;
@Mock
@@ -339,8 +343,8 @@ public class ProcessTaskTest {
ByteBuffer bb = ByteBuffer.allocate(1024);
bb.put(new byte[] {-13, -119, -102, -62 });
- com.amazonaws.services.kinesis.clientlibrary.types.Messages.Record r =
- com.amazonaws.services.kinesis.clientlibrary.types.Messages.Record.newBuilder()
+ Messages.Record r =
+ Messages.Record.newBuilder()
.setData(ByteString.copyFrom(TEST_DATA))
.setPartitionKeyIndex(0)
.build();
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordProcessorCheckpointerTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordProcessorCheckpointerTest.java
index 67c36d20..eb897975 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordProcessorCheckpointerTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordProcessorCheckpointerTest.java
@@ -26,7 +26,7 @@ import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map.Entry;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
+import software.amazon.kinesis.metrics.IMetricsScope;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
@@ -36,15 +36,15 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.runners.MockitoJUnitRunner;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.ICheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IPreparedCheckpointer;
+import software.amazon.kinesis.processor.ICheckpoint;
+import software.amazon.kinesis.processor.IPreparedCheckpointer;
import com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint.InMemoryCheckpointImpl;
-import com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint.SentinelCheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.clientlibrary.types.UserRecord;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.impl.NullMetricsScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
+import software.amazon.kinesis.checkpoint.SentinelCheckpoint;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.retrieval.kpl.UserRecord;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.NullMetricsScope;
+import software.amazon.kinesis.metrics.IMetricsFactory;
import com.amazonaws.services.kinesis.model.Record;
/**
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SequenceNumberValidatorTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SequenceNumberValidatorTest.java
index 51d1376d..7817b2ec 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SequenceNumberValidatorTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/SequenceNumberValidatorTest.java
@@ -21,8 +21,8 @@ import org.mockito.Mockito;
import static org.junit.Assert.fail;
-import com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint.SentinelCheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
+import software.amazon.kinesis.checkpoint.SentinelCheckpoint;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
import com.amazonaws.services.kinesis.model.InvalidArgumentException;
import com.amazonaws.services.kinesis.model.ShardIteratorType;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardConsumerTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardConsumerTest.java
index 9d13b720..11f7085e 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardConsumerTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardConsumerTest.java
@@ -59,21 +59,29 @@ import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.ICheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint.Checkpoint;
+import software.amazon.kinesis.processor.ICheckpoint;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.checkpoint.Checkpoint;
import com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint.InMemoryCheckpointImpl;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
+import software.amazon.kinesis.retrieval.AsynchronousGetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.BlockingGetRecordsCache;
+import software.amazon.kinesis.retrieval.GetRecordsCache;
+import software.amazon.kinesis.retrieval.GetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
import com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisLocalFileProxy;
import com.amazonaws.services.kinesis.clientlibrary.proxies.util.KinesisLocalFileDataCreator;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ShutdownInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.UserRecord;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
-import com.amazonaws.services.kinesis.metrics.impl.NullMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
+import software.amazon.kinesis.retrieval.KinesisDataFetcher;
+import software.amazon.kinesis.retrieval.RecordsFetcherFactory;
+import software.amazon.kinesis.retrieval.SimpleRecordsFetcherFactory;
+import software.amazon.kinesis.retrieval.SynchronousGetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.lifecycle.InitializationInput;
+import software.amazon.kinesis.lifecycle.ShutdownInput;
+import software.amazon.kinesis.retrieval.kpl.UserRecord;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.ILeaseManager;
+import software.amazon.kinesis.metrics.NullMetricsFactory;
+import software.amazon.kinesis.metrics.IMetricsFactory;
import com.amazonaws.services.kinesis.model.Record;
import com.amazonaws.services.kinesis.model.Shard;
import com.amazonaws.services.kinesis.model.ShardIteratorType;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardInfoTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardInfoTest.java
index 511b5a1b..7a4c91ea 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardInfoTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardInfoTest.java
@@ -28,7 +28,7 @@ import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
public class ShardInfoTest {
private static final String CONCURRENCY_TOKEN = UUID.randomUUID().toString();
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTaskIntegrationTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTaskIntegrationTest.java
index 619f3eaf..dc7ed966 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTaskIntegrationTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTaskIntegrationTest.java
@@ -31,14 +31,14 @@ import com.amazonaws.auth.DefaultAWSCredentialsProviderChain;
import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient;
import com.amazonaws.services.kinesis.AmazonKinesis;
import com.amazonaws.services.kinesis.AmazonKinesisClient;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisProxy;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLeaseManager;
-import com.amazonaws.services.kinesis.leases.interfaces.IKinesisClientLeaseManager;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.retrieval.KinesisProxy;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.KinesisClientLeaseManager;
+import software.amazon.kinesis.leases.IKinesisClientLeaseManager;
import com.amazonaws.services.kinesis.model.StreamStatus;
/**
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncerTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncerTest.java
index 257e569f..345ad008 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncerTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncerTest.java
@@ -35,17 +35,17 @@ import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
import com.amazonaws.services.dynamodbv2.local.embedded.DynamoDBEmbedded;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.internal.KinesisClientLibIOException;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.ExceptionThrowingLeaseManager.ExceptionThrowingLeaseManagerMethods;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
import com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisLocalFileProxy;
import com.amazonaws.services.kinesis.clientlibrary.proxies.util.KinesisLocalFileDataCreator;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.LeasingException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLeaseManager;
-import com.amazonaws.services.kinesis.leases.impl.LeaseManager;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.LeasingException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.KinesisClientLeaseManager;
+import software.amazon.kinesis.leases.LeaseManager;
import com.amazonaws.services.kinesis.model.HashKeyRange;
import com.amazonaws.services.kinesis.model.SequenceNumberRange;
import com.amazonaws.services.kinesis.model.Shard;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownTaskTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownTaskTest.java
index ddf07e10..d84488de 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownTaskTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownTaskTest.java
@@ -30,12 +30,13 @@ import org.junit.BeforeClass;
import org.junit.Test;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.internal.KinesisClientLibIOException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLeaseManager;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.retrieval.GetRecordsCache;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.KinesisClientLeaseManager;
+import software.amazon.kinesis.leases.ILeaseManager;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/TestStreamlet.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/TestStreamlet.java
index b751d0d5..560289fa 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/TestStreamlet.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/TestStreamlet.java
@@ -26,12 +26,12 @@ import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibD
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibNonRetryableException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ShutdownException;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.ThrottlingException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IShutdownNotificationAware;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ShutdownInput;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.processor.v2.IShutdownNotificationAware;
+import software.amazon.kinesis.lifecycle.InitializationInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.ShutdownInput;
import com.amazonaws.services.kinesis.model.Record;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/TestStreamletFactory.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/TestStreamletFactory.java
index 3446f52d..113c267b 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/TestStreamletFactory.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/TestStreamletFactory.java
@@ -18,8 +18,8 @@ import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.Semaphore;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessorFactory;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.processor.v2.IRecordProcessorFactory;
/**
* Factory for TestStreamlet record processors.
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/WorkerTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/WorkerTest.java
index 29989d7e..c52eb7aa 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/WorkerTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/WorkerTest.java
@@ -82,29 +82,33 @@ import org.mockito.stubbing.Answer;
import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
import com.amazonaws.services.dynamodbv2.local.embedded.DynamoDBEmbedded;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibNonRetryableException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.ICheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorCheckpointer;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessor;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.v2.IRecordProcessorFactory;
+import software.amazon.kinesis.processor.ICheckpoint;
+import software.amazon.kinesis.processor.IRecordProcessorCheckpointer;
+import software.amazon.kinesis.processor.v2.IRecordProcessor;
+import software.amazon.kinesis.processor.v2.IRecordProcessorFactory;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.Worker.WorkerCWMetricsFactory;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.Worker.WorkerThreadPoolExecutor;
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.WorkerStateChangeListener.WorkerState;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
+import software.amazon.kinesis.retrieval.GetRecordsCache;
+import software.amazon.kinesis.retrieval.GetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
import com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisLocalFileProxy;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisProxy;
+import software.amazon.kinesis.retrieval.KinesisProxy;
import com.amazonaws.services.kinesis.clientlibrary.proxies.util.KinesisLocalFileDataCreator;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.clientlibrary.types.InitializationInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
-import com.amazonaws.services.kinesis.clientlibrary.types.ShutdownInput;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLeaseBuilder;
-import com.amazonaws.services.kinesis.leases.impl.KinesisClientLeaseManager;
-import com.amazonaws.services.kinesis.leases.impl.LeaseManager;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
-import com.amazonaws.services.kinesis.metrics.impl.CWMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.impl.NullMetricsFactory;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
+import software.amazon.kinesis.retrieval.RecordsFetcherFactory;
+import software.amazon.kinesis.retrieval.SimpleRecordsFetcherFactory;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.lifecycle.InitializationInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.ShutdownInput;
+import software.amazon.kinesis.leases.KinesisClientLease;
+import software.amazon.kinesis.leases.KinesisClientLeaseBuilder;
+import software.amazon.kinesis.leases.KinesisClientLeaseManager;
+import software.amazon.kinesis.leases.LeaseManager;
+import software.amazon.kinesis.leases.ILeaseManager;
+import software.amazon.kinesis.metrics.CWMetricsFactory;
+import software.amazon.kinesis.metrics.NullMetricsFactory;
+import software.amazon.kinesis.metrics.IMetricsFactory;
import com.amazonaws.services.kinesis.model.HashKeyRange;
import com.amazonaws.services.kinesis.model.Record;
import com.amazonaws.services.kinesis.model.SequenceNumberRange;
@@ -150,7 +154,7 @@ public class WorkerTest {
@Mock
private ILeaseManager leaseManager;
@Mock
- private com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory v1RecordProcessorFactory;
+ private software.amazon.kinesis.processor.IRecordProcessorFactory v1RecordProcessorFactory;
@Mock
private IKinesisProxy proxy;
@Mock
@@ -180,12 +184,12 @@ public class WorkerTest {
}
// CHECKSTYLE:IGNORE AnonInnerLengthCheck FOR NEXT 50 LINES
- private static final com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory SAMPLE_RECORD_PROCESSOR_FACTORY =
- new com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory() {
+ private static final software.amazon.kinesis.processor.IRecordProcessorFactory SAMPLE_RECORD_PROCESSOR_FACTORY =
+ new software.amazon.kinesis.processor.IRecordProcessorFactory() {
@Override
- public com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessor createProcessor() {
- return new com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessor() {
+ public software.amazon.kinesis.processor.IRecordProcessor createProcessor() {
+ return new software.amazon.kinesis.processor.IRecordProcessor() {
@Override
public void shutdown(IRecordProcessorCheckpointer checkpointer, ShutdownReason reason) {
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisLocalFileProxy.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisLocalFileProxy.java
index 25a2e474..78924cee 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisLocalFileProxy.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisLocalFileProxy.java
@@ -46,6 +46,7 @@ import com.amazonaws.services.kinesis.model.ShardIteratorType;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.extern.slf4j.Slf4j;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
/**
* This is a (temporary) test utility class, to mimic Kinesis without having to integrate with Alpha.
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisLocalFileProxyFactory.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisLocalFileProxyFactory.java
index f14ec63b..9c1a5b08 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisLocalFileProxyFactory.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisLocalFileProxyFactory.java
@@ -19,6 +19,8 @@ import java.io.IOException;
import java.math.BigInteger;
import com.amazonaws.services.kinesis.clientlibrary.proxies.util.KinesisLocalFileDataCreator;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.retrieval.IKinesisProxyFactory;
/** Factory for KinesisProxy objects that use a local file for data. Useful for testing purposes.
*
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisProxyTest.java b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisProxyTest.java
index e9cd5458..9c88ee31 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisProxyTest.java
+++ b/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/proxies/KinesisProxyTest.java
@@ -68,6 +68,7 @@ import com.amazonaws.services.kinesis.model.Shard;
import com.amazonaws.services.kinesis.model.ShardIteratorType;
import com.amazonaws.services.kinesis.model.StreamDescription;
import com.amazonaws.services.kinesis.model.StreamStatus;
+import software.amazon.kinesis.retrieval.KinesisProxy;
@RunWith(MockitoJUnitRunner.class)
public class KinesisProxyTest {
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/KinesisClientLeaseBuilder.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/KinesisClientLeaseBuilder.java
similarity index 95%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/KinesisClientLeaseBuilder.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/KinesisClientLeaseBuilder.java
index 2e8879fe..a7806f64 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/KinesisClientLeaseBuilder.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/KinesisClientLeaseBuilder.java
@@ -12,13 +12,13 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.HashSet;
import java.util.Set;
import java.util.UUID;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
public class KinesisClientLeaseBuilder {
private String leaseKey;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseCoordinatorExerciser.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseCoordinatorExerciser.java
similarity index 86%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseCoordinatorExerciser.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseCoordinatorExerciser.java
index f6b10d64..5843d2ab 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseCoordinatorExerciser.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseCoordinatorExerciser.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.awt.*;
import java.awt.event.ActionEvent;
@@ -30,13 +30,12 @@ import javax.swing.*;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.auth.DefaultAWSCredentialsProviderChain;
import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.LeasingException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
-import com.amazonaws.services.kinesis.metrics.impl.CWMetricsFactory;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.LeasingException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.metrics.CWMetricsFactory;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseIntegrationTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseIntegrationTest.java
similarity index 92%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseIntegrationTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseIntegrationTest.java
index ee19a073..933a8326 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseIntegrationTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseIntegrationTest.java
@@ -12,7 +12,7 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import org.junit.Ignore;
import org.junit.Rule;
@@ -21,8 +21,8 @@ import org.junit.runner.Description;
import com.amazonaws.auth.DefaultAWSCredentialsProviderChain;
import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.impl.NullMetricsFactory;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.NullMetricsFactory;
import lombok.extern.slf4j.Slf4j;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseManagerIntegrationTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseManagerIntegrationTest.java
similarity index 98%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseManagerIntegrationTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseManagerIntegrationTest.java
index dcaedc38..bf312de1 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseManagerIntegrationTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseManagerIntegrationTest.java
@@ -12,7 +12,7 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.Collection;
import java.util.List;
@@ -22,7 +22,7 @@ import junit.framework.Assert;
import org.junit.Test;
-import com.amazonaws.services.kinesis.leases.exceptions.LeasingException;
+import software.amazon.kinesis.leases.exceptions.LeasingException;
public class LeaseManagerIntegrationTest extends LeaseIntegrationTest {
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseRenewerIntegrationTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseRenewerIntegrationTest.java
similarity index 97%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseRenewerIntegrationTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseRenewerIntegrationTest.java
index 8ad19d34..e37b95de 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseRenewerIntegrationTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseRenewerIntegrationTest.java
@@ -12,11 +12,10 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.exceptions.LeasingException;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseRenewer;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.leases.exceptions.LeasingException;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseRenewerTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseRenewerTest.java
similarity index 79%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseRenewerTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseRenewerTest.java
index 7c8b3fd1..0c619e24 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseRenewerTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseRenewerTest.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.ArrayList;
import java.util.Arrays;
@@ -27,10 +27,12 @@ import org.junit.Before;
import org.junit.Test;
import org.mockito.Mockito;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.ProvisionedThroughputException;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseManager;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.ProvisionedThroughputException;
+import software.amazon.kinesis.leases.ILeaseManager;
+import software.amazon.kinesis.leases.Lease;
+import software.amazon.kinesis.leases.LeaseRenewer;
public class LeaseRenewerTest {
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseTakerIntegrationTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseTakerIntegrationTest.java
similarity index 88%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseTakerIntegrationTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseTakerIntegrationTest.java
index 6fb5caf6..70aed06f 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseTakerIntegrationTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseTakerIntegrationTest.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.Map;
@@ -20,7 +20,7 @@ import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
-import com.amazonaws.services.kinesis.leases.exceptions.LeasingException;
+import software.amazon.kinesis.leases.exceptions.LeasingException;
public class LeaseTakerIntegrationTest extends LeaseIntegrationTest {
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseTakerTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseTakerTest.java
similarity index 60%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseTakerTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseTakerTest.java
index 34dfedfa..a0e41e23 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/LeaseTakerTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/LeaseTakerTest.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.ArrayList;
import java.util.List;
@@ -24,6 +24,7 @@ import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
+import software.amazon.kinesis.leases.LeaseTaker;
/**
*
@@ -59,7 +60,7 @@ public class LeaseTakerTest {
}
/**
- * Test method for {@link com.amazonaws.services.kinesis.leases.impl.LeaseTaker#stringJoin(java.util.Collection, java.lang.String)}.
+ * Test method for {@link LeaseTaker#stringJoin(java.util.Collection, java.lang.String)}.
*/
@Test
public final void testStringJoin() {
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/TestHarnessBuilder.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/TestHarnessBuilder.java
similarity index 93%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/TestHarnessBuilder.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/TestHarnessBuilder.java
index 0dfbb568..104ba221 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/leases/impl/TestHarnessBuilder.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/leases/TestHarnessBuilder.java
@@ -12,7 +12,7 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.leases.impl;
+package software.amazon.kinesis.leases;
import java.util.ArrayList;
import java.util.Collections;
@@ -23,11 +23,10 @@ import java.util.concurrent.Callable;
import org.junit.Assert;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.leases.exceptions.DependencyException;
-import com.amazonaws.services.kinesis.leases.exceptions.InvalidStateException;
-import com.amazonaws.services.kinesis.leases.exceptions.LeasingException;
-import com.amazonaws.services.kinesis.leases.interfaces.ILeaseRenewer;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.leases.exceptions.DependencyException;
+import software.amazon.kinesis.leases.exceptions.InvalidStateException;
+import software.amazon.kinesis.leases.exceptions.LeasingException;
public class TestHarnessBuilder {
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/AccumulatingMetricsScopeTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/AccumulatingMetricsScopeTest.java
similarity index 69%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/AccumulatingMetricsScopeTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/AccumulatingMetricsScopeTest.java
index a7b179a0..3a949948 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/AccumulatingMetricsScopeTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/AccumulatingMetricsScopeTest.java
@@ -1,25 +1,24 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import org.junit.Assert;
import org.junit.Test;
import com.amazonaws.services.cloudwatch.model.MetricDatum;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import com.amazonaws.services.kinesis.metrics.impl.AccumulateByNameMetricsScope;
public class AccumulatingMetricsScopeTest {
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/CWPublisherRunnableTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/CWPublisherRunnableTest.java
similarity index 90%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/CWPublisherRunnableTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/CWPublisherRunnableTest.java
index e0b30c66..79df04d5 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/CWPublisherRunnableTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/CWPublisherRunnableTest.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.ArrayList;
import java.util.List;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/DefaultCWMetricsPublisherTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/DefaultCWMetricsPublisherTest.java
similarity index 85%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/DefaultCWMetricsPublisherTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/DefaultCWMetricsPublisherTest.java
index a547e038..5bef88b0 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/DefaultCWMetricsPublisherTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/DefaultCWMetricsPublisherTest.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.ArrayList;
import java.util.HashMap;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/EndingMetricsScopeTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/EndingMetricsScopeTest.java
similarity index 62%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/EndingMetricsScopeTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/EndingMetricsScopeTest.java
index 7d44f43f..e7b55be2 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/EndingMetricsScopeTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/EndingMetricsScopeTest.java
@@ -1,23 +1,23 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import org.junit.Test;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import com.amazonaws.services.kinesis.metrics.impl.EndingMetricsScope;
+import software.amazon.kinesis.metrics.EndingMetricsScope;
public class EndingMetricsScopeTest {
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/FilteringMetricsScopeTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/FilteringMetricsScopeTest.java
similarity index 86%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/FilteringMetricsScopeTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/FilteringMetricsScopeTest.java
index deb03caf..52bb62ae 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/FilteringMetricsScopeTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/FilteringMetricsScopeTest.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.Set;
@@ -22,8 +22,6 @@ import org.junit.Test;
import com.amazonaws.services.cloudwatch.model.Dimension;
import com.amazonaws.services.cloudwatch.model.MetricDatum;
import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsScope;
-import com.amazonaws.services.kinesis.metrics.interfaces.MetricsLevel;
import com.google.common.collect.ImmutableSet;
public class FilteringMetricsScopeTest {
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/MetricAccumulatingQueueTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/MetricAccumulatingQueueTest.java
similarity index 85%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/MetricAccumulatingQueueTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/MetricAccumulatingQueueTest.java
index 1ca90076..653f8e7c 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/MetricAccumulatingQueueTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/MetricAccumulatingQueueTest.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import java.util.Collection;
import java.util.Collections;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/TestHelper.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/TestHelper.java
similarity index 60%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/TestHelper.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/TestHelper.java
index 195a7f94..3b721632 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/metrics/impl/TestHelper.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/metrics/TestHelper.java
@@ -1,18 +1,18 @@
/*
- * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
- * Licensed under the Amazon Software License (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
*
- * http://aws.amazon.com/asl/
+ * http://aws.amazon.com/asl/
*
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.metrics.impl;
+package software.amazon.kinesis.metrics;
import com.amazonaws.services.cloudwatch.model.Dimension;
import com.amazonaws.services.cloudwatch.model.MetricDatum;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/AsynchronousGetRecordsRetrievalStrategyIntegrationTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/AsynchronousGetRecordsRetrievalStrategyIntegrationTest.java
similarity index 95%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/AsynchronousGetRecordsRetrievalStrategyIntegrationTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/AsynchronousGetRecordsRetrievalStrategyIntegrationTest.java
index 37f58c1c..76de1507 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/AsynchronousGetRecordsRetrievalStrategyIntegrationTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/AsynchronousGetRecordsRetrievalStrategyIntegrationTest.java
@@ -12,7 +12,7 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
import static org.hamcrest.CoreMatchers.nullValue;
import static org.hamcrest.MatcherAssert.assertThat;
@@ -38,9 +38,9 @@ import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import java.util.function.Supplier;
+import com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShardInfo;
import com.amazonaws.services.kinesis.model.ExpiredIteratorException;
import org.junit.After;
-import org.junit.Assert;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
@@ -49,10 +49,13 @@ import org.mockito.Mock;
import org.mockito.invocation.InvocationOnMock;
import org.mockito.runners.MockitoJUnitRunner;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
+import software.amazon.kinesis.retrieval.AsynchronousGetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.DataFetcherResult;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
import com.amazonaws.services.kinesis.model.GetRecordsResult;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import org.mockito.stubbing.Answer;
+import software.amazon.kinesis.retrieval.KinesisDataFetcher;
@RunWith(MockitoJUnitRunner.class)
public class AsynchronousGetRecordsRetrievalStrategyIntegrationTest {
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/AsynchronousGetRecordsRetrievalStrategyTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/AsynchronousGetRecordsRetrievalStrategyTest.java
similarity index 97%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/AsynchronousGetRecordsRetrievalStrategyTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/AsynchronousGetRecordsRetrievalStrategyTest.java
index 151300de..de4bfdcf 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/AsynchronousGetRecordsRetrievalStrategyTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/AsynchronousGetRecordsRetrievalStrategyTest.java
@@ -12,7 +12,7 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
import static org.hamcrest.CoreMatchers.equalTo;
import static org.hamcrest.MatcherAssert.assertThat;
@@ -35,15 +35,16 @@ import java.util.concurrent.TimeUnit;
import java.util.function.Supplier;
import com.amazonaws.services.kinesis.model.ExpiredIteratorException;
-import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
-import org.junit.rules.ExpectedException;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import com.amazonaws.services.kinesis.model.GetRecordsResult;
+import software.amazon.kinesis.retrieval.AsynchronousGetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.DataFetcherResult;
+import software.amazon.kinesis.retrieval.KinesisDataFetcher;
/**
*
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockingGetRecordsCacheTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/BlockingGetRecordsCacheTest.java
similarity index 91%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockingGetRecordsCacheTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/BlockingGetRecordsCacheTest.java
index 0636baea..e3ad9278 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/BlockingGetRecordsCacheTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/BlockingGetRecordsCacheTest.java
@@ -13,7 +13,7 @@
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
@@ -30,9 +30,11 @@ import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
import com.amazonaws.services.kinesis.model.GetRecordsResult;
import com.amazonaws.services.kinesis.model.Record;
+import software.amazon.kinesis.retrieval.BlockingGetRecordsCache;
+import software.amazon.kinesis.retrieval.GetRecordsRetrievalStrategy;
/**
* Test class for the BlockingGetRecordsCache class.
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisDataFetcherTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/KinesisDataFetcherTest.java
similarity index 94%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisDataFetcherTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/KinesisDataFetcherTest.java
index fbe720ae..94677f31 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisDataFetcherTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/KinesisDataFetcherTest.java
@@ -12,7 +12,7 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
import static org.hamcrest.CoreMatchers.equalTo;
import static org.hamcrest.CoreMatchers.notNullValue;
@@ -36,6 +36,9 @@ import java.util.Collections;
import java.util.Date;
import java.util.List;
+import com.amazonaws.services.kinesis.clientlibrary.lib.worker.InitialPositionInStream;
+import com.amazonaws.services.kinesis.clientlibrary.lib.worker.InitialPositionInStreamExtended;
+import com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShardInfo;
import org.junit.Assert;
import org.junit.BeforeClass;
import org.junit.Test;
@@ -44,13 +47,17 @@ import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import com.amazonaws.services.kinesis.clientlibrary.exceptions.KinesisClientLibException;
-import com.amazonaws.services.kinesis.clientlibrary.interfaces.ICheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.lib.checkpoint.SentinelCheckpoint;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisProxy;
-import com.amazonaws.services.kinesis.clientlibrary.types.ExtendedSequenceNumber;
-import com.amazonaws.services.kinesis.metrics.impl.MetricsHelper;
-import com.amazonaws.services.kinesis.metrics.impl.NullMetricsFactory;
+import software.amazon.kinesis.processor.ICheckpoint;
+import software.amazon.kinesis.checkpoint.SentinelCheckpoint;
+import software.amazon.kinesis.retrieval.DataFetcherResult;
+import software.amazon.kinesis.retrieval.GetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.retrieval.KinesisDataFetcher;
+import software.amazon.kinesis.retrieval.KinesisProxy;
+import software.amazon.kinesis.retrieval.SynchronousGetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.kpl.ExtendedSequenceNumber;
+import software.amazon.kinesis.metrics.MetricsHelper;
+import software.amazon.kinesis.metrics.NullMetricsFactory;
import com.amazonaws.services.kinesis.model.GetRecordsResult;
import com.amazonaws.services.kinesis.model.Record;
import com.amazonaws.services.kinesis.model.ResourceNotFoundException;
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PrefetchGetRecordsCacheIntegrationTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/PrefetchGetRecordsCacheIntegrationTest.java
similarity index 91%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PrefetchGetRecordsCacheIntegrationTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/PrefetchGetRecordsCacheIntegrationTest.java
index e24d5bb0..34d53a38 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PrefetchGetRecordsCacheIntegrationTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/PrefetchGetRecordsCacheIntegrationTest.java
@@ -13,7 +13,7 @@
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
@@ -33,6 +33,7 @@ import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
+import com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShardInfo;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -42,14 +43,21 @@ import org.mockito.invocation.InvocationOnMock;
import org.mockito.runners.MockitoJUnitRunner;
import org.mockito.stubbing.Answer;
-import com.amazonaws.services.kinesis.clientlibrary.proxies.IKinesisProxy;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
-import com.amazonaws.services.kinesis.metrics.impl.NullMetricsFactory;
+import software.amazon.kinesis.retrieval.AsynchronousGetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.DataFetcherResult;
+import software.amazon.kinesis.retrieval.GetRecordsCache;
+import software.amazon.kinesis.retrieval.GetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.IKinesisProxy;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
+import software.amazon.kinesis.metrics.NullMetricsFactory;
import com.amazonaws.services.kinesis.model.ExpiredIteratorException;
import com.amazonaws.services.kinesis.model.GetRecordsResult;
import com.amazonaws.services.kinesis.model.Record;
import lombok.extern.apachecommons.CommonsLog;
+import software.amazon.kinesis.retrieval.KinesisDataFetcher;
+import software.amazon.kinesis.retrieval.PrefetchGetRecordsCache;
+import software.amazon.kinesis.retrieval.SynchronousGetRecordsRetrievalStrategy;
/**
* These are the integration tests for the PrefetchGetRecordsCache class.
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PrefetchGetRecordsCacheTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/PrefetchGetRecordsCacheTest.java
similarity index 95%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PrefetchGetRecordsCacheTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/PrefetchGetRecordsCacheTest.java
index 2b650866..40283b3e 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/PrefetchGetRecordsCacheTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/PrefetchGetRecordsCacheTest.java
@@ -13,7 +13,7 @@
* permissions and limitations under the License.
*/
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+package software.amazon.kinesis.retrieval;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotEquals;
@@ -44,11 +44,14 @@ import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
-import com.amazonaws.services.kinesis.clientlibrary.types.ProcessRecordsInput;
-import com.amazonaws.services.kinesis.metrics.impl.NullMetricsFactory;
+import software.amazon.kinesis.lifecycle.ProcessRecordsInput;
+import software.amazon.kinesis.metrics.NullMetricsFactory;
import com.amazonaws.services.kinesis.model.ExpiredIteratorException;
import com.amazonaws.services.kinesis.model.GetRecordsResult;
import com.amazonaws.services.kinesis.model.Record;
+import software.amazon.kinesis.retrieval.GetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.KinesisDataFetcher;
+import software.amazon.kinesis.retrieval.PrefetchGetRecordsCache;
/**
* Test class for the PrefetchGetRecordsCache class.
diff --git a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordsFetcherFactoryTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/RecordsFetcherFactoryTest.java
similarity index 54%
rename from amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordsFetcherFactoryTest.java
rename to amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/RecordsFetcherFactoryTest.java
index d686c914..7b71eeac 100644
--- a/amazon-kinesis-client/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordsFetcherFactoryTest.java
+++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/retrieval/RecordsFetcherFactoryTest.java
@@ -1,4 +1,18 @@
-package com.amazonaws.services.kinesis.clientlibrary.lib.worker;
+/*
+ * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Amazon Software License (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/asl/
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+package software.amazon.kinesis.retrieval;
import static org.hamcrest.CoreMatchers.instanceOf;
import static org.hamcrest.MatcherAssert.assertThat;
@@ -8,7 +22,14 @@ import org.junit.Test;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
-import com.amazonaws.services.kinesis.metrics.interfaces.IMetricsFactory;
+import software.amazon.kinesis.metrics.IMetricsFactory;
+import software.amazon.kinesis.retrieval.BlockingGetRecordsCache;
+import software.amazon.kinesis.retrieval.DataFetchingStrategy;
+import software.amazon.kinesis.retrieval.GetRecordsCache;
+import software.amazon.kinesis.retrieval.GetRecordsRetrievalStrategy;
+import software.amazon.kinesis.retrieval.PrefetchGetRecordsCache;
+import software.amazon.kinesis.retrieval.RecordsFetcherFactory;
+import software.amazon.kinesis.retrieval.SimpleRecordsFetcherFactory;
public class RecordsFetcherFactoryTest {
private String shardId = "TestShard";