sclass WebSocketHTTPD extends NanoWebSocketServer { *(int port, O factory) { super(port, webSocketFactory(factory)); } public Response serve(String uri, Method method, Map header, Map parms, Map files) { S remoteAddr = header.get("remote-addr"); print("Serving URI: " + quote(uri) + " to: " + remoteAddr); /*if (nempty(remoteAddr) && isTrue(callOpt(mc(), "isBlockedIP", remoteAddr))) { print("BLOCKED IP."); ret serve404(); }*/ try { Response response = cast callOpt(getMainClass(), "serve", uri, method, header, parms, files); if (response != null) ret response; S html = callHtmlMethod(getMainClass(), uri, parms); if (html != null) ret serveHTML(html); ret serve404(); } catch (Throwable e) { printStackTrace(e); ret serveHTML("ERROR."); } } }