Class ReactiveMessageHandlerAdapter

java.lang.Object
org.springframework.integration.handler.ReactiveMessageHandlerAdapter
All Implemented Interfaces:
org.springframework.messaging.MessageHandler

public class ReactiveMessageHandlerAdapter extends Object implements org.springframework.messaging.MessageHandler
A MessageHandler implementation to adapt a ReactiveMessageHandler for synchronous invocations. A subscription to the returned reactive type from ReactiveMessageHandler.handleMessage(Message) call is done directly in the handleMessage(org.springframework.messaging.Message<?>) implementation.

The framework wraps a target ReactiveMessageHandler into this instance automatically for XML and Annotation configuration. For Java DSL it is recommended to wrap for generic usage (.handle(MessageHandle)) or it has to be done in the MessageHandlerSpec implementation for protocol-specif ReactiveMessageHandler.

The framework unwraps a delegate ReactiveMessageHandler whenever it can compose reactive streams, e.g. ReactiveStreamsConsumer.

Since:
5.3
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    ReactiveMessageHandlerAdapter(org.springframework.messaging.ReactiveMessageHandler reactiveMessageHandler)
    Instantiate based on the provided ReactiveMessageHandler.
  • Method Summary

    Modifier and Type
    Method
    Description
    org.springframework.messaging.ReactiveMessageHandler
    Get access to the delegate ReactiveMessageHandler.
    void
    handleMessage(org.springframework.messaging.Message<?> message)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ReactiveMessageHandlerAdapter

      public ReactiveMessageHandlerAdapter(org.springframework.messaging.ReactiveMessageHandler reactiveMessageHandler)
      Instantiate based on the provided ReactiveMessageHandler.
      Parameters:
      reactiveMessageHandler - the ReactiveMessageHandler to delegate to.
  • Method Details

    • getDelegate

      public org.springframework.messaging.ReactiveMessageHandler getDelegate()
      Get access to the delegate ReactiveMessageHandler. Typically used in the framework internally in components which can compose reactive streams internally and allow us to avoid an explicit subscribe() call.
      Returns:
      the ReactiveMessageHandler this instance is delegating to.
    • handleMessage

      public void handleMessage(org.springframework.messaging.Message<?> message) throws org.springframework.messaging.MessagingException
      Specified by:
      handleMessage in interface org.springframework.messaging.MessageHandler
      Throws:
      org.springframework.messaging.MessagingException