Class EchoServer

  • All Implemented Interfaces:
    FlowContextHandler, Runnable, org.java_websocket.WebSocketListener

    public class EchoServer
    extends org.java_websocket.server.WebSocketServer
    implements FlowContextHandler
    Just sends the messages back to the client.
    Author:
    FracPete (fracpete at waikato dot ac dot nz)
    • Nested Class Summary

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

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

      Fields 
      Modifier and Type Field Description
      protected Actor m_FlowContext
      the flow context.
      protected Logger m_Logger
      for logging purposes.
      • Fields inherited from class org.java_websocket.server.WebSocketServer

        decoders
      • Fields inherited from class org.java_websocket.AbstractWebSocket

        DEFAULT_READ_BUFFER_SIZE
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      Actor getFlowContext()
      Returns the flow context, if any.
      protected Logger getLogger()
      Returns the logger instance to use.
      void onClose​(org.java_websocket.WebSocket conn, int code, String reason, boolean remote)
      Called after the websocket connection has been closed.
      void onError​(org.java_websocket.WebSocket conn, Exception ex)
      Called when errors occurs.
      void onMessage​(org.java_websocket.WebSocket conn, String message)
      Callback for string messages received from the remote host
      void onMessage​(org.java_websocket.WebSocket conn, ByteBuffer message)
      Callback for binary messages received from the remote host
      void onOpen​(org.java_websocket.WebSocket conn, org.java_websocket.handshake.ClientHandshake handshake)
      Called after an opening handshake has been performed and the given websocket is ready to be written on.
      void onStart()
      Called after the server starts.
      void setFlowContext​(Actor value)
      Sets the flow context.
      • 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, 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
    • Field Detail

      • m_Logger

        protected Logger m_Logger
        for logging purposes.
      • m_FlowContext

        protected Actor m_FlowContext
        the flow context.
    • Constructor Detail

      • EchoServer

        public EchoServer​(InetSocketAddress address,
                          Logger logger)
        Instantiates the server with the given address.
        Parameters:
        address - the address to bind to
    • Method Detail

      • getFlowContext

        public Actor getFlowContext()
        Returns the flow context, if any.
        Specified by:
        getFlowContext in interface FlowContextHandler
        Returns:
        the actor, null if none available
      • getLogger

        protected Logger getLogger()
        Returns the logger instance to use.
        Returns:
        the logger
      • onStart

        public void onStart()
        Called after the server starts.
        Specified by:
        onStart in class org.java_websocket.server.WebSocketServer
      • onOpen

        public void onOpen​(org.java_websocket.WebSocket conn,
                           org.java_websocket.handshake.ClientHandshake handshake)
        Called after an opening handshake has been performed and the given websocket is ready to be written on.
        Specified by:
        onOpen in class org.java_websocket.server.WebSocketServer
      • onClose

        public void onClose​(org.java_websocket.WebSocket conn,
                            int code,
                            String reason,
                            boolean remote)
        Called after the websocket connection has been closed.
        Specified by:
        onClose in class org.java_websocket.server.WebSocketServer
        Parameters:
        code - The codes can be looked up here: CloseFrame
        reason - Additional information string
        remote - Returns whether or not the closing of the connection was initiated by the remote host.
      • onMessage

        public void onMessage​(org.java_websocket.WebSocket conn,
                              String message)
        Callback for string messages received from the remote host
        Specified by:
        onMessage in class org.java_websocket.server.WebSocketServer
      • onMessage

        public void onMessage​(org.java_websocket.WebSocket conn,
                              ByteBuffer message)
        Callback for binary messages received from the remote host
        Overrides:
        onMessage in class org.java_websocket.server.WebSocketServer
      • onError

        public void onError​(org.java_websocket.WebSocket conn,
                            Exception ex)
        Called when errors occurs.
        Specified by:
        onError in class org.java_websocket.server.WebSocketServer
        Parameters:
        conn - Can be null if there error does not belong to one specific websocket. For example if the servers port could not be bound.