The KinesisMessageHandler class accepts a constructor with input as AmazonKinesisAsync. AmazonKinesisAsync is an interface for accessing Kinesis asynchronously. Does this mean that there is no synchronous support for KinesisMessageHandler?
Also, what is the relevance of setSync method in KinesisMessageHandler?
The
AmazonKinesisAsyncis really just rely on a Java'sFuturewhich could be turned easily to sync, blocking behavior via itsget()method. That's what is thatsetSync()on theKinesisMessageHandlerstates for. HavingAmazonKinesisAsyncas an input does not mean that we cannot do sync operations. If we would have opposite forAmazonKinesiscontract, we would not be able to perform async operations.