org.eclipse.dirigible.components.websockets.config.WebsocketConfig Maven / Gradle / Ivy
/*
* Copyright (c) 2023 SAP SE or an SAP affiliate company and Eclipse Dirigible contributors
*
* All rights reserved. This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v2.0 which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v20.html
*
* SPDX-FileCopyrightText: 2023 SAP SE or an SAP affiliate company and Eclipse Dirigible
* contributors SPDX-License-Identifier: EPL-2.0
*/
package org.eclipse.dirigible.components.websockets.config;
import org.eclipse.dirigible.components.websockets.service.WebsocketProcessor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.messaging.simp.config.MessageBrokerRegistry;
import org.springframework.web.socket.config.annotation.EnableWebSocketMessageBroker;
import org.springframework.web.socket.config.annotation.StompEndpointRegistry;
import org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurer;
/**
* The Class DataTransferWebsocketConfig.
*/
@Configuration
@EnableWebSocketMessageBroker
public class WebsocketConfig implements WebSocketMessageBrokerConfigurer {
/** The processor. */
private final WebsocketProcessor processor;
/**
* Instantiates a new websocket config.
*
* @param processor the processor
*/
@Autowired
public WebsocketConfig(WebsocketProcessor processor) {
this.processor = processor;
}
/**
* Gets the processor.
*
* @return the processor
*/
public WebsocketProcessor getProcessor() {
return processor;
}
/**
* Configure message broker.
*
* @param config the config
*/
@Override
public void configureMessageBroker(final MessageBrokerRegistry config) {
config.enableSimpleBroker("/queue/", "/topic/");
config.setApplicationDestinationPrefixes("/ws");
}
/**
* Register stomp endpoints.
*
* @param registry the registry
*/
@Override
public void registerStompEndpoints(final StompEndpointRegistry registry) {
registry.addEndpoint("/stomp");
registry.addEndpoint("/stomp")
.withSockJS();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy