Package server

Class WebsocketHandler

java.lang.Object
org.java_websocket.WebSocketAdapter
org.java_websocket.AbstractWebSocket
org.java_websocket.server.WebSocketServer
server.WebsocketHandler
All Implemented Interfaces:
Runnable, org.java_websocket.WebSocketListener

public class WebsocketHandler extends org.java_websocket.server.WebSocketServer
This class handles the websocket connections to the server.
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.java_websocket.server.WebSocketServer

    org.java_websocket.server.WebSocketServer.WebSocketWorker
  • Field Summary

    Fields inherited from class org.java_websocket.server.WebSocketServer

    decoders

    Fields inherited from class org.java_websocket.AbstractWebSocket

    DEFAULT_READ_BUFFER_SIZE
  • Constructor Summary

    Constructors
    Constructor
    Description
    WebsocketHandler(int port, DatabaseHandler databaseHandler)
    Constructor
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    onClose(org.java_websocket.WebSocket conn, int code, String reason, boolean remote)
    Triggered when a connection is ended
    void
    onError(org.java_websocket.WebSocket conn, Exception ex)
    Triggered on error when running the websocket server
    void
    onMessage(org.java_websocket.WebSocket conn, String incoming)
    Triggers on message received by a client.
    void
    onOpen(org.java_websocket.WebSocket conn, org.java_websocket.handshake.ClientHandshake handshake)
    Prints out whenever someone connects to the websocket
    void
     
    void
    Sends the list of users, active and inactive in a chat to all active users in the chat.

    Methods inherited from class org.java_websocket.server.WebSocketServer

    addConnection, allocateBuffers, broadcast, broadcast, broadcast, broadcast, broadcast, broadcast, createBuffer, getAddress, getConnections, getDraft, getLocalSocketAddress, getMaxPendingConnections, getPort, getRemoteSocketAddress, getWebSocketFactory, onCloseInitiated, onClosing, onConnect, onMessage, onWebsocketClose, onWebsocketCloseInitiated, onWebsocketClosing, onWebsocketError, onWebsocketMessage, onWebsocketMessage, onWebsocketOpen, onWriteDemand, queue, releaseBuffers, removeConnection, run, setDaemon, setMaxPendingConnections, setWebSocketFactory, start, stop, stop, stop

    Methods inherited from class org.java_websocket.AbstractWebSocket

    getConnectionLostTimeout, getReceiveBufferSize, isDaemon, isReuseAddr, isTcpNoDelay, setConnectionLostTimeout, setReceiveBufferSize, setReuseAddr, setTcpNoDelay, startConnectionLostTimer, stopConnectionLostTimer

    Methods inherited from class org.java_websocket.WebSocketAdapter

    onPreparePing, onWebsocketHandshakeReceivedAsClient, onWebsocketHandshakeReceivedAsServer, onWebsocketHandshakeSentAsClient, onWebsocketPing, onWebsocketPong

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • WebsocketHandler

      public WebsocketHandler(int port, DatabaseHandler databaseHandler)
      Constructor
      Parameters:
      port - Port to be used for the websocket server
      databaseHandler - handles the database connection, writing/reading.
  • Method Details

    • onOpen

      public void onOpen(org.java_websocket.WebSocket conn, org.java_websocket.handshake.ClientHandshake handshake)
      Prints out whenever someone connects to the websocket
      Specified by:
      onOpen in class org.java_websocket.server.WebSocketServer
    • onMessage

      public void onMessage(org.java_websocket.WebSocket conn, String incoming)
      Triggers on message received by a client. Only accepts Json string formatted like
      {"t": "send", "message": {"user": {"name": "dummyname"}, "text": "dummymessagetext", "time": "YYYY-MM-DDTHH:MM:SSZ"}}
      {"t": "enterchat", "chat": "chat to enter"}
      {"t": "connect", "user": "username to bind to the connection address+port"}
      Specified by:
      onMessage in class org.java_websocket.server.WebSocketServer
      Parameters:
      conn - connection data
      incoming - message from the client in form of a string
    • send_chatlist

      public void send_chatlist(String chat)
      Sends the list of users, active and inactive in a chat to all active users in the chat.
      Parameters:
      chat - chatname
      gson - Gson object for serialization and deserialization
    • onClose

      public void onClose(org.java_websocket.WebSocket conn, int code, String reason, boolean remote)
      Triggered when a connection is ended
      Specified by:
      onClose in class org.java_websocket.server.WebSocketServer
      Parameters:
      conn - Websocket connection object
      code - status code
      reason - reason string
      remote - remote close
    • onError

      public void onError(org.java_websocket.WebSocket conn, Exception ex)
      Triggered on error when running the websocket server
      Specified by:
      onError in class org.java_websocket.server.WebSocketServer
      Parameters:
      conn - Websocket connection object
      ex - Exception object triggered
    • onStart

      public void onStart()
      Specified by:
      onStart in class org.java_websocket.server.WebSocketServer