Class ReactiveMessageHandlerAdapter

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

public class ReactiveMessageHandlerAdapter
extends java.lang.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:
ReactiveStreamsConsumer
  • 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 getDelegate()
    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