org.springframework.web.socket.config.annotation

## Class DelegatingWebSocketMessageBrokerConfiguration

- java.lang.Object
- - org.springframework.messaging.simp.config.AbstractMessageBrokerConfiguration
  - - org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurationSupport
    - - org.springframework.web.socket.config.annotation.DelegatingWebSocketMessageBrokerConfiguration

- All Implemented Interfaces:
    Aware, ApplicationContextAware

      @Configuration(proxyBeanMethods=false)
      public class DelegatingWebSocketMessageBrokerConfiguration
      extends WebSocketMessageBrokerConfigurationSupport

  A `WebSocketMessageBrokerConfigurationSupport` extension that detects beans of type `WebSocketMessageBrokerConfigurer` and delegates to all of them allowing callback style customization of the configuration provided in `WebSocketMessageBrokerConfigurationSupport`.

  This class is typically imported via `EnableWebSocketMessageBroker`.

  Since:
    4.0
  Author:
    Rossen Stoyanchev, Sebastien Deleuze

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `DelegatingWebSocketMessageBrokerConfiguration()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers)`
    `protected void` | `addReturnValueHandlers(List<HandlerMethodReturnValueHandler> returnValueHandlers)`
    `protected void` | `configureClientInboundChannel(ChannelRegistration registration)` A hook for subclasses to customize the message channel for inbound messages from WebSocket clients.
    `protected void` | `configureClientOutboundChannel(ChannelRegistration registration)` A hook for subclasses to customize the message channel for messages from the application or message broker to WebSocket clients.
    `protected void` | `configureMessageBroker(MessageBrokerRegistry registry)` A hook for subclasses to customize message broker configuration through the provided `MessageBrokerRegistry` instance.
    `protected boolean` | `configureMessageConverters(List<MessageConverter> messageConverters)` Override this method to add custom message converters.
    `protected void` | `configureWebSocketTransport(WebSocketTransportRegistration registration)`
    `protected void` | `registerStompEndpoints(StompEndpointRegistry registry)`
    `void` | `setConfigurers(List<WebSocketMessageBrokerConfigurer> configurers)`

    - ### Methods inherited from class org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurationSupport

      `createAnnotationMethodMessageHandler, createJacksonConverter, createLocalUserRegistry, decorateWebSocketHandler, getTransportRegistration, stompWebSocketHandlerMapping, subProtocolWebSocketHandler, webSocketMessageBrokerStats, webSocketScopeConfigurer`

    - ### Methods inherited from class org.springframework.messaging.simp.config.AbstractMessageBrokerConfiguration

      `brokerChannel, brokerChannelExecutor, brokerMessageConverter, brokerMessagingTemplate, clientInboundChannel, clientInboundChannelExecutor, clientOutboundChannel, clientOutboundChannelExecutor, createLocalUserRegistry, getApplicationContext, getBrokerRegistry, getClientInboundChannelRegistration, getClientOutboundChannelRegistration, getPathMatcher, getValidator, messageBrokerTaskScheduler, setApplicationContext, simpAnnotationMethodMessageHandler, simpleBrokerMessageHandler, simpValidator, stompBrokerRelayMessageHandler, userDestinationMessageHandler, userDestinationResolver, userRegistry, userRegistryMessageHandler`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### DelegatingWebSocketMessageBrokerConfiguration

          public DelegatingWebSocketMessageBrokerConfiguration()

  - ### Method Detail

    - #### setConfigurers

          @Autowired(required=false)
          public void setConfigurers(List<WebSocketMessageBrokerConfigurer> configurers)

    - #### registerStompEndpoints

          protected void registerStompEndpoints(StompEndpointRegistry registry)

      Specified by:
        `registerStompEndpoints` in class `WebSocketMessageBrokerConfigurationSupport`

    - #### configureWebSocketTransport

          protected void configureWebSocketTransport(WebSocketTransportRegistration registration)

      Overrides:
        `configureWebSocketTransport` in class `WebSocketMessageBrokerConfigurationSupport`

    - #### configureClientInboundChannel

          protected void configureClientInboundChannel(ChannelRegistration registration)

      Description copied from class: `AbstractMessageBrokerConfiguration`
      A hook for subclasses to customize the message channel for inbound messages from WebSocket clients.
      Overrides:
        `configureClientInboundChannel` in class `AbstractMessageBrokerConfiguration`

    - #### configureClientOutboundChannel

          protected void configureClientOutboundChannel(ChannelRegistration registration)

      Description copied from class: `AbstractMessageBrokerConfiguration`
      A hook for subclasses to customize the message channel for messages from the application or message broker to WebSocket clients.
      Overrides:
        `configureClientOutboundChannel` in class `AbstractMessageBrokerConfiguration`

    - #### addArgumentResolvers

          protected void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers)

      Overrides:
        `addArgumentResolvers` in class `AbstractMessageBrokerConfiguration`

    - #### addReturnValueHandlers

          protected void addReturnValueHandlers(List<HandlerMethodReturnValueHandler> returnValueHandlers)

      Overrides:
        `addReturnValueHandlers` in class `AbstractMessageBrokerConfiguration`

    - #### configureMessageConverters

          protected boolean configureMessageConverters(List<MessageConverter> messageConverters)

      Description copied from class: `AbstractMessageBrokerConfiguration`
      Override this method to add custom message converters.
      Overrides:
        `configureMessageConverters` in class `AbstractMessageBrokerConfiguration`
      Parameters:
        `messageConverters` - the list to add converters to, initially empty
      Returns:
        `true` if default message converters should be added to list, `false` if no more converters should be added

    - #### configureMessageBroker

          protected void configureMessageBroker(MessageBrokerRegistry registry)

      Description copied from class: `AbstractMessageBrokerConfiguration`
      A hook for subclasses to customize message broker configuration through the provided `MessageBrokerRegistry` instance.
      Overrides:
        `configureMessageBroker` in class `AbstractMessageBrokerConfiguration`