Package org.springframework.kafka.config
Class KafkaListenerEndpointRegistrar
java.lang.Object
org.springframework.kafka.config.KafkaListenerEndpointRegistrar
- All Implemented Interfaces:
org.springframework.beans.factory.Aware,org.springframework.beans.factory.BeanFactoryAware,org.springframework.beans.factory.InitializingBean
public class KafkaListenerEndpointRegistrar
extends Object
implements org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.InitializingBean
Helper bean for registering
KafkaListenerEndpoint with
a KafkaListenerEndpointRegistry.- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidList<org.springframework.messaging.handler.invocation.HandlerMethodArgumentResolver>Return the list ofHandlerMethodArgumentResolver.Return theKafkaListenerEndpointRegistryinstance for this registrar, may benull.org.springframework.messaging.handler.annotation.support.MessageHandlerMethodFactoryReturn the customMessageHandlerMethodFactoryto use, if any.org.springframework.validation.ValidatorGet the validator, if supplied.protected voidvoidregisterEndpoint(KafkaListenerEndpoint endpoint) Register a newKafkaListenerEndpointusing the defaultKafkaListenerContainerFactoryto create the underlying container.voidregisterEndpoint(KafkaListenerEndpoint endpoint, KafkaListenerContainerFactory<?> factory) Register a newKafkaListenerEndpointalongside theKafkaListenerContainerFactoryto use to create the underlying container.voidsetBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) ABeanFactoryonly needs to be available in conjunction withsetContainerFactoryBeanName(java.lang.String).voidsetContainerFactory(KafkaListenerContainerFactory<?> containerFactory) Set theKafkaListenerContainerFactoryto use in case aKafkaListenerEndpointis registered with anullcontainer factory.voidsetContainerFactoryBeanName(String containerFactoryBeanName) Set the bean name of theKafkaListenerContainerFactoryto use in case aKafkaListenerEndpointis registered with anullcontainer factory.voidsetCustomMethodArgumentResolvers(org.springframework.messaging.handler.invocation.HandlerMethodArgumentResolver... methodArgumentResolvers) Add custom methods arguments resolvers toKafkaListenerAnnotationBeanPostProcessorDefault empty list.voidsetEndpointRegistry(KafkaListenerEndpointRegistry endpointRegistry) Set theKafkaListenerEndpointRegistryinstance to use.voidsetMessageHandlerMethodFactory(org.springframework.messaging.handler.annotation.support.MessageHandlerMethodFactory kafkaHandlerMethodFactory) Set theMessageHandlerMethodFactoryto use to configure the message listener responsible to serve an endpoint detected by this processor.voidsetValidator(org.springframework.validation.Validator validator) Set the validator to use if the default message handler factory is used.
-
Constructor Details
-
KafkaListenerEndpointRegistrar
public KafkaListenerEndpointRegistrar()
-
-
Method Details
-
setEndpointRegistry
Set theKafkaListenerEndpointRegistryinstance to use.- Parameters:
endpointRegistry- theKafkaListenerEndpointRegistryinstance to use.
-
getEndpointRegistry
Return theKafkaListenerEndpointRegistryinstance for this registrar, may benull.- Returns:
- the
KafkaListenerEndpointRegistryinstance for this registrar, may benull.
-
getCustomMethodArgumentResolvers
public List<org.springframework.messaging.handler.invocation.HandlerMethodArgumentResolver> getCustomMethodArgumentResolvers()Return the list ofHandlerMethodArgumentResolver.- Returns:
- the list of
HandlerMethodArgumentResolver. - Since:
- 2.4.2
-
setCustomMethodArgumentResolvers
public void setCustomMethodArgumentResolvers(org.springframework.messaging.handler.invocation.HandlerMethodArgumentResolver... methodArgumentResolvers) Add custom methods arguments resolvers toKafkaListenerAnnotationBeanPostProcessorDefault empty list.- Parameters:
methodArgumentResolvers- the methodArgumentResolvers to assign.- Since:
- 2.4.2
-
setMessageHandlerMethodFactory
public void setMessageHandlerMethodFactory(org.springframework.messaging.handler.annotation.support.MessageHandlerMethodFactory kafkaHandlerMethodFactory) Set theMessageHandlerMethodFactoryto use to configure the message listener responsible to serve an endpoint detected by this processor.By default,
DefaultMessageHandlerMethodFactoryis used and it can be configured further to support additional method arguments or to customize conversion and validation support. SeeDefaultMessageHandlerMethodFactoryjavadoc for more details.- Parameters:
kafkaHandlerMethodFactory- theMessageHandlerMethodFactoryinstance.
-
getMessageHandlerMethodFactory
@Nullable public org.springframework.messaging.handler.annotation.support.MessageHandlerMethodFactory getMessageHandlerMethodFactory()Return the customMessageHandlerMethodFactoryto use, if any.- Returns:
- the custom
MessageHandlerMethodFactoryto use, if any.
-
setContainerFactory
Set theKafkaListenerContainerFactoryto use in case aKafkaListenerEndpointis registered with anullcontainer factory.Alternatively, the bean name of the
KafkaListenerContainerFactoryto use can be specified for a lazy lookup, seesetContainerFactoryBeanName(java.lang.String).- Parameters:
containerFactory- theKafkaListenerContainerFactoryinstance.
-
setContainerFactoryBeanName
Set the bean name of theKafkaListenerContainerFactoryto use in case aKafkaListenerEndpointis registered with anullcontainer factory. Alternatively, the container factory instance can be registered directly: seesetContainerFactory(KafkaListenerContainerFactory).- Parameters:
containerFactoryBeanName- theKafkaListenerContainerFactorybean name.- See Also:
-
setBeanFactory
public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) ABeanFactoryonly needs to be available in conjunction withsetContainerFactoryBeanName(java.lang.String).- Specified by:
setBeanFactoryin interfaceorg.springframework.beans.factory.BeanFactoryAware- Parameters:
beanFactory- theBeanFactoryinstance.
-
getValidator
@Nullable public org.springframework.validation.Validator getValidator()Get the validator, if supplied.- Returns:
- the validator.
- Since:
- 2.2
-
setValidator
public void setValidator(org.springframework.validation.Validator validator) Set the validator to use if the default message handler factory is used.- Parameters:
validator- the validator.- Since:
- 2.2
-
afterPropertiesSet
public void afterPropertiesSet()- Specified by:
afterPropertiesSetin interfaceorg.springframework.beans.factory.InitializingBean
-
registerAllEndpoints
protected void registerAllEndpoints() -
registerEndpoint
public void registerEndpoint(KafkaListenerEndpoint endpoint, @Nullable KafkaListenerContainerFactory<?> factory) Register a newKafkaListenerEndpointalongside theKafkaListenerContainerFactoryto use to create the underlying container.The
factorymay benullif the default factory has to be used for that endpoint.- Parameters:
endpoint- theKafkaListenerEndpointinstance to register.factory- theKafkaListenerContainerFactoryto use.
-
registerEndpoint
Register a newKafkaListenerEndpointusing the defaultKafkaListenerContainerFactoryto create the underlying container.- Parameters:
endpoint- theKafkaListenerEndpointinstance to register.- See Also:
-