Interface WebSocketMessageBrokerConfigurer
Typically used to customize the configuration provided via
@EnableWebSocketMessageBroker.
- Since:
- 4.0
- Author:
- Rossen Stoyanchev
-
Method Summary
Modifier and TypeMethodDescriptiondefault voidaddArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) Add resolvers to support custom controller method argument types.default voidaddReturnValueHandlers(List<HandlerMethodReturnValueHandler> returnValueHandlers) Add handlers to support custom controller method return value types.default voidconfigureClientInboundChannel(ChannelRegistration registration) Configure theMessageChannelused for incoming messages from WebSocket clients.default voidconfigureClientOutboundChannel(ChannelRegistration registration) Configure theMessageChannelused for outbound messages to WebSocket clients.default voidconfigureMessageBroker(MessageBrokerRegistry registry) Configure message broker options.default booleanconfigureMessageConverters(List<MessageConverter> messageConverters) Configure the message converters to use when extracting the payload of messages in annotated methods and when sending messages (e.g.default voidConfigure options related to the processing of messages received from and sent to WebSocket clients.default IntegergetPhase()Return thephasethat WebSocket message handling beans of typeSmartLifecycleshould run in.default voidregisterStompEndpoints(StompEndpointRegistry registry) Register STOMP endpoints mapping each to a specific URL and (optionally) enabling and configuring SockJS fallback options.
-
Method Details
-
registerStompEndpoints
Register STOMP endpoints mapping each to a specific URL and (optionally) enabling and configuring SockJS fallback options. -
configureWebSocketTransport
Configure options related to the processing of messages received from and sent to WebSocket clients. -
configureClientInboundChannel
Configure theMessageChannelused for incoming messages from WebSocket clients. By default, the channel is backed by a thread pool of size 1. It is recommended to customize thread pool settings for production use. -
configureClientOutboundChannel
Configure theMessageChannelused for outbound messages to WebSocket clients. By default, the channel is backed by a thread pool of size 1. It is recommended to customize thread pool settings for production use. -
addArgumentResolvers
Add resolvers to support custom controller method argument types.This does not override the built-in support for resolving handler method arguments. To customize the built-in support for argument resolution, configure
SimpAnnotationMethodMessageHandlerdirectly.- Parameters:
argumentResolvers- the resolvers to register (initially an empty list)- Since:
- 4.1.1
-
addReturnValueHandlers
Add handlers to support custom controller method return value types.Using this option does not override the built-in support for handling return values. To customize the built-in support for handling return values, configure
SimpAnnotationMethodMessageHandlerdirectly.- Parameters:
returnValueHandlers- the handlers to register (initially an empty list)- Since:
- 4.1.1
-
configureMessageConverters
Configure the message converters to use when extracting the payload of messages in annotated methods and when sending messages (e.g. through the "broker" SimpMessagingTemplate).The provided list, initially empty, can be used to add message converters while the boolean return value is used to determine if default message should be added as well.
- Parameters:
messageConverters- the converters to configure (initially an empty list)- Returns:
- whether to also add default converter or not
-
configureMessageBroker
Configure message broker options. -
getPhase
Return thephasethat WebSocket message handling beans of typeSmartLifecycleshould run in.The default implementation returns
nullwhich allows other configurers to decide. As soon as any configurer returns a value, that value is used. If no configurer returns a value, then by defaultSmartLifecycle.DEFAULT_PHASEis used.It is recommended to use a phase value such as 0 in order to ensure that components start before the web server in Spring Boot application. In 6.2.0, the default used will change to 0.
- Since:
- 6.1.4
- See Also:
-