@Override public void writeSuccess() { getSendProcessor().setReadyToSend(true); getSendProcessor().onWritePossible(); }
@Override public void writeFailed(Throwable x) { getSendProcessor().cancel(); getSendProcessor().onError(x); }
@Override public void onResult(SendResult result) { if (result.isOK()) { getSendProcessor().setReadyToSend(true); getSendProcessor().onWritePossible(); } else { getSendProcessor().cancel(); getSendProcessor().onError(result.getException()); } }
/** Handle a close callback from the WebSocketHandler adapter. */ void handleClose(CloseStatus reason) { this.receivePublisher.onAllDataRead(); WebSocketSendProcessor sendProcessor = this.sendProcessor; if (sendProcessor != null) { sendProcessor.cancel(); sendProcessor.onComplete(); } }
@Override public void complete(WebSocketChannel channel, Void context) { DataBufferUtils.release(this.payload); getSendProcessor().setReadyToSend(true); getSendProcessor().onWritePossible(); }
@Override public void onError(WebSocketChannel channel, Void context, Throwable throwable) { DataBufferUtils.release(this.payload); getSendProcessor().cancel(); getSendProcessor().onError(throwable); } }
@Override protected void onFullTextMessage(WebSocketChannel channel, BufferedTextMessage message) { this.session.handleMessage(Type.TEXT, toMessage(Type.TEXT, message.getData())); }
private Object createHandler(URI url, WebSocketHandler handler, MonoProcessor<Void> completion) { return new JettyWebSocketHandlerAdapter(handler, session -> { HandshakeInfo info = createHandshakeInfo(url, session); return new JettyWebSocketSession(session, info, this.bufferFactory, completion); }); }
@OnWebSocketMessage public void onWebSocketText(String message) { if (this.delegateSession != null) { WebSocketMessage webSocketMessage = toMessage(Type.TEXT, message); this.delegateSession.handleMessage(webSocketMessage.getType(), webSocketMessage); } }
/** * Constructor with an additional maxFramePayloadLength argument. * @since 5.1 */ public ReactorNettyWebSocketSession(WebsocketInbound inbound, WebsocketOutbound outbound, HandshakeInfo info, NettyDataBufferFactory bufferFactory, int maxFramePayloadLength) { super(new WebSocketConnection(inbound, outbound), info, bufferFactory); this.maxFramePayloadLength = maxFramePayloadLength; }
@Override public void onError(Session session, Throwable exception) { if (this.delegateSession != null) { this.delegateSession.handleError(exception); } }
@Override public NettyDataBufferFactory bufferFactory() { return (NettyDataBufferFactory) super.bufferFactory(); }
protected StandardWebSocketSession createWebSocketSession(Session session, HandshakeInfo info, MonoProcessor<Void> completion) { return new StandardWebSocketSession(session, info, this.bufferFactory, completion); }
/** Handle a message callback from the WebSocketHandler adapter. */ void handleMessage(Type type, WebSocketMessage message) { this.receivePublisher.handleMessage(message); }
@Override protected void onError(WebSocketChannel channel, Throwable error) { this.session.handleError(error); }
private UndertowWebSocketSession createSession(WebSocketChannel channel) { return new UndertowWebSocketSession(channel, this.handshakeInfo, this.bufferFactory); } }
public TomcatWebSocketSession(Session session, HandshakeInfo info, DataBufferFactory factory, MonoProcessor<Void> completionMono) { super(session, info, factory, completionMono); suspendReceiving(); }
@Override protected void onFullPongMessage(WebSocketChannel channel, BufferedBinaryMessage message) { this.session.handleMessage(Type.PONG, toMessage(Type.PONG, message.getData().getResource())); message.getData().free(); }
@Override protected void onFullBinaryMessage(WebSocketChannel channel, BufferedBinaryMessage message) { this.session.handleMessage(Type.BINARY, toMessage(Type.BINARY, message.getData().getResource())); message.getData().free(); }