diff --git a/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsCache.java b/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsCache.java index af4ba1bf..0f71d38e 100644 --- a/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsCache.java +++ b/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsCache.java @@ -3,10 +3,23 @@ package com.amazonaws.services.kinesis.clientlibrary.lib.worker; import com.amazonaws.services.kinesis.model.GetRecordsResult; /** - * + * This class is used as a cache for Prefetching data from Kinesis. */ public interface GetRecordsCache { + /** + * This method dispatches the next call to getRecords from Kinesis. + */ void dispatchNextCall(); - + + /** + * This method returns the next set of records from the Cache if present, or blocks the request till it gets the + * next set of records back from Kinesis. + * + * @return The next set of records. + */ GetRecordsResult getNextResult(); + + void addGetRecordsResultToCache(GetRecordsResult getRecordsResult); + + void shutdown(); } diff --git a/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsRetriever.java b/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsRetriever.java deleted file mode 100644 index cf5edcf5..00000000 --- a/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsRetriever.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.amazonaws.services.kinesis.clientlibrary.lib.worker; - -import com.amazonaws.services.kinesis.model.GetRecordsResult; - -/** - * - */ -public interface GetRecordsRetriever { - GetRecordsResult getRecords(int maxRecords); -} diff --git a/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsRetrieverDaemon.java b/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsRetrieverDaemon.java new file mode 100644 index 00000000..959c69ba --- /dev/null +++ b/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/GetRecordsRetrieverDaemon.java @@ -0,0 +1,15 @@ +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 class GetRecordsRetrieverDaemon implements Callable { + @Override + public GetRecordsResult call() throws Exception { + return null; + } +}