@Override public void end() { NativeWebSocket ws = exchange.getAttachment(UndertowRequest.SOCKET); if (ws != null) { try { Handlers.websocket((wsExchange, channel) -> ((UndertowWebSocket) ws).connect(channel)).handleRequest(exchange); } catch (Exception ex) { LoggerFactory.getLogger(NativeResponse.class).error("Upgrade result in exception", ex); } finally { exchange.removeAttachment(UndertowRequest.SOCKET); } } if (endExchange) { exchange.endExchange(); } }
.addPrefixPath(API_ENDPOINT_WS_XML, websocket(new InternalWebSocketHandler(this, certificateCommonName, RequestFormatType.XML))) .addPrefixPath(API_ENDPOINT_WS_JSON, websocket(new InternalWebSocketHandler(this, certificateCommonName, RequestFormatType.JSON))) .addPrefixPath(API_ENDPOINT_REST_XML, new InternalRestHandler(this, RequestFormatType.XML)) .addPrefixPath(API_ENDPOINT_REST_JSON, new InternalRestHandler(this, RequestFormatType.JSON))
public WebsocketHandler(WebSocketConnectionCallback connectionCallback) { websocket = Handlers.websocket(connectionCallback); }
public static MappedEndpoint websocket(String url, WebSocketConnectionCallback connectionCallback, List<Interceptor> interceptors) { Objects.requireNonNull(url, Messages.INVALID_URL); Objects.requireNonNull(connectionCallback, Messages.INVALID_HANDLER); WebSocketProtocolHandshakeHandler websocket = Handlers.websocket(connectionCallback); InterceptorHandler interceptorHandler = new InterceptorHandler(interceptors); interceptorHandler.setNext(websocket); return new MappedEndpoint(Methods.GET_STRING, url, MappedEndpoint.Type.WS, interceptorHandler); }
public CamelWebSocketHandler() { super(); this.receiveListener = new UndertowReceiveListener(); this.callback = new UndertowWebSocketConnectionCallback(); this.closeListener = new ChannelListener<WebSocketChannel>() { @Override public void handleEvent(WebSocketChannel channel) { sendEventNotificationIfNeeded((String) channel.getAttribute(UndertowConstants.CONNECTION_KEY), EventType.ONCLOSE); } }; this.delegate = Handlers.websocket(callback); }
public static MappedEndpoint websocket(String url, WebSocketConnectionCallback connectionCallback, List<Interceptor> interceptors) { Objects.requireNonNull(url, Messages.INVALID_URL); Objects.requireNonNull(connectionCallback, Messages.INVALID_HANDLER); WebSocketProtocolHandshakeHandler websocket = Handlers.websocket(connectionCallback); InterceptorHandler interceptorHandler = new InterceptorHandler(interceptors); interceptorHandler.setNext(websocket); return new MappedEndpoint(MappedEndpoint.Type.WS.name(), url, MappedEndpoint.Type.WS, interceptorHandler); }
public WebsocketHandler(AbstractReceiveListener endpoint, InterceptorHandler interceptorHandler) { websocket = Handlers.websocket((exchange, channel) -> { channel.getReceiveSetter().set(endpoint); channel.resumeReceives(); }); }
private static HttpHandler websocketHandler(Set<WebSocketChannel> activeChannels) { return Handlers.websocket((exchange, channel) -> { activeChannels.add(channel); channel.getReceiveSetter().set(new WebsocketReceiveListener(activeChannels)); channel.resumeReceives(); }); }
public WebsocketHandler(AbstractReceiveListener endpoint, InterceptorHandler interceptorHandler) { websocket = Handlers.websocket((exchange, channel) -> { channel.getReceiveSetter().set(endpoint); channel.resumeReceives(); }); }
public WebsocketHandler(AbstractReceiveListener endpoint, InterceptorHandler interceptorHandler) { websocket = Handlers.websocket((exchange, channel) -> { channel.getReceiveSetter().set(endpoint); channel.resumeReceives(); }); }
public WebsocketHandler(WebsocketEndpoint websocketEndpoint) { websocket = Handlers.websocket((exchange, channel) -> { websocketEndpoint.onConnect(exchange, channel); channel.getReceiveSetter().set(websocketEndpoint); channel.resumeReceives(); }); }
HttpHandler wrappedWebsocketHandlerFrom( final WebSocketHandler handler, final WebResource webResource ) { final String url = URL.removeTrailingCharacter( webResource.path() ); final URLMatcher urlMatcher = URLMatcher.compile( "{protocol}://{host}" + url ); final WebSocketConnectionCallback callbackHandler = new WebSocketConnectionCallbackHandler( handler, urlMatcher ,serializer, unserializer, executorService ); return Handlers.websocket( callbackHandler ); }
public WebsocketHandler(WebsocketEndpoint websocketEndpoint) { websocket = Handlers.websocket((exchange, channel) -> { websocketEndpoint.onConnect(exchange, channel); channel.getReceiveSetter().set(websocketEndpoint); channel.resumeReceives(); }); }
public WebsocketHandler(WebsocketEndpoint websocketEndpoint) { websocket = Handlers.websocket((exchange, channel) -> { websocketEndpoint.onConnect(exchange, channel); channel.getReceiveSetter().set(websocketEndpoint); channel.resumeReceives(); }); }
public static MappedEndpoint websocket(String url, AbstractReceiveListener endpoint) { Objects.requireNonNull(endpoint, Messages.INVALID_HANDLER); url = resolveUrl(url); WebSocketProtocolHandshakeHandler websocket = Handlers.websocket((exchange, channel) -> { channel.getReceiveSetter().set(endpoint); channel.resumeReceives(); }); return new MappedEndpoint(MappedEndpoint.Type.WS.name(), url, MappedEndpoint.Type.WS, websocket); }
public static MappedEndpoint websocket(String url, AbstractReceiveListener endpoint, List<Interceptor> interceptors) { Objects.requireNonNull(url, Messages.INVALID_URL); Objects.requireNonNull(endpoint, Messages.INVALID_HANDLER); url = resolveUrl(url); WebSocketProtocolHandshakeHandler websocket = Handlers.websocket((exchange, channel) -> { channel.getReceiveSetter().set(endpoint); channel.resumeReceives(); }); InterceptorHandler interceptorHandler = new InterceptorHandler(interceptors); interceptorHandler.setNext(websocket); return new MappedEndpoint(MappedEndpoint.Type.WS.name(), url, MappedEndpoint.Type.WS, interceptorHandler); }
public static MappedEndpoint websocket(String url, AbstractReceiveListener endpoint, List<Interceptor> interceptors) { Objects.requireNonNull(url, Messages.INVALID_URL); Objects.requireNonNull(endpoint, Messages.INVALID_HANDLER); url = resolveUrl(url); WebSocketProtocolHandshakeHandler websocket = Handlers.websocket((exchange, channel) -> { channel.getReceiveSetter().set(endpoint); channel.resumeReceives(); }); InterceptorHandler interceptorHandler = new InterceptorHandler(interceptors); interceptorHandler.setNext(websocket); return new MappedEndpoint(MappedEndpoint.Type.WS.name(), url, MappedEndpoint.Type.WS, interceptorHandler); }
public static MappedEndpoint websocket(String url, WebsocketEndpoint websocketEndpoint) { Objects.requireNonNull(websocketEndpoint, Messages.INVALID_HANDLER); url = resolveUrl(url); WebSocketProtocolHandshakeHandler websocket = Handlers.websocket((exchange, channel) -> { websocketEndpoint.onConnect(exchange, channel); channel.getReceiveSetter().set(websocketEndpoint); channel.resumeReceives(); }); return new MappedEndpoint(MappedEndpoint.Type.WS.name(), url, MappedEndpoint.Type.WS, websocket); }
public static MappedEndpoint websocket(String url, WebsocketEndpoint websocketEndpoint, List<Interceptor> interceptors) { Objects.requireNonNull(url, Messages.INVALID_URL); Objects.requireNonNull(websocketEndpoint, Messages.INVALID_HANDLER); url = resolveUrl(url); WebSocketProtocolHandshakeHandler websocket = Handlers.websocket((exchange, channel) -> { websocketEndpoint.onConnect(exchange, channel); channel.getReceiveSetter().set(websocketEndpoint); channel.resumeReceives(); }); InterceptorHandler interceptorHandler = new InterceptorHandler(interceptors); interceptorHandler.setNext(websocket); return new MappedEndpoint(MappedEndpoint.Type.WS.name(), url, MappedEndpoint.Type.WS, interceptorHandler); }
private void initPathHandler() { this.pathHandler = new PathHandler(initRoutingHandler()); for (Route route : Router.getRoutes()) { if (RouteType.WEBSOCKET.equals(route.getRouteType())) { this.pathHandler.addExactPath(route.getUrl(), Handlers.websocket(new WebSocketHandler(route.getControllerClass()))); } else if (RouteType.RESOURCE_PATH.equals(route.getRouteType())) { this.pathHandler.addPrefixPath(route.getUrl(), getResourceHandler(route.getUrl())); } } }