Update Java docs and minor refactoring
This commit is contained in:
parent
ddf6987fdc
commit
c76d448739
2 changed files with 21 additions and 3 deletions
|
|
@ -41,6 +41,14 @@ public class IteratorBuilder {
|
|||
ShardIteratorType.AFTER_SEQUENCE_NUMBER);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a GetShardIteratorRequest builder that uses AT_SEQUENCE_NUMBER GetShardIterator.
|
||||
*
|
||||
* @param builder An initial GetShardIteratorRequest builder to be updated.
|
||||
* @param sequenceNumber The sequence number to restart the request from.
|
||||
* @param initialPosition One of LATEST, TRIM_HORIZON, or AT_TIMESTAMP.
|
||||
* @return An updated GetShardIteratorRequest.Builder
|
||||
*/
|
||||
public static GetShardIteratorRequest.Builder request(GetShardIteratorRequest.Builder builder,
|
||||
String sequenceNumber,
|
||||
InitialPositionInStreamExtended initialPosition) {
|
||||
|
|
@ -48,6 +56,14 @@ public class IteratorBuilder {
|
|||
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a GetShardIteratorRequest builder that uses AFTER_SEQUENCE_NUMBER GetShardIterator.
|
||||
*
|
||||
* @param builder An initial GetShardIteratorRequest builder to be updated.
|
||||
* @param sequenceNumber The sequence number to restart the request from.
|
||||
* @param initialPosition One of LATEST, TRIM_HORIZON, or AT_TIMESTAMP.
|
||||
* @return An updated GetShardIteratorRequest.Builder
|
||||
*/
|
||||
public static GetShardIteratorRequest.Builder reconnectRequest(GetShardIteratorRequest.Builder builder,
|
||||
String sequenceNumber,
|
||||
InitialPositionInStreamExtended initialPosition) {
|
||||
|
|
|
|||
|
|
@ -237,9 +237,11 @@ public class KinesisDataFetcher implements DataFetcher {
|
|||
|
||||
GetShardIteratorRequest.Builder builder = KinesisRequestsBuilder.getShardIteratorRequestBuilder()
|
||||
.streamName(streamIdentifier.streamName()).shardId(shardId);
|
||||
GetShardIteratorRequest request = IteratorBuilder.request(builder, sequenceNumber, initialPositionInStream).build();
|
||||
GetShardIteratorRequest request;
|
||||
if (isIteratorRestart) {
|
||||
request = IteratorBuilder.reconnectRequest(builder, sequenceNumber, initialPositionInStream).build();
|
||||
} else {
|
||||
request = IteratorBuilder.request(builder, sequenceNumber, initialPositionInStream).build();
|
||||
}
|
||||
|
||||
// TODO: Check if this metric is fine to be added
|
||||
|
|
@ -287,8 +289,8 @@ public class KinesisDataFetcher implements DataFetcher {
|
|||
throw new IllegalStateException(
|
||||
"Make sure to initialize the KinesisDataFetcher before restarting the iterator.");
|
||||
}
|
||||
log.debug("Getting a new next shard iterator for sequence number {} " +
|
||||
"for streamAndShardId {}", lastKnownSequenceNumber, streamAndShardId);
|
||||
log.debug("Restarting iterator for sequence number {} on shard id {}",
|
||||
lastKnownSequenceNumber, streamAndShardId);
|
||||
advanceIteratorTo(lastKnownSequenceNumber, initialPositionInStream, true);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue