JBear2/src/main/kotlin/at/eisibaer/jbear2/config/WebSocketConfig.kt

29 lines
1.1 KiB
Kotlin

package at.eisibaer.jbear2.config
import org.springframework.context.annotation.Configuration
import org.springframework.messaging.simp.config.MessageBrokerRegistry
import org.springframework.scheduling.annotation.EnableScheduling
import org.springframework.session.Session
import org.springframework.session.web.socket.config.annotation.AbstractSessionWebSocketMessageBrokerConfigurer
import org.springframework.web.socket.config.annotation.EnableWebSocketMessageBroker
import org.springframework.web.socket.config.annotation.StompEndpointRegistry
@Configuration
@EnableScheduling
@EnableWebSocketMessageBroker
class WebSocketConfig(
val applicationProperties: ApplicationProperties,
) : AbstractSessionWebSocketMessageBrokerConfigurer<Session>() {
override fun configureMessageBroker(registry: MessageBrokerRegistry) {
registry.setApplicationDestinationPrefixes("/app");
registry.enableSimpleBroker("/topic");
}
override fun configureStompEndpoints(registry: StompEndpointRegistry) {
registry
.addEndpoint("/ws")
.setAllowedOrigins(applicationProperties.corsAllowedOrigins.joinToString(","))
}
}