@Override public S frameHandler(Handler<WebSocketFrame> handler) { synchronized (conn) { checkClosed(); this.frameHandler = (Handler)handler; return (S) this; } }
@Override public S drainHandler(Handler<Void> handler) { synchronized (conn) { checkClosed(); this.drainHandler = handler; return (S) this; } }
@Override public WebSocketBase pongHandler(Handler<Buffer> handler) { synchronized (conn) { checkClosed(); this.pongHandler = handler; return (S) this; } }
@Override public S endHandler(Handler<Void> handler) { synchronized (conn) { if (handler != null) { checkClosed(); } this.endHandler = handler; return (S) this; } }
@Override public S exceptionHandler(Handler<Throwable> handler) { synchronized (conn) { if (handler != null) { checkClosed(); } this.exceptionHandler = handler; return (S) this; } }
@Override public S closeHandler(Handler<Void> handler) { synchronized (conn) { checkClosed(); this.closeHandler = handler; return (S) this; } }
@Override public S writeTextMessage(String text) { synchronized (conn) { checkClosed(); writeTextMessageInternal(text); return (S) this; } }
private void writeTextMessageInternal(String text) { checkClosed(); Buffer data = Buffer.buffer(text); writePartialMessage(FrameType.TEXT, data, 0); }
@Override public S binaryMessageHandler(Handler<Buffer> handler) { synchronized (conn) { checkClosed(); if (frameHandler == null || frameHandler.getClass() != FrameAggregator.class) { frameHandler = new FrameAggregator(); } ((FrameAggregator) frameHandler).binaryMessageHandler = handler; return (S) this; } }
public boolean writeQueueFull() { synchronized (conn) { checkClosed(); return conn.isNotWritable(); } }
@Override public S writeBinaryMessage(Buffer data) { synchronized (conn) { checkClosed(); writeMessageInternal(data); return (S) this; } }
@Override public WebSocketBase textMessageHandler(Handler<String> handler) { synchronized (conn) { checkClosed(); if (frameHandler == null || frameHandler.getClass() != FrameAggregator.class) { frameHandler = new FrameAggregator(); } ((FrameAggregator) frameHandler).textMessageHandler = handler; return this; } }
@Override public S handler(Handler<Buffer> handler) { synchronized (conn) { if (handler != null) { checkClosed(); } pending.handler(handler); return (S) this; } }
@Override public S setWriteQueueMaxSize(int maxSize) { synchronized (conn) { checkClosed(); conn.doSetWriteQueueMaxSize(maxSize); return (S) this; } }
private void writeMessageInternal(Buffer data) { checkClosed(); writePartialMessage(FrameType.BINARY, data, 0); }
public void close() { synchronized (conn) { checkClosed(); closed = true; unregisterHandlers(); conn.close(); } }
@Override public S write(Buffer data) { synchronized (conn) { checkClosed(); writeFrame(WebSocketFrame.binaryFrame(data, true)); return (S) this; } }
public void close(short statusCode, String reason) { synchronized (conn) { checkClosed(); closed = true; unregisterHandlers(); conn.closeWithPayload(HttpUtils.generateWSCloseFrameByteBuf(statusCode, reason)); } }
@Override public S writeFrame(WebSocketFrame frame) { synchronized (conn) { checkClosed(); conn.reportBytesWritten(((WebSocketFrameInternal)frame).length()); conn.writeToChannel(conn.encodeFrame((WebSocketFrameImpl) frame)); } return (S) this; }
@Override public S write(Buffer data) { synchronized (conn) { checkClosed(); writeFrame(WebSocketFrame.binaryFrame(data, true)); return (S) this; } }