Class EngineIoServer


  • public final class EngineIoServer
    extends Emitter
    The engine.io server. This class is responsible for handling all HTTP and WebSocket requests.
    • Field Detail

      • mClients

        private final java.util.Map<java.lang.String,​EngineIoSocket> mClients
      • mAllowedCorsOrigins

        private final java.util.HashSet<java.lang.String> mAllowedCorsOrigins
      • mScheduledExecutor

        private final java.util.concurrent.ScheduledExecutorService mScheduledExecutor
    • Constructor Detail

      • EngineIoServer

        public EngineIoServer()
        Create instance of server with default options.
      • EngineIoServer

        public EngineIoServer​(EngineIoServerOptions options)
        Create instance of server with specified options. The options instance is locked to prevent further modifications.
        Parameters:
        options - Server options.
    • Method Detail

      • getOptions

        public EngineIoServerOptions getOptions()
        Gets the configured options for this server instance.
      • getScheduledExecutor

        public java.util.concurrent.ScheduledExecutorService getScheduledExecutor()
        Gets the underlying executor used for ping timeout handling.
      • shutdown

        public void shutdown()
        Releases resources such as threads and clients.
      • handleRequest

        public void handleRequest​(jakarta.servlet.http.HttpServletRequest request,
                                  jakarta.servlet.http.HttpServletResponse response)
                           throws java.io.IOException
        Handle an HTTP request. This method handles polling transport connections.
        Parameters:
        request - The HTTP request object.
        response - The HTTP response object.
        Throws:
        java.io.IOException - On IO error.
      • handleWebSocket

        public void handleWebSocket​(EngineIoWebSocket webSocket)
        Handle a WebSocket request. This method handles websocket transport connections.
        Parameters:
        webSocket - The WebSocket connection object.
      • sendErrorMessage

        private void sendErrorMessage​(jakarta.servlet.http.HttpServletResponse response,
                                      ServerErrors code)
                               throws java.io.IOException
        Throws:
        java.io.IOException
      • handshakePolling

        private void handshakePolling​(jakarta.servlet.http.HttpServletRequest request,
                                      jakarta.servlet.http.HttpServletResponse response)
                               throws java.io.IOException
        Throws:
        java.io.IOException
      • handshakeWebSocket

        private void handshakeWebSocket​(EngineIoWebSocket webSocket)
      • parserFromQuery

        private static Parser parserFromQuery​(java.util.Map<java.lang.String,​java.lang.String> query)