Class EndpointRegistrar

java.lang.Object
io.awspring.cloud.sqs.config.EndpointRegistrar
All Implemented Interfaces:
Aware, BeanFactoryAware, SmartInitializingSingleton

public class EndpointRegistrar extends Object implements BeanFactoryAware, SmartInitializingSingleton
Processes the registered Endpoint instances using the appropriate MessageListenerContainerFactory. Contains configurations that will be applied to all @SqsListener containers. Such configurations can be set by declaring SqsListenerConfigurer beans.
Since:
3.0
Author:
Tomaz Fernandes
See Also:
  • Field Details

    • DEFAULT_LISTENER_CONTAINER_FACTORY_BEAN_NAME

      public static final String DEFAULT_LISTENER_CONTAINER_FACTORY_BEAN_NAME
      See Also:
  • Constructor Details

    • EndpointRegistrar

      public EndpointRegistrar()
  • Method Details

    • setMessageHandlerMethodFactory

      public void setMessageHandlerMethodFactory(MessageHandlerMethodFactory messageHandlerMethodFactory)
      Set a custom MessageHandlerMethodFactory implementation.
      Parameters:
      messageHandlerMethodFactory - the instance.
    • setListenerContainerRegistry

      public void setListenerContainerRegistry(MessageListenerContainerRegistry listenerContainerRegistry)
      Parameters:
      listenerContainerRegistry - the instance.
    • setDefaultListenerContainerFactoryBeanName

      public void setDefaultListenerContainerFactoryBeanName(String defaultListenerContainerFactoryBeanName)
      Set the bean name for the default MessageListenerContainerFactory.
      Parameters:
      defaultListenerContainerFactoryBeanName - the bean name.
    • setMessageListenerContainerRegistryBeanName

      public void setMessageListenerContainerRegistryBeanName(String messageListenerContainerRegistryBeanName)
      Set the bean name for the MessageListenerContainerRegistry.
      Parameters:
      messageListenerContainerRegistryBeanName - the bean name.
    • setObjectMapper

      public void setObjectMapper(com.fasterxml.jackson.databind.ObjectMapper objectMapper)
      Set the object mapper to be used to deserialize payloads fot SqsListener endpoints.
      Parameters:
      objectMapper - the object mapper instance.
    • setValidator

      public void setValidator(Validator validator)
      Set the Validator instance used for payload validating in HandlerMethodArgumentResolver instances.
      Parameters:
      validator - payload validator.
    • manageMessageConverters

      public void manageMessageConverters(Consumer<List<MessageConverter>> convertersConsumer)
      Manage the list of MessageConverter instances to be used to convert payloads.
      Parameters:
      convertersConsumer - a consumer for the converters list.
    • manageMethodArgumentResolvers

      public void manageMethodArgumentResolvers(Consumer<List<HandlerMethodArgumentResolver>> resolversConsumer)
      Manage the list of HandlerMethodArgumentResolver instances to be used for resolving method arguments.
      Parameters:
      resolversConsumer - a consumer for the resolvers list.
    • getMessageConverterConsumer

      public Consumer<List<MessageConverter>> getMessageConverterConsumer()
      Get the message converters list consumer.
      Returns:
      the consumer.
    • getMethodArgumentResolversConsumer

      public Consumer<List<HandlerMethodArgumentResolver>> getMethodArgumentResolversConsumer()
      Get the method argument resolvers list consumer.
      Returns:
      the consumer.
    • getObjectMapper

      public com.fasterxml.jackson.databind.ObjectMapper getObjectMapper()
      Get the object mapper used to deserialize payloads.
      Returns:
      the object mapper instance.
    • getMessageHandlerMethodFactory

      public MessageHandlerMethodFactory getMessageHandlerMethodFactory()
      Return the MessageHandlerMethodFactory to be used to create MessageHandler instances for the Endpoints.
      Returns:
      the factory instance.
    • getValidator

      public Validator getValidator()
      Return the Validator instance used for payload validating in HandlerMethodArgumentResolver instances.
      Returns:
      the payload validator.
    • setBeanFactory

      public void setBeanFactory(BeanFactory beanFactory) throws BeansException
      Specified by:
      setBeanFactory in interface BeanFactoryAware
      Throws:
      BeansException
    • registerEndpoint

      public void registerEndpoint(Endpoint endpoint)
      Register an Endpoint within this registrar for later processing.
      Parameters:
      endpoint - the endpoint.
    • afterSingletonsInstantiated

      public void afterSingletonsInstantiated()
      Specified by:
      afterSingletonsInstantiated in interface SmartInitializingSingleton