package org.opendaylight.controller.sal.streams.websockets;
-import org.opendaylight.controller.sal.streams.listeners.Notificator;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
import io.netty.bootstrap.ServerBootstrap;
import io.netty.channel.Channel;
import io.netty.channel.EventLoopGroup;
import io.netty.channel.nio.NioEventLoopGroup;
import io.netty.channel.socket.nio.NioServerSocketChannel;
+import org.opendaylight.controller.sal.streams.listeners.Notificator;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * {@link WebSocketServer} is responsible to start and stop web socket server at
+ * {@link #PORT}.
+ */
public class WebSocketServer implements Runnable {
- private static final Logger logger = LoggerFactory.getLogger(WebSocketServer.class);
+ private static final Logger logger = LoggerFactory
+ .getLogger(WebSocketServer.class);
public static final int PORT = 8181;
private EventLoopGroup bossGroup;
try {
ServerBootstrap b = new ServerBootstrap();
b.group(bossGroup, workerGroup)
- .channel(NioServerSocketChannel.class)
- .childHandler(new WebSocketServerInitializer());
+ .channel(NioServerSocketChannel.class)
+ .childHandler(new WebSocketServerInitializer());
Channel ch = b.bind(PORT).sync().channel();
logger.info("Web socket server started at port {}.", PORT);
}
}
+ /**
+ * Stops the web socket server and removes all listeners.
+ */
private void stop() {
Notificator.removeAllListeners();
if (bossGroup != null) {