Class SimpleBrokerRegistration

java.lang.Object
org.springframework.messaging.simp.config.AbstractBrokerRegistration
org.springframework.messaging.simp.config.SimpleBrokerRegistration

public class SimpleBrokerRegistration extends AbstractBrokerRegistration
Registration class for configuring a SimpleBrokerMessageHandler.
Since:
4.0
Author:
Rossen Stoyanchev, Sam Brannen
  • Constructor Details

    • SimpleBrokerRegistration

      public SimpleBrokerRegistration(SubscribableChannel clientInboundChannel, MessageChannel clientOutboundChannel, String[] destinationPrefixes)
      Create a new SimpleBrokerRegistration.
      Parameters:
      clientInboundChannel - the inbound channel
      clientOutboundChannel - the outbound channel
      destinationPrefixes - the destination prefixes
  • Method Details

    • setTaskScheduler

      public SimpleBrokerRegistration setTaskScheduler(org.springframework.scheduling.TaskScheduler taskScheduler)
      Configure the TaskScheduler to use for providing heartbeat support. Setting this property also sets the heartbeatValue to "10000, 10000".

      By default this is not set.

      Since:
      4.2
    • setHeartbeatValue

      public SimpleBrokerRegistration setHeartbeatValue(long[] heartbeat)
      Configure the value for the heartbeat settings. The first number represents how often the server will write or send a heartbeat. The second is how often the client should write. 0 means no heartbeats.

      By default this is set to "0, 0" unless the taskScheduler in which case the default becomes "10000,10000" (in milliseconds).

      Since:
      4.2
    • setSelectorHeaderName

      public void setSelectorHeaderName(@Nullable String selectorHeaderName)
      Configure the name of a header that a subscription message can have for the purpose of filtering messages matched to the subscription.

      The header value is expected to be a Spring Expression Language (SpEL) boolean expression to be applied to the headers of messages matched to the subscription.

      For example:

       headers.foo == 'bar'
       

      By default this is set to "selector". You can set it to a different name, or to null to turn off support for a selector header.

      Parameters:
      selectorHeaderName - the name to use for a selector header
      Since:
      4.3.17
    • getMessageHandler

      protected SimpleBrokerMessageHandler getMessageHandler(SubscribableChannel brokerChannel)
      Specified by:
      getMessageHandler in class AbstractBrokerRegistration