Class SubscribableKafkaChannel
java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.channel.AbstractMessageChannel
org.springframework.integration.kafka.channel.AbstractKafkaChannel
org.springframework.integration.kafka.channel.SubscribableKafkaChannel
- All Implemented Interfaces:
org.springframework.beans.factory.Aware
,org.springframework.beans.factory.BeanFactoryAware
,org.springframework.beans.factory.BeanNameAware
,org.springframework.beans.factory.DisposableBean
,org.springframework.beans.factory.InitializingBean
,org.springframework.context.ApplicationContextAware
,org.springframework.context.Lifecycle
,org.springframework.context.Phased
,org.springframework.context.SmartLifecycle
,org.springframework.integration.context.ExpressionCapable
,org.springframework.integration.IntegrationPattern
,org.springframework.integration.support.context.NamedComponent
,org.springframework.integration.support.management.IntegrationManagement
,org.springframework.integration.support.management.ManageableLifecycle
,org.springframework.integration.support.management.ManageableSmartLifecycle
,org.springframework.integration.support.management.TrackableComponent
,org.springframework.messaging.MessageChannel
,org.springframework.messaging.SubscribableChannel
,org.springframework.messaging.support.InterceptableChannel
- Direct Known Subclasses:
PublishSubscribeKafkaChannel
public class SubscribableKafkaChannel
extends AbstractKafkaChannel
implements org.springframework.messaging.SubscribableChannel, org.springframework.integration.support.management.ManageableSmartLifecycle
Subscribable channel backed by an Apache Kafka topic.
- Since:
- 5.4
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.integration.channel.AbstractMessageChannel
org.springframework.integration.channel.AbstractMessageChannel.ChannelInterceptorList
Nested classes/interfaces inherited from interface org.springframework.integration.support.management.IntegrationManagement
org.springframework.integration.support.management.IntegrationManagement.ManagementOverrides
-
Field Summary
Fields inherited from class org.springframework.integration.kafka.channel.AbstractKafkaChannel
topic
Fields inherited from class org.springframework.integration.channel.AbstractMessageChannel
interceptors, meters
Fields inherited from class org.springframework.integration.context.IntegrationObjectSupport
EXPRESSION_PARSER, logger
Fields inherited from interface org.springframework.integration.support.management.IntegrationManagement
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
Fields inherited from interface org.springframework.messaging.MessageChannel
INDEFINITE_TIMEOUT
-
Constructor Summary
ConstructorDescriptionSubscribableKafkaChannel
(org.springframework.kafka.core.KafkaOperations<?, ?> template, org.springframework.kafka.config.KafkaListenerContainerFactory<?> factory, String channelTopic) Construct an instance with the provided parameters. -
Method Summary
Modifier and TypeMethodDescriptionprotected org.springframework.integration.dispatcher.MessageDispatcher
int
getPhase()
boolean
boolean
protected void
onInit()
void
setAutoStartup
(boolean autoStartup) Set the auto startup.void
setMessageConverter
(org.springframework.kafka.support.converter.RecordMessageConverter messageConverter) Set theRecordMessageConverter
to the listener.void
setPhase
(int phase) Set the phase.void
start()
void
stop()
void
boolean
subscribe
(org.springframework.messaging.MessageHandler handler) boolean
unsubscribe
(org.springframework.messaging.MessageHandler handler) Methods inherited from class org.springframework.integration.kafka.channel.AbstractKafkaChannel
doSend, getGroupId, setGroupId
Methods inherited from class org.springframework.integration.channel.AbstractMessageChannel
addInterceptor, addInterceptor, destroy, getComponentType, getFullChannelName, getIChannelInterceptorList, getIntegrationPatternType, getInterceptors, getMetricsCaptor, getOverrides, isLoggingEnabled, isObserved, registerMetricsCaptor, registerObservationRegistry, removeInterceptor, removeInterceptor, send, send, setDatatypes, setInterceptors, setLoggingEnabled, setMessageConverter, setObservationConvention, setShouldTrack
Methods inherited from class org.springframework.integration.context.IntegrationObjectSupport
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.springframework.integration.support.management.IntegrationManagement
getManagedName, getManagedType, getThisAs, setManagedName, setManagedType
Methods inherited from interface org.springframework.messaging.MessageChannel
send, send
Methods inherited from interface org.springframework.integration.support.context.NamedComponent
getBeanName, getComponentName
-
Constructor Details
-
SubscribableKafkaChannel
public SubscribableKafkaChannel(org.springframework.kafka.core.KafkaOperations<?, ?> template, org.springframework.kafka.config.KafkaListenerContainerFactory<?> factory, String channelTopic) Construct an instance with the provided parameters.- Parameters:
template
- template for sending.factory
- factory for creating a container for receiving.channelTopic
- the topic.
-
-
Method Details
-
setMessageConverter
public void setMessageConverter(org.springframework.kafka.support.converter.RecordMessageConverter messageConverter) Set theRecordMessageConverter
to the listener.- Parameters:
messageConverter
- the converter.- Since:
- 6.0
-
getPhase
public int getPhase()- Specified by:
getPhase
in interfaceorg.springframework.context.Phased
- Specified by:
getPhase
in interfaceorg.springframework.context.SmartLifecycle
-
setPhase
public void setPhase(int phase) Set the phase.- Parameters:
phase
- the phase.- See Also:
-
Phased
-
isRunning
public boolean isRunning()- Specified by:
isRunning
in interfaceorg.springframework.context.Lifecycle
- Specified by:
isRunning
in interfaceorg.springframework.integration.support.management.ManageableLifecycle
-
setAutoStartup
public void setAutoStartup(boolean autoStartup) Set the auto startup.- Parameters:
autoStartup
- true to automatically start.- See Also:
-
SmartLifecycle
-
isAutoStartup
public boolean isAutoStartup()- Specified by:
isAutoStartup
in interfaceorg.springframework.context.SmartLifecycle
-
onInit
protected void onInit()- Overrides:
onInit
in classorg.springframework.integration.channel.AbstractMessageChannel
-
createDispatcher
protected org.springframework.integration.dispatcher.MessageDispatcher createDispatcher() -
start
public void start()- Specified by:
start
in interfaceorg.springframework.context.Lifecycle
- Specified by:
start
in interfaceorg.springframework.integration.support.management.ManageableLifecycle
-
stop
public void stop()- Specified by:
stop
in interfaceorg.springframework.context.Lifecycle
- Specified by:
stop
in interfaceorg.springframework.integration.support.management.ManageableLifecycle
-
stop
- Specified by:
stop
in interfaceorg.springframework.context.SmartLifecycle
-
subscribe
public boolean subscribe(org.springframework.messaging.MessageHandler handler) - Specified by:
subscribe
in interfaceorg.springframework.messaging.SubscribableChannel
-
unsubscribe
public boolean unsubscribe(org.springframework.messaging.MessageHandler handler) - Specified by:
unsubscribe
in interfaceorg.springframework.messaging.SubscribableChannel
-