public class KafkaMessageChannelBinder extends AbstractMessageChannelBinder<ExtendedConsumerProperties<KafkaConsumerProperties>,ExtendedProducerProperties<KafkaProducerProperties>,KafkaTopicProvisioner> implements ExtendedPropertiesBinder<org.springframework.messaging.MessageChannel,KafkaConsumerProperties,KafkaProducerProperties>
Binder that uses Kafka as the
underlying middleware.AbstractMessageChannelBinder.ErrorInfrastructure, AbstractMessageChannelBinder.PolledConsumerResources| Modifier and Type | Field and Description |
|---|---|
static String |
X_EXCEPTION_FQCN
Kafka header for x-exception-fqcn.
|
static String |
X_EXCEPTION_MESSAGE
Kafka header for x-exception-message.
|
static String |
X_EXCEPTION_STACKTRACE
Kafka header for x-exception-stacktrace.
|
static String |
X_ORIGINAL_OFFSET
Kafka header for x-original-offset.
|
static String |
X_ORIGINAL_PARTITION
Kafka header for x-original-partition.
|
static String |
X_ORIGINAL_TIMESTAMP
Kafka header for x-original-timestamp.
|
static String |
X_ORIGINAL_TIMESTAMP_TYPE
Kafka header for x-original-timestamp-type.
|
static String |
X_ORIGINAL_TOPIC
Kafka header for x-original-topic.
|
provisioningProviderlogger| Constructor and Description |
|---|
KafkaMessageChannelBinder(KafkaBinderConfigurationProperties configurationProperties,
KafkaTopicProvisioner provisioningProvider) |
KafkaMessageChannelBinder(KafkaBinderConfigurationProperties configurationProperties,
KafkaTopicProvisioner provisioningProvider,
ListenerContainerCustomizer<org.springframework.kafka.listener.AbstractMessageListenerContainer<?,?>> containerCustomizer,
KafkaBindingRebalanceListener rebalanceListener) |
KafkaMessageChannelBinder(KafkaBinderConfigurationProperties configurationProperties,
KafkaTopicProvisioner provisioningProvider,
ListenerContainerCustomizer<org.springframework.kafka.listener.AbstractMessageListenerContainer<?,?>> containerCustomizer,
MessageSourceCustomizer<org.springframework.integration.kafka.inbound.KafkaMessageSource<?,?>> sourceCustomizer,
KafkaBindingRebalanceListener rebalanceListener,
DlqPartitionFunction dlqPartitionFunction,
DlqDestinationResolver dlqDestinationResolver) |
| Modifier and Type | Method and Description |
|---|---|
void |
addClientFactoryCustomizer(ClientFactoryCustomizer customizer) |
void |
addConsumerConfigCustomizer(ConsumerConfigCustomizer consumerConfigCustomizer) |
void |
addProducerConfigCustomizer(ProducerConfigCustomizer producerConfigCustomizer) |
protected org.springframework.integration.core.MessageProducer |
createConsumerEndpoint(ConsumerDestination destination,
String group,
ExtendedConsumerProperties<KafkaConsumerProperties> extendedConsumerProperties) |
protected org.springframework.kafka.core.ConsumerFactory<?,?> |
createKafkaConsumerFactory(boolean anonymous,
String consumerGroup,
ExtendedConsumerProperties<KafkaConsumerProperties> consumerProperties,
String beanName,
String destination) |
protected AbstractMessageChannelBinder.PolledConsumerResources |
createPolledConsumerResources(String name,
String group,
ConsumerDestination destination,
ExtendedConsumerProperties<KafkaConsumerProperties> extendedConsumerProperties) |
protected org.springframework.messaging.MessageHandler |
createProducerMessageHandler(ProducerDestination destination,
ExtendedProducerProperties<KafkaProducerProperties> producerProperties,
org.springframework.messaging.MessageChannel errorChannel) |
protected org.springframework.messaging.MessageHandler |
createProducerMessageHandler(ProducerDestination destination,
ExtendedProducerProperties<KafkaProducerProperties> producerProperties,
org.springframework.messaging.MessageChannel channel,
org.springframework.messaging.MessageChannel errorChannel) |
String |
getDefaultsPrefix() |
protected org.springframework.messaging.MessageHandler |
getErrorMessageHandler(ConsumerDestination destination,
String group,
ExtendedConsumerProperties<KafkaConsumerProperties> properties) |
protected org.springframework.integration.support.ErrorMessageStrategy |
getErrorMessageStrategy() |
KafkaConsumerProperties |
getExtendedConsumerProperties(String channelName) |
KafkaProducerProperties |
getExtendedProducerProperties(String channelName) |
Class<? extends BinderSpecificPropertiesProvider> |
getExtendedPropertiesEntryClass() |
protected org.springframework.messaging.MessageHandler |
getPolledConsumerErrorMessageHandler(ConsumerDestination destination,
String group,
ExtendedConsumerProperties<KafkaConsumerProperties> properties) |
protected org.springframework.kafka.core.DefaultKafkaProducerFactory<byte[],byte[]> |
getProducerFactory(String transactionIdPrefix,
ExtendedProducerProperties<KafkaProducerProperties> producerProperties,
String beanName,
String destination) |
org.springframework.kafka.core.ProducerFactory<byte[],byte[]> |
getTransactionalProducerFactory()
Return a reference to the binder's transaction manager's producer factory (if
configured).
|
protected void |
postProcessOutputChannel(org.springframework.messaging.MessageChannel outputChannel,
ExtendedProducerProperties<KafkaProducerProperties> producerProperties) |
protected void |
postProcessPollableSource(DefaultPollableMessageSource bindingTarget) |
Collection<org.apache.kafka.common.PartitionInfo> |
processTopic(String group,
ExtendedConsumerProperties<KafkaConsumerProperties> extendedConsumerProperties,
org.springframework.kafka.core.ConsumerFactory<?,?> consumerFactory,
int partitionCount,
boolean usingPatterns,
boolean groupManagement,
String topic) |
void |
setClientFactoryCustomizer(ClientFactoryCustomizer customizer)
Deprecated.
in favor of
addClientFactoryCustomizer(ClientFactoryCustomizer). |
void |
setConsumerConfigCustomizer(ConsumerConfigCustomizer consumerConfigCustomizer)
Deprecated.
|
void |
setDlqDestinationResolver(DlqDestinationResolver dlqDestinationResolver) |
void |
setDlqPartitionFunction(DlqPartitionFunction dlqPartitionFunction) |
void |
setExtendedBindingProperties(KafkaExtendedBindingProperties extendedBindingProperties) |
void |
setProducerConfigCustomizer(ProducerConfigCustomizer producerConfigCustomizer)
Deprecated.
|
void |
setProducerListener(org.springframework.kafka.support.ProducerListener<byte[],byte[]> producerListener) |
void |
setRebalanceListener(KafkaBindingRebalanceListener rebalanceListener) |
void |
setupRebalanceListener(ExtendedConsumerProperties<KafkaConsumerProperties> extendedConsumerProperties,
org.springframework.kafka.listener.ContainerProperties containerProperties) |
protected boolean |
useNativeEncoding(ExtendedProducerProperties<KafkaProducerProperties> producerProperties) |
afterUnbindConsumer, afterUnbindProducer, bindPollableConsumer, doBindConsumer, doBindProducer, errorsBaseName, errorsBaseName, getApplicationEventPublisher, getContainerCustomizer, getDefaultErrorMessageHandler, getErrorBridgeName, getErrorBridgeName, getErrorMessageHandlerName, getErrorRecovererName, getMessageSourceCustomizer, getPolledConsumerRecoveryCallback, onInit, registerErrorInfrastructure, registerErrorInfrastructure, setApplicationEventPublisher, setConsumerEndpointCustomizer, setProducerMessageHandlerCustomizerafterPropertiesSet, applyPrefix, bindConsumer, bindProducer, buildRetryTemplate, constructDLQName, getApplicationContext, getBeanFactory, getEvaluationContext, groupedName, setApplicationContextclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitbindConsumer, bindProducergetBindingspublic static final String X_EXCEPTION_FQCN
public static final String X_EXCEPTION_STACKTRACE
public static final String X_EXCEPTION_MESSAGE
public static final String X_ORIGINAL_TOPIC
public static final String X_ORIGINAL_PARTITION
public static final String X_ORIGINAL_OFFSET
public static final String X_ORIGINAL_TIMESTAMP
public static final String X_ORIGINAL_TIMESTAMP_TYPE
public KafkaMessageChannelBinder(KafkaBinderConfigurationProperties configurationProperties, KafkaTopicProvisioner provisioningProvider)
public KafkaMessageChannelBinder(KafkaBinderConfigurationProperties configurationProperties, KafkaTopicProvisioner provisioningProvider, ListenerContainerCustomizer<org.springframework.kafka.listener.AbstractMessageListenerContainer<?,?>> containerCustomizer, KafkaBindingRebalanceListener rebalanceListener)
public KafkaMessageChannelBinder(KafkaBinderConfigurationProperties configurationProperties, KafkaTopicProvisioner provisioningProvider, ListenerContainerCustomizer<org.springframework.kafka.listener.AbstractMessageListenerContainer<?,?>> containerCustomizer, MessageSourceCustomizer<org.springframework.integration.kafka.inbound.KafkaMessageSource<?,?>> sourceCustomizer, KafkaBindingRebalanceListener rebalanceListener, DlqPartitionFunction dlqPartitionFunction, DlqDestinationResolver dlqDestinationResolver)
public void setExtendedBindingProperties(KafkaExtendedBindingProperties extendedBindingProperties)
public void setProducerListener(org.springframework.kafka.support.ProducerListener<byte[],byte[]> producerListener)
@Deprecated public void setClientFactoryCustomizer(ClientFactoryCustomizer customizer)
addClientFactoryCustomizer(ClientFactoryCustomizer).ClientFactoryCustomizer for the ProducerFactory and ConsumerFactory created inside
the binder.customizer - the client factory customizerpublic void addClientFactoryCustomizer(ClientFactoryCustomizer customizer)
public void setRebalanceListener(KafkaBindingRebalanceListener rebalanceListener)
public void setDlqPartitionFunction(DlqPartitionFunction dlqPartitionFunction)
public void setDlqDestinationResolver(DlqDestinationResolver dlqDestinationResolver)
public KafkaConsumerProperties getExtendedConsumerProperties(String channelName)
getExtendedConsumerProperties in interface ExtendedBindingProperties<KafkaConsumerProperties,KafkaProducerProperties>public KafkaProducerProperties getExtendedProducerProperties(String channelName)
getExtendedProducerProperties in interface ExtendedBindingProperties<KafkaConsumerProperties,KafkaProducerProperties>public String getDefaultsPrefix()
getDefaultsPrefix in interface ExtendedBindingProperties<KafkaConsumerProperties,KafkaProducerProperties>public Class<? extends BinderSpecificPropertiesProvider> getExtendedPropertiesEntryClass()
getExtendedPropertiesEntryClass in interface ExtendedBindingProperties<KafkaConsumerProperties,KafkaProducerProperties>@Nullable public org.springframework.kafka.core.ProducerFactory<byte[],byte[]> getTransactionalProducerFactory()
protected org.springframework.messaging.MessageHandler createProducerMessageHandler(ProducerDestination destination, ExtendedProducerProperties<KafkaProducerProperties> producerProperties, org.springframework.messaging.MessageChannel errorChannel) throws Exception
protected org.springframework.messaging.MessageHandler createProducerMessageHandler(ProducerDestination destination, ExtendedProducerProperties<KafkaProducerProperties> producerProperties, org.springframework.messaging.MessageChannel channel, org.springframework.messaging.MessageChannel errorChannel) throws Exception
protected void postProcessOutputChannel(org.springframework.messaging.MessageChannel outputChannel,
ExtendedProducerProperties<KafkaProducerProperties> producerProperties)
protected org.springframework.kafka.core.DefaultKafkaProducerFactory<byte[],byte[]> getProducerFactory(String transactionIdPrefix, ExtendedProducerProperties<KafkaProducerProperties> producerProperties, String beanName, String destination)
protected boolean useNativeEncoding(ExtendedProducerProperties<KafkaProducerProperties> producerProperties)
protected org.springframework.integration.core.MessageProducer createConsumerEndpoint(ConsumerDestination destination, String group, ExtendedConsumerProperties<KafkaConsumerProperties> extendedConsumerProperties)
public void setupRebalanceListener(ExtendedConsumerProperties<KafkaConsumerProperties> extendedConsumerProperties, org.springframework.kafka.listener.ContainerProperties containerProperties)
public Collection<org.apache.kafka.common.PartitionInfo> processTopic(String group, ExtendedConsumerProperties<KafkaConsumerProperties> extendedConsumerProperties, org.springframework.kafka.core.ConsumerFactory<?,?> consumerFactory, int partitionCount, boolean usingPatterns, boolean groupManagement, String topic)
protected AbstractMessageChannelBinder.PolledConsumerResources createPolledConsumerResources(String name, String group, ConsumerDestination destination, ExtendedConsumerProperties<KafkaConsumerProperties> extendedConsumerProperties)
protected void postProcessPollableSource(DefaultPollableMessageSource bindingTarget)
protected org.springframework.integration.support.ErrorMessageStrategy getErrorMessageStrategy()
protected org.springframework.messaging.MessageHandler getErrorMessageHandler(ConsumerDestination destination, String group, ExtendedConsumerProperties<KafkaConsumerProperties> properties)
protected org.springframework.messaging.MessageHandler getPolledConsumerErrorMessageHandler(ConsumerDestination destination, String group, ExtendedConsumerProperties<KafkaConsumerProperties> properties)
protected org.springframework.kafka.core.ConsumerFactory<?,?> createKafkaConsumerFactory(boolean anonymous,
String consumerGroup,
ExtendedConsumerProperties<KafkaConsumerProperties> consumerProperties,
String beanName,
String destination)
@Deprecated public void setConsumerConfigCustomizer(ConsumerConfigCustomizer consumerConfigCustomizer)
addConsumerConfigCustomizer(ConsumerConfigCustomizer).ConsumerConfigCustomizer for the ConsumerFactory created inside the binder.consumerConfigCustomizer - the consumer config customizerpublic void addConsumerConfigCustomizer(ConsumerConfigCustomizer consumerConfigCustomizer)
@Deprecated public void setProducerConfigCustomizer(ProducerConfigCustomizer producerConfigCustomizer)
addProducerConfigCustomizer(ProducerConfigCustomizer).ProducerConfigCustomizer for the ProducerFactory created inside the binder.producerConfigCustomizer - the producer config customizerpublic void addProducerConfigCustomizer(ProducerConfigCustomizer producerConfigCustomizer)
Copyright © 2022 Pivotal Software, Inc.. All rights reserved.