Advertisement
Guest User

Extended WebSocketServer

a guest
Dec 17th, 2013
168
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.74 KB | None | 0 0
  1. import org.java_websocket.WebSocket;
  2. import org.java_websocket.handshake.ClientHandshake;
  3. import org.java_websocket.server.WebSocketServer;
  4.  
  5. import java.net.InetSocketAddress;
  6. import java.net.UnknownHostException;
  7. import java.util.Collection;
  8.  
  9. public class CustomWebSocketServer extends WebSocketServer {
  10.  
  11.     private static int Port = 80;
  12.     private static CustomWebSocketServer ourInstance = null;
  13.  
  14.     public static CustomWebSocketServer getInstance() {
  15.         if (ourInstance == null) {
  16.             try {
  17.                 ourInstance = new CustomWebSocketServer(Port);
  18.             } catch (Exception e) {
  19.                 Main.logger.warning("Cannot create instance of WebSocketServer on port " + Port);
  20.             }
  21.         }
  22.         return ourInstance;
  23.     }
  24.  
  25.     public CustomWebSocketServer(int port) throws UnknownHostException
  26.     {
  27.         super(new InetSocketAddress(port));
  28.     }
  29.  
  30.     @Override
  31.     public void onOpen(WebSocket conn, ClientHandshake handshake)
  32.     {
  33.         Main.logger.info("WebSocketServer::onOpen()");
  34.     }
  35.  
  36.     @Override
  37.     public void onClose(WebSocket conn, int code, String reason, boolean remote)
  38.     {
  39.         Main.logger.info("WebSocketServer::onClose() - " + code + " / " + reason);
  40.     }
  41.  
  42.     @Override
  43.     public void onMessage(WebSocket conn, String message)
  44.     {
  45.         Main.logger.info("WebSocketServer::onMessage() - " + message);
  46.         sendToAll("Tnx for message");
  47.     }
  48.  
  49.     @Override
  50.     public void onError(WebSocket conn, Exception ex)
  51.     {
  52.         Main.logger.warning("WebSocketServer::onError() - " + ex.getMessage());
  53.  
  54.         if (conn == null) {
  55.             // TAG: ---HERE---
  56.             Main.logger.warning("WebSocketServer::onError() - exit(1)");
  57.             System.exit(1);
  58.         }
  59.     }
  60.  
  61.     public void sendToAll(String text)
  62.     {
  63.         Collection<WebSocket> con = connections();
  64.         synchronized(con) {
  65.             for (WebSocket c : con) {
  66.                 c.send(text);
  67.             }
  68.         }
  69.     }
  70.  
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement