public class KinesisShardIterator
extends java.lang.Object
Caution: Creating a KinesisShardIterator is an expensive operation, so instances should be
reused and messages should be read continuously using by calling next() should be preferred.
Creating a KinesisShardIterator too often may result in a ProvisionedThroughputExceededException
coming from the Amazon Kinesis SDK as described
here.
| Modifier and Type | Field and Description |
|---|---|
static java.lang.Integer |
FETCH_RECORDS_LIMIT |
static java.lang.String |
POISON_SHARD_ITER |
| Constructor and Description |
|---|
KinesisShardIterator(software.amazon.awssdk.services.kinesis.KinesisClient kinesisClient,
java.lang.String channelName,
de.otto.synapse.channel.ShardPosition shardPosition) |
KinesisShardIterator(software.amazon.awssdk.services.kinesis.KinesisClient kinesisClient,
java.lang.String channelName,
de.otto.synapse.channel.ShardPosition shardPosition,
int fetchRecordLimit) |
| Modifier and Type | Method and Description |
|---|---|
int |
getFetchRecordLimit() |
java.lang.String |
getId() |
de.otto.synapse.channel.ShardPosition |
getShardPosition() |
KinesisShardResponse |
next() |
void |
stop() |
public static final java.lang.String POISON_SHARD_ITER
public static final java.lang.Integer FETCH_RECORDS_LIMIT
public KinesisShardIterator(@Nonnull
software.amazon.awssdk.services.kinesis.KinesisClient kinesisClient,
@Nonnull
java.lang.String channelName,
@Nonnull
de.otto.synapse.channel.ShardPosition shardPosition)
public KinesisShardIterator(@Nonnull
software.amazon.awssdk.services.kinesis.KinesisClient kinesisClient,
@Nonnull
java.lang.String channelName,
@Nonnull
de.otto.synapse.channel.ShardPosition shardPosition,
int fetchRecordLimit)
public java.lang.String getId()
@Nonnull public de.otto.synapse.channel.ShardPosition getShardPosition()
public int getFetchRecordLimit()
public void stop()
public KinesisShardResponse next()