Class KinesisMessageChannelBinder
java.lang.Object
org.springframework.cloud.stream.binder.AbstractBinder<MessageChannel,org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties>,org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties>>
org.springframework.cloud.stream.binder.AbstractMessageChannelBinder<org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties>,org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties>,KinesisStreamProvisioner>
io.awspring.cloud.kinesis.stream.binder.KinesisMessageChannelBinder
- All Implemented Interfaces:
Aware,InitializingBean,org.springframework.cloud.stream.binder.Binder<MessageChannel,,org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties>, org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties>> org.springframework.cloud.stream.binder.ExtendedBindingProperties<KinesisConsumerProperties,,KinesisProducerProperties> org.springframework.cloud.stream.binder.ExtendedPropertiesBinder<MessageChannel,,KinesisConsumerProperties, KinesisProducerProperties> org.springframework.cloud.stream.binder.PollableConsumerBinder<MessageHandler,,org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties>> ApplicationContextAware,ApplicationEventPublisherAware
public class KinesisMessageChannelBinder
extends org.springframework.cloud.stream.binder.AbstractMessageChannelBinder<org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties>,org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties>,KinesisStreamProvisioner>
implements org.springframework.cloud.stream.binder.ExtendedPropertiesBinder<MessageChannel,KinesisConsumerProperties,KinesisProducerProperties>
The Spring Cloud Stream Binder implementation for AWS Kinesis.
- Since:
- 4.0
- Author:
- Peter Oates, Artem Bilan, Arnaud Lecollaire, Dirk Bonhomme, Asiel Caballero, Dmytro Danilenkov, Minkyu Moon
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.cloud.stream.binder.AbstractMessageChannelBinder
org.springframework.cloud.stream.binder.AbstractMessageChannelBinder.ErrorInfrastructure, org.springframework.cloud.stream.binder.AbstractMessageChannelBinder.PolledConsumerResources -
Field Summary
Fields inherited from class org.springframework.cloud.stream.binder.AbstractMessageChannelBinder
provisioningProviderFields inherited from class org.springframework.cloud.stream.binder.AbstractBinder
logger -
Constructor Summary
ConstructorsConstructorDescriptionKinesisMessageChannelBinder(KinesisBinderConfigurationProperties configurationProperties, KinesisStreamProvisioner provisioningProvider, software.amazon.awssdk.services.kinesis.KinesisAsyncClient amazonKinesis, @Nullable software.amazon.awssdk.services.dynamodb.DynamoDbAsyncClient dynamoDBClient, @Nullable software.amazon.awssdk.services.dynamodb.streams.DynamoDbStreamsClient dynamoDBStreams, @Nullable software.amazon.awssdk.services.cloudwatch.CloudWatchAsyncClient cloudWatchClient) -
Method Summary
Modifier and TypeMethodDescriptionprotected org.springframework.integration.core.MessageProducercreateConsumerEndpoint(org.springframework.cloud.stream.provisioning.ConsumerDestination destination, String group, org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties> properties) protected MessageHandlercreateProducerMessageHandler(org.springframework.cloud.stream.provisioning.ProducerDestination destination, org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties> producerProperties, MessageChannel errorChannel) protected MessageHandlercreateProducerMessageHandler(org.springframework.cloud.stream.provisioning.ProducerDestination destination, org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties> producerProperties, MessageChannel channel, @Nullable MessageChannel errorChannel) software.amazon.awssdk.services.kinesis.KinesisAsyncClientprotected org.springframework.integration.support.ErrorMessageStrategygetExtendedConsumerProperties(String channelName) getExtendedProducerProperties(String channelName) Class<? extends org.springframework.cloud.stream.binder.BinderSpecificPropertiesProvider> protected voidonInit()protected voidpostProcessOutputChannel(MessageChannel outputChannel, org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties> producerProperties) voidsetCheckpointStore(org.springframework.integration.metadata.ConcurrentMetadataStore checkpointStore) voidsetExtendedBindingProperties(KinesisExtendedBindingProperties extendedBindingProperties) voidsetKinesisProducerConfiguration(software.amazon.kinesis.producer.KinesisProducerConfiguration kinesisProducerConfiguration) voidsetLockRegistry(org.springframework.integration.support.locks.LockRegistry<?> lockRegistry) voidsetObservationRegistry(@Nullable io.micrometer.observation.ObservationRegistry observationRegistry) Methods inherited from class org.springframework.cloud.stream.binder.AbstractMessageChannelBinder
afterUnbindConsumer, afterUnbindProducer, bindPollableConsumer, createPolledConsumerResources, customizeProducerMessageHandler, doBindConsumer, doBindProducer, doGetAdditionalConfigurationProperties, errorsBaseName, errorsBaseName, getApplicationEventPublisher, getContainerCustomizer, getDefaultErrorMessageHandler, getErrorBridgeName, getErrorBridgeName, getErrorMessageHandler, getErrorMessageHandlerName, getErrorRecovererName, getMessageSourceCustomizer, getPolledConsumerErrorMessageHandler, getPolledConsumerRecoveryCallback, postProcessPollableSource, registerErrorInfrastructure, registerErrorInfrastructure, setApplicationEventPublisher, setConsumerEndpointCustomizer, setContainerCustomizer, setProducerMessageHandlerCustomizer, useNativeEncodingMethods inherited from class org.springframework.cloud.stream.binder.AbstractBinder
afterPropertiesSet, applyPrefix, bindConsumer, bindProducer, buildRetryTemplate, constructDLQName, getApplicationContext, getBeanFactory, getBindingServiceProperties, getEvaluationContext, groupedName, setApplicationContextMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.cloud.stream.binder.Binder
bindConsumer, bindProducerMethods inherited from interface org.springframework.cloud.stream.binder.ExtendedBindingProperties
getBindings
-
Constructor Details
-
KinesisMessageChannelBinder
public KinesisMessageChannelBinder(KinesisBinderConfigurationProperties configurationProperties, KinesisStreamProvisioner provisioningProvider, software.amazon.awssdk.services.kinesis.KinesisAsyncClient amazonKinesis, @Nullable software.amazon.awssdk.services.dynamodb.DynamoDbAsyncClient dynamoDBClient, @Nullable software.amazon.awssdk.services.dynamodb.streams.DynamoDbStreamsClient dynamoDBStreams, @Nullable software.amazon.awssdk.services.cloudwatch.CloudWatchAsyncClient cloudWatchClient)
-
-
Method Details
-
setExtendedBindingProperties
public void setExtendedBindingProperties(KinesisExtendedBindingProperties extendedBindingProperties) -
setCheckpointStore
public void setCheckpointStore(org.springframework.integration.metadata.ConcurrentMetadataStore checkpointStore) -
setLockRegistry
public void setLockRegistry(org.springframework.integration.support.locks.LockRegistry<?> lockRegistry) -
setKinesisProducerConfiguration
public void setKinesisProducerConfiguration(software.amazon.kinesis.producer.KinesisProducerConfiguration kinesisProducerConfiguration) -
setObservationRegistry
public void setObservationRegistry(@Nullable io.micrometer.observation.ObservationRegistry observationRegistry) -
getExtendedConsumerProperties
- Specified by:
getExtendedConsumerPropertiesin interfaceorg.springframework.cloud.stream.binder.ExtendedBindingProperties<KinesisConsumerProperties,KinesisProducerProperties>
-
getExtendedProducerProperties
- Specified by:
getExtendedProducerPropertiesin interfaceorg.springframework.cloud.stream.binder.ExtendedBindingProperties<KinesisConsumerProperties,KinesisProducerProperties>
-
getDefaultsPrefix
- Specified by:
getDefaultsPrefixin interfaceorg.springframework.cloud.stream.binder.ExtendedBindingProperties<KinesisConsumerProperties,KinesisProducerProperties>
-
getExtendedPropertiesEntryClass
public Class<? extends org.springframework.cloud.stream.binder.BinderSpecificPropertiesProvider> getExtendedPropertiesEntryClass()- Specified by:
getExtendedPropertiesEntryClassin interfaceorg.springframework.cloud.stream.binder.ExtendedBindingProperties<KinesisConsumerProperties,KinesisProducerProperties>
-
getAmazonKinesis
public software.amazon.awssdk.services.kinesis.KinesisAsyncClient getAmazonKinesis() -
getStreamsInUse
-
onInit
- Overrides:
onInitin classorg.springframework.cloud.stream.binder.AbstractMessageChannelBinder<org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties>,org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties>, KinesisStreamProvisioner> - Throws:
Exception
-
getBinderIdentity
- Specified by:
getBinderIdentityin interfaceorg.springframework.cloud.stream.binder.Binder<MessageChannel,org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties>, org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties>>
-
createProducerMessageHandler
protected MessageHandler createProducerMessageHandler(org.springframework.cloud.stream.provisioning.ProducerDestination destination, org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties> producerProperties, MessageChannel channel, @Nullable MessageChannel errorChannel) - Overrides:
createProducerMessageHandlerin classorg.springframework.cloud.stream.binder.AbstractMessageChannelBinder<org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties>,org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties>, KinesisStreamProvisioner>
-
createProducerMessageHandler
protected MessageHandler createProducerMessageHandler(org.springframework.cloud.stream.provisioning.ProducerDestination destination, org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties> producerProperties, MessageChannel errorChannel) - Specified by:
createProducerMessageHandlerin classorg.springframework.cloud.stream.binder.AbstractMessageChannelBinder<org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties>,org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties>, KinesisStreamProvisioner>
-
postProcessOutputChannel
protected void postProcessOutputChannel(MessageChannel outputChannel, org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties> producerProperties) - Overrides:
postProcessOutputChannelin classorg.springframework.cloud.stream.binder.AbstractMessageChannelBinder<org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties>,org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties>, KinesisStreamProvisioner>
-
createConsumerEndpoint
protected org.springframework.integration.core.MessageProducer createConsumerEndpoint(org.springframework.cloud.stream.provisioning.ConsumerDestination destination, String group, org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties> properties) - Specified by:
createConsumerEndpointin classorg.springframework.cloud.stream.binder.AbstractMessageChannelBinder<org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties>,org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties>, KinesisStreamProvisioner>
-
getErrorMessageStrategy
protected org.springframework.integration.support.ErrorMessageStrategy getErrorMessageStrategy()- Overrides:
getErrorMessageStrategyin classorg.springframework.cloud.stream.binder.AbstractMessageChannelBinder<org.springframework.cloud.stream.binder.ExtendedConsumerProperties<KinesisConsumerProperties>,org.springframework.cloud.stream.binder.ExtendedProducerProperties<KinesisProducerProperties>, KinesisStreamProvisioner>
-