This commit is contained in:
crusader 2018-04-22 20:14:05 +09:00
parent f74352ab95
commit 1c35dd6024
14 changed files with 183 additions and 183 deletions

View File

@ -4,14 +4,14 @@ import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
/**
* Web Socket frame containing binary data
* Socket frame containing binary data
*/
public class BinaryWebSocketFrame extends WebSocketFrame {
public class BinarySocketFrame extends SocketFrame {
/**
* Creates a new empty binary frame.
*/
public BinaryWebSocketFrame() {
public BinarySocketFrame() {
super(Unpooled.buffer(0));
}
@ -21,7 +21,7 @@ public class BinaryWebSocketFrame extends WebSocketFrame {
* @param binaryData
* the content of the frame.
*/
public BinaryWebSocketFrame(ByteBuf binaryData) {
public BinarySocketFrame(ByteBuf binaryData) {
super(binaryData);
}
@ -35,50 +35,50 @@ public class BinaryWebSocketFrame extends WebSocketFrame {
* @param binaryData
* the content of the frame.
*/
public BinaryWebSocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
public BinarySocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
super(finalFragment, rsv, binaryData);
}
@Override
public BinaryWebSocketFrame copy() {
return (BinaryWebSocketFrame) super.copy();
public BinarySocketFrame copy() {
return (BinarySocketFrame) super.copy();
}
@Override
public BinaryWebSocketFrame duplicate() {
return (BinaryWebSocketFrame) super.duplicate();
public BinarySocketFrame duplicate() {
return (BinarySocketFrame) super.duplicate();
}
@Override
public BinaryWebSocketFrame retainedDuplicate() {
return (BinaryWebSocketFrame) super.retainedDuplicate();
public BinarySocketFrame retainedDuplicate() {
return (BinarySocketFrame) super.retainedDuplicate();
}
@Override
public BinaryWebSocketFrame replace(ByteBuf content) {
return new BinaryWebSocketFrame(isFinalFragment(), rsv(), content);
public BinarySocketFrame replace(ByteBuf content) {
return new BinarySocketFrame(isFinalFragment(), rsv(), content);
}
@Override
public BinaryWebSocketFrame retain() {
public BinarySocketFrame retain() {
super.retain();
return this;
}
@Override
public BinaryWebSocketFrame retain(int increment) {
public BinarySocketFrame retain(int increment) {
super.retain(increment);
return this;
}
@Override
public BinaryWebSocketFrame touch() {
public BinarySocketFrame touch() {
super.touch();
return this;
}
@Override
public BinaryWebSocketFrame touch(Object hint) {
public BinarySocketFrame touch(Object hint) {
super.touch(hint);
return this;
}

View File

@ -6,14 +6,14 @@ import io.netty.util.CharsetUtil;
import io.netty.util.internal.StringUtil;
/**
* Web Socket Frame for closing the connection
* Socket Frame for closing the connection
*/
public class CloseWebSocketFrame extends WebSocketFrame {
public class CloseSocketFrame extends SocketFrame {
/**
* Creates a new empty close frame.
*/
public CloseWebSocketFrame() {
public CloseSocketFrame() {
super(Unpooled.buffer(0));
}
@ -26,7 +26,7 @@ public class CloseWebSocketFrame extends WebSocketFrame {
* @param reasonText
* Reason text. Set to null if no text.
*/
public CloseWebSocketFrame(int statusCode, String reasonText) {
public CloseSocketFrame(int statusCode, String reasonText) {
this(true, 0, statusCode, reasonText);
}
@ -38,7 +38,7 @@ public class CloseWebSocketFrame extends WebSocketFrame {
* @param rsv
* reserved bits used for protocol extensions
*/
public CloseWebSocketFrame(boolean finalFragment, int rsv) {
public CloseSocketFrame(boolean finalFragment, int rsv) {
this(finalFragment, rsv, Unpooled.buffer(0));
}
@ -55,7 +55,7 @@ public class CloseWebSocketFrame extends WebSocketFrame {
* @param reasonText
* Reason text. Set to null if no text.
*/
public CloseWebSocketFrame(boolean finalFragment, int rsv, int statusCode, String reasonText) {
public CloseSocketFrame(boolean finalFragment, int rsv, int statusCode, String reasonText) {
super(finalFragment, rsv, newBinaryData(statusCode, reasonText));
}
@ -84,7 +84,7 @@ public class CloseWebSocketFrame extends WebSocketFrame {
* @param binaryData
* the content of the frame. Must be 2 byte integer followed by optional UTF-8 encoded string.
*/
public CloseWebSocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
public CloseSocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
super(finalFragment, rsv, binaryData);
}
@ -123,45 +123,45 @@ public class CloseWebSocketFrame extends WebSocketFrame {
}
@Override
public CloseWebSocketFrame copy() {
return (CloseWebSocketFrame) super.copy();
public CloseSocketFrame copy() {
return (CloseSocketFrame) super.copy();
}
@Override
public CloseWebSocketFrame duplicate() {
return (CloseWebSocketFrame) super.duplicate();
public CloseSocketFrame duplicate() {
return (CloseSocketFrame) super.duplicate();
}
@Override
public CloseWebSocketFrame retainedDuplicate() {
return (CloseWebSocketFrame) super.retainedDuplicate();
public CloseSocketFrame retainedDuplicate() {
return (CloseSocketFrame) super.retainedDuplicate();
}
@Override
public CloseWebSocketFrame replace(ByteBuf content) {
return new CloseWebSocketFrame(isFinalFragment(), rsv(), content);
public CloseSocketFrame replace(ByteBuf content) {
return new CloseSocketFrame(isFinalFragment(), rsv(), content);
}
@Override
public CloseWebSocketFrame retain() {
public CloseSocketFrame retain() {
super.retain();
return this;
}
@Override
public CloseWebSocketFrame retain(int increment) {
public CloseSocketFrame retain(int increment) {
super.retain(increment);
return this;
}
@Override
public CloseWebSocketFrame touch() {
public CloseSocketFrame touch() {
super.touch();
return this;
}
@Override
public CloseWebSocketFrame touch(Object hint) {
public CloseSocketFrame touch(Object hint) {
super.touch(hint);
return this;
}

View File

@ -5,15 +5,15 @@ import io.netty.buffer.Unpooled;
import io.netty.util.CharsetUtil;
/**
* Web Socket continuation frame containing continuation text or binary data. This is used for
* Socket continuation frame containing continuation text or binary data. This is used for
* fragmented messages where the contents of a messages is contained more than 1 frame.
*/
public class ContinuationWebSocketFrame extends WebSocketFrame {
public class ContinuationSocketFrame extends SocketFrame {
/**
* Creates a new empty continuation frame.
*/
public ContinuationWebSocketFrame() {
public ContinuationSocketFrame() {
this(Unpooled.buffer(0));
}
@ -23,7 +23,7 @@ public class ContinuationWebSocketFrame extends WebSocketFrame {
*
* @param binaryData the content of the frame.
*/
public ContinuationWebSocketFrame(ByteBuf binaryData) {
public ContinuationSocketFrame(ByteBuf binaryData) {
super(binaryData);
}
@ -37,7 +37,7 @@ public class ContinuationWebSocketFrame extends WebSocketFrame {
* @param binaryData
* the content of the frame.
*/
public ContinuationWebSocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
public ContinuationSocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
super(finalFragment, rsv, binaryData);
}
@ -51,7 +51,7 @@ public class ContinuationWebSocketFrame extends WebSocketFrame {
* @param text
* text content of the frame.
*/
public ContinuationWebSocketFrame(boolean finalFragment, int rsv, String text) {
public ContinuationSocketFrame(boolean finalFragment, int rsv, String text) {
this(finalFragment, rsv, fromText(text));
}
@ -77,45 +77,45 @@ public class ContinuationWebSocketFrame extends WebSocketFrame {
}
@Override
public ContinuationWebSocketFrame copy() {
return (ContinuationWebSocketFrame) super.copy();
public ContinuationSocketFrame copy() {
return (ContinuationSocketFrame) super.copy();
}
@Override
public ContinuationWebSocketFrame duplicate() {
return (ContinuationWebSocketFrame) super.duplicate();
public ContinuationSocketFrame duplicate() {
return (ContinuationSocketFrame) super.duplicate();
}
@Override
public ContinuationWebSocketFrame retainedDuplicate() {
return (ContinuationWebSocketFrame) super.retainedDuplicate();
public ContinuationSocketFrame retainedDuplicate() {
return (ContinuationSocketFrame) super.retainedDuplicate();
}
@Override
public ContinuationWebSocketFrame replace(ByteBuf content) {
return new ContinuationWebSocketFrame(isFinalFragment(), rsv(), content);
public ContinuationSocketFrame replace(ByteBuf content) {
return new ContinuationSocketFrame(isFinalFragment(), rsv(), content);
}
@Override
public ContinuationWebSocketFrame retain() {
public ContinuationSocketFrame retain() {
super.retain();
return this;
}
@Override
public ContinuationWebSocketFrame retain(int increment) {
public ContinuationSocketFrame retain(int increment) {
super.retain(increment);
return this;
}
@Override
public ContinuationWebSocketFrame touch() {
public ContinuationSocketFrame touch() {
super.touch();
return this;
}
@Override
public ContinuationWebSocketFrame touch(Object hint) {
public ContinuationSocketFrame touch(Object hint) {
super.touch(hint);
return this;
}

View File

@ -4,14 +4,14 @@ import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
/**
* Web Socket frame containing binary data
* Socket frame containing binary data
*/
public class PingWebSocketFrame extends WebSocketFrame {
public class PingSocketFrame extends SocketFrame {
/**
* Creates a new empty ping frame.
*/
public PingWebSocketFrame() {
public PingSocketFrame() {
super(true, 0, Unpooled.buffer(0));
}
@ -21,7 +21,7 @@ public class PingWebSocketFrame extends WebSocketFrame {
* @param binaryData
* the content of the frame.
*/
public PingWebSocketFrame(ByteBuf binaryData) {
public PingSocketFrame(ByteBuf binaryData) {
super(binaryData);
}
@ -35,50 +35,50 @@ public class PingWebSocketFrame extends WebSocketFrame {
* @param binaryData
* the content of the frame.
*/
public PingWebSocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
public PingSocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
super(finalFragment, rsv, binaryData);
}
@Override
public PingWebSocketFrame copy() {
return (PingWebSocketFrame) super.copy();
public PingSocketFrame copy() {
return (PingSocketFrame) super.copy();
}
@Override
public PingWebSocketFrame duplicate() {
return (PingWebSocketFrame) super.duplicate();
public PingSocketFrame duplicate() {
return (PingSocketFrame) super.duplicate();
}
@Override
public PingWebSocketFrame retainedDuplicate() {
return (PingWebSocketFrame) super.retainedDuplicate();
public PingSocketFrame retainedDuplicate() {
return (PingSocketFrame) super.retainedDuplicate();
}
@Override
public PingWebSocketFrame replace(ByteBuf content) {
return new PingWebSocketFrame(isFinalFragment(), rsv(), content);
public PingSocketFrame replace(ByteBuf content) {
return new PingSocketFrame(isFinalFragment(), rsv(), content);
}
@Override
public PingWebSocketFrame retain() {
public PingSocketFrame retain() {
super.retain();
return this;
}
@Override
public PingWebSocketFrame retain(int increment) {
public PingSocketFrame retain(int increment) {
super.retain(increment);
return this;
}
@Override
public PingWebSocketFrame touch() {
public PingSocketFrame touch() {
super.touch();
return this;
}
@Override
public PingWebSocketFrame touch(Object hint) {
public PingSocketFrame touch(Object hint) {
super.touch(hint);
return this;
}

View File

@ -4,14 +4,14 @@ import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
/**
* Web Socket frame containing binary data
* Socket frame containing binary data
*/
public class PongWebSocketFrame extends WebSocketFrame {
public class PongSocketFrame extends SocketFrame {
/**
* Creates a new empty pong frame.
*/
public PongWebSocketFrame() {
public PongSocketFrame() {
super(Unpooled.buffer(0));
}
@ -21,7 +21,7 @@ public class PongWebSocketFrame extends WebSocketFrame {
* @param binaryData
* the content of the frame.
*/
public PongWebSocketFrame(ByteBuf binaryData) {
public PongSocketFrame(ByteBuf binaryData) {
super(binaryData);
}
@ -35,50 +35,50 @@ public class PongWebSocketFrame extends WebSocketFrame {
* @param binaryData
* the content of the frame.
*/
public PongWebSocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
public PongSocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
super(finalFragment, rsv, binaryData);
}
@Override
public PongWebSocketFrame copy() {
return (PongWebSocketFrame) super.copy();
public PongSocketFrame copy() {
return (PongSocketFrame) super.copy();
}
@Override
public PongWebSocketFrame duplicate() {
return (PongWebSocketFrame) super.duplicate();
public PongSocketFrame duplicate() {
return (PongSocketFrame) super.duplicate();
}
@Override
public PongWebSocketFrame retainedDuplicate() {
return (PongWebSocketFrame) super.retainedDuplicate();
public PongSocketFrame retainedDuplicate() {
return (PongSocketFrame) super.retainedDuplicate();
}
@Override
public PongWebSocketFrame replace(ByteBuf content) {
return new PongWebSocketFrame(isFinalFragment(), rsv(), content);
public PongSocketFrame replace(ByteBuf content) {
return new PongSocketFrame(isFinalFragment(), rsv(), content);
}
@Override
public PongWebSocketFrame retain() {
public PongSocketFrame retain() {
super.retain();
return this;
}
@Override
public PongWebSocketFrame retain(int increment) {
public PongSocketFrame retain(int increment) {
super.retain(increment);
return this;
}
@Override
public PongWebSocketFrame touch() {
public PongSocketFrame touch() {
super.touch();
return this;
}
@Override
public PongWebSocketFrame touch(Object hint) {
public PongSocketFrame touch(Object hint) {
super.touch(hint);
return this;
}

View File

@ -15,16 +15,16 @@ import io.netty.util.internal.logging.InternalLogger;
import io.netty.util.internal.logging.InternalLoggerFactory;
/**
* Decodes a web socket frame from wire protocol version 8 format. This code was forked from <a
* Decodes a socket frame from wire protocol version 8 format. This code was forked from <a
* href="https://github.com/joewalnes/webbit">webbit</a> and modified.
*/
public class WebSocket13FrameDecoder extends ByteToMessageDecoder implements WebSocketFrameDecoder {
public class Socket13FrameDecoder extends ByteToMessageDecoder implements SocketFrameDecoder {
enum State {
READING_FIRST, READING_SECOND, READING_SIZE, MASKING_KEY, PAYLOAD, CORRUPT
}
private static final InternalLogger logger = InternalLoggerFactory.getInstance(WebSocket13FrameDecoder.class);
private static final InternalLogger logger = InternalLoggerFactory.getInstance(Socket13FrameDecoder.class);
private static final byte OPCODE_CONT = 0x0;
private static final byte OPCODE_TEXT = 0x1;
@ -52,7 +52,7 @@ public class WebSocket13FrameDecoder extends ByteToMessageDecoder implements Web
* Constructor
*
* @param expectMaskedFrames
* Web socket servers must set this to true processed incoming masked payload. Client implementations
* Socket servers must set this to true processed incoming masked payload. Client implementations
* must set this to false.
* @param allowExtensions
* Flag to allow reserved extension bits to be used or not
@ -60,7 +60,7 @@ public class WebSocket13FrameDecoder extends ByteToMessageDecoder implements Web
* Maximum length of a frame's payload. Setting this to an appropriate value for you application
* helps check for denial of services attacks.
*/
public WebSocket13FrameDecoder(boolean expectMaskedFrames, boolean allowExtensions, int maxFramePayloadLength) {
public Socket13FrameDecoder(boolean expectMaskedFrames, boolean allowExtensions, int maxFramePayloadLength) {
this(expectMaskedFrames, allowExtensions, maxFramePayloadLength, false);
}
@ -68,7 +68,7 @@ public class WebSocket13FrameDecoder extends ByteToMessageDecoder implements Web
* Constructor
*
* @param expectMaskedFrames
* Web socket servers must set this to true processed incoming masked payload. Client implementations
* Socket servers must set this to true processed incoming masked payload. Client implementations
* must set this to false.
* @param allowExtensions
* Flag to allow reserved extension bits to be used or not
@ -79,7 +79,7 @@ public class WebSocket13FrameDecoder extends ByteToMessageDecoder implements Web
* When set to true, frames which are not masked properly according to the standard will still be
* accepted.
*/
public WebSocket13FrameDecoder(boolean expectMaskedFrames, boolean allowExtensions, int maxFramePayloadLength,
public Socket13FrameDecoder(boolean expectMaskedFrames, boolean allowExtensions, int maxFramePayloadLength,
boolean allowMaskMismatch) {
this.expectMaskedFrames = expectMaskedFrames;
this.allowMaskMismatch = allowMaskMismatch;
@ -104,7 +104,7 @@ public class WebSocket13FrameDecoder extends ByteToMessageDecoder implements Web
frameOpcode = b & 0x0F;
if (logger.isDebugEnabled()) {
logger.debug("Decoding WebSocket Frame opCode={}", frameOpcode);
logger.debug("Decoding Socket Frame opCode={}", frameOpcode);
}
state = State.READING_SECOND;
@ -209,7 +209,7 @@ public class WebSocket13FrameDecoder extends ByteToMessageDecoder implements Web
}
if (logger.isDebugEnabled()) {
logger.debug("Decoding WebSocket Frame length={}", framePayloadLength);
logger.debug("Decoding Socket Frame length={}", framePayloadLength);
}
state = State.MASKING_KEY;
@ -245,18 +245,18 @@ public class WebSocket13FrameDecoder extends ByteToMessageDecoder implements Web
// Processing ping/pong/close frames because they cannot be
// fragmented
if (frameOpcode == OPCODE_PING) {
out.add(new PingWebSocketFrame(frameFinalFlag, frameRsv, payloadBuffer));
out.add(new PingSocketFrame(frameFinalFlag, frameRsv, payloadBuffer));
payloadBuffer = null;
return;
}
if (frameOpcode == OPCODE_PONG) {
out.add(new PongWebSocketFrame(frameFinalFlag, frameRsv, payloadBuffer));
out.add(new PongSocketFrame(frameFinalFlag, frameRsv, payloadBuffer));
payloadBuffer = null;
return;
}
if (frameOpcode == OPCODE_CLOSE) {
checkCloseFrameBody(ctx, payloadBuffer);
out.add(new CloseWebSocketFrame(frameFinalFlag, frameRsv, payloadBuffer));
out.add(new CloseSocketFrame(frameFinalFlag, frameRsv, payloadBuffer));
payloadBuffer = null;
return;
}
@ -276,19 +276,19 @@ public class WebSocket13FrameDecoder extends ByteToMessageDecoder implements Web
// Return the frame
if (frameOpcode == OPCODE_TEXT) {
out.add(new TextWebSocketFrame(frameFinalFlag, frameRsv, payloadBuffer));
out.add(new TextSocketFrame(frameFinalFlag, frameRsv, payloadBuffer));
payloadBuffer = null;
return;
} else if (frameOpcode == OPCODE_BINARY) {
out.add(new BinaryWebSocketFrame(frameFinalFlag, frameRsv, payloadBuffer));
out.add(new BinarySocketFrame(frameFinalFlag, frameRsv, payloadBuffer));
payloadBuffer = null;
return;
} else if (frameOpcode == OPCODE_CONT) {
out.add(new ContinuationWebSocketFrame(frameFinalFlag, frameRsv, payloadBuffer));
out.add(new ContinuationSocketFrame(frameFinalFlag, frameRsv, payloadBuffer));
payloadBuffer = null;
return;
} else {
throw new UnsupportedOperationException("Cannot decode web socket frame with opcode: " + frameOpcode);
throw new UnsupportedOperationException("Cannot decode socket frame with opcode: " + frameOpcode);
}
} finally {
if (payloadBuffer != null) {
@ -340,7 +340,7 @@ public class WebSocket13FrameDecoder extends ByteToMessageDecoder implements Web
private void protocolViolation(ChannelHandlerContext ctx, CorruptedFrameException ex) {
state = State.CORRUPT;
if (ctx.channel().isActive()) {
Object closeMessage = new CloseWebSocketFrame(1002, null);
Object closeMessage = new CloseSocketFrame(1002, null);
ctx.writeAndFlush(closeMessage).addListener(ChannelFutureListener.CLOSE);
}
throw ex;

View File

@ -13,13 +13,13 @@ import java.util.List;
/**
* <p>
* Encodes a web socket frame into wire protocol version 8 format. This code was forked from <a
* Encodes a socket frame into wire protocol version 8 format. This code was forked from <a
* href="https://github.com/joewalnes/webbit">webbit</a> and modified.
* </p>
*/
public class WebSocket13FrameEncoder extends MessageToMessageEncoder<WebSocketFrame> implements WebSocketFrameEncoder {
public class Socket13FrameEncoder extends MessageToMessageEncoder<SocketFrame> implements SocketFrameEncoder {
private static final InternalLogger logger = InternalLoggerFactory.getInstance(WebSocket13FrameEncoder.class);
private static final InternalLogger logger = InternalLoggerFactory.getInstance(Socket13FrameEncoder.class);
private static final byte OPCODE_CONT = 0x0;
private static final byte OPCODE_TEXT = 0x1;
@ -42,30 +42,30 @@ public class WebSocket13FrameEncoder extends MessageToMessageEncoder<WebSocketFr
* Constructor
*
* @param maskPayload
* Web socket clients must set this to true to mask payload. Server implementations must set this to
* Socket clients must set this to true to mask payload. Server implementations must set this to
* false.
*/
public WebSocket13FrameEncoder(boolean maskPayload) {
public Socket13FrameEncoder(boolean maskPayload) {
this.maskPayload = maskPayload;
}
@Override
protected void encode(ChannelHandlerContext ctx, WebSocketFrame msg, List<Object> out) throws Exception {
protected void encode(ChannelHandlerContext ctx, SocketFrame msg, List<Object> out) throws Exception {
final ByteBuf data = msg.content();
byte[] mask;
byte opcode;
if (msg instanceof TextWebSocketFrame) {
if (msg instanceof TextSocketFrame) {
opcode = OPCODE_TEXT;
} else if (msg instanceof PingWebSocketFrame) {
} else if (msg instanceof PingSocketFrame) {
opcode = OPCODE_PING;
} else if (msg instanceof PongWebSocketFrame) {
} else if (msg instanceof PongSocketFrame) {
opcode = OPCODE_PONG;
} else if (msg instanceof CloseWebSocketFrame) {
} else if (msg instanceof CloseSocketFrame) {
opcode = OPCODE_CLOSE;
} else if (msg instanceof BinaryWebSocketFrame) {
} else if (msg instanceof BinarySocketFrame) {
opcode = OPCODE_BINARY;
} else if (msg instanceof ContinuationWebSocketFrame) {
} else if (msg instanceof ContinuationSocketFrame) {
opcode = OPCODE_CONT;
} else {
throw new UnsupportedOperationException("Cannot encode frame of type: " + msg.getClass().getName());
@ -74,7 +74,7 @@ public class WebSocket13FrameEncoder extends MessageToMessageEncoder<WebSocketFr
int length = data.readableBytes();
if (logger.isDebugEnabled()) {
logger.debug("Encoding WebSocket Frame opCode=" + opcode + " length=" + length);
logger.debug("Encoding Socket Frame opCode=" + opcode + " length=" + length);
}
int b0 = 0;

View File

@ -5,9 +5,9 @@ import io.netty.buffer.DefaultByteBufHolder;
import io.netty.util.internal.StringUtil;
/**
* Base class for web socket frames
* Base class for socket frames
*/
public abstract class WebSocketFrame extends DefaultByteBufHolder {
public abstract class SocketFrame extends DefaultByteBufHolder {
/**
* Flag to indicate if this frame is the final fragment in a message. The first fragment (frame) may also be the
@ -20,11 +20,11 @@ public abstract class WebSocketFrame extends DefaultByteBufHolder {
*/
private final int rsv;
protected WebSocketFrame(ByteBuf binaryData) {
protected SocketFrame(ByteBuf binaryData) {
this(true, 0, binaryData);
}
protected WebSocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
protected SocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
super(binaryData);
this.finalFragment = finalFragment;
this.rsv = rsv;
@ -46,22 +46,22 @@ public abstract class WebSocketFrame extends DefaultByteBufHolder {
}
@Override
public WebSocketFrame copy() {
return (WebSocketFrame) super.copy();
public SocketFrame copy() {
return (SocketFrame) super.copy();
}
@Override
public WebSocketFrame duplicate() {
return (WebSocketFrame) super.duplicate();
public SocketFrame duplicate() {
return (SocketFrame) super.duplicate();
}
@Override
public WebSocketFrame retainedDuplicate() {
return (WebSocketFrame) super.retainedDuplicate();
public SocketFrame retainedDuplicate() {
return (SocketFrame) super.retainedDuplicate();
}
@Override
public abstract WebSocketFrame replace(ByteBuf content);
public abstract SocketFrame replace(ByteBuf content);
@Override
public String toString() {
@ -69,25 +69,25 @@ public abstract class WebSocketFrame extends DefaultByteBufHolder {
}
@Override
public WebSocketFrame retain() {
public SocketFrame retain() {
super.retain();
return this;
}
@Override
public WebSocketFrame retain(int increment) {
public SocketFrame retain(int increment) {
super.retain(increment);
return this;
}
@Override
public WebSocketFrame touch() {
public SocketFrame touch() {
super.touch();
return this;
}
@Override
public WebSocketFrame touch(Object hint) {
public SocketFrame touch(Object hint) {
super.touch(hint);
return this;
}

View File

@ -4,9 +4,9 @@ import io.netty.channel.ChannelInboundHandler;
import io.netty.channel.ChannelPipeline;
/**
* Marker interface which all WebSocketFrame decoders need to implement.
* Marker interface which all SocketFrame decoders need to implement.
*
* This makes it easier to access the added encoder later in the {@link ChannelPipeline}.
*/
public interface WebSocketFrameDecoder extends ChannelInboundHandler {
public interface SocketFrameDecoder extends ChannelInboundHandler {
}

View File

@ -4,9 +4,9 @@ import io.netty.channel.ChannelOutboundHandler;
import io.netty.channel.ChannelPipeline;
/**
* Marker interface which all WebSocketFrame encoders need to implement.
* Marker interface which all SocketFrame encoders need to implement.
*
* This makes it easier to access the added encoder later in the {@link ChannelPipeline}.
*/
public interface WebSocketFrameEncoder extends ChannelOutboundHandler {
public interface SocketFrameEncoder extends ChannelOutboundHandler {
}

View File

@ -5,15 +5,15 @@ import io.netty.handler.codec.MessageToMessageDecoder;
import java.util.List;
abstract class WebSocketProtocolHandler extends MessageToMessageDecoder<WebSocketFrame> {
abstract class SocketProtocolHandler extends MessageToMessageDecoder<SocketFrame> {
@Override
protected void decode(ChannelHandlerContext ctx, WebSocketFrame frame, List<Object> out) throws Exception {
if (frame instanceof PingWebSocketFrame) {
protected void decode(ChannelHandlerContext ctx, SocketFrame frame, List<Object> out) throws Exception {
if (frame instanceof PingSocketFrame) {
frame.content().retain();
ctx.channel().writeAndFlush(new PongWebSocketFrame(frame.content()));
ctx.channel().writeAndFlush(new PongSocketFrame(frame.content()));
return;
}
if (frame instanceof PongWebSocketFrame) {
if (frame instanceof PongSocketFrame) {
// Pong frames need to get ignored
return;
}

View File

@ -9,37 +9,37 @@ import io.netty.channel.ChannelPipeline;
import java.util.List;
/**
* This handler does all the heavy lifting for you to run a websocket server.
* This handler does all the heavy lifting for you to run a socket server.
*
* It takes care of websocket handshaking as well as processing of control frames (Close, Ping, Pong). Text and Binary
* It takes care of socket handshaking as well as processing of control frames (Close, Ping, Pong). Text and Binary
* data frames are passed to the next handler in the pipeline (implemented by you) for processing.
*
* See <tt>io.netty.example.http.websocketx.html5.WebSocketServer</tt> for usage.
* See <tt>io.netty.example.http.websocketx.html5.SocketServer</tt> for usage.
*
* The implementation of this handler assumes that you just want to run a websocket server and not process other types
* HTTP requests (like GET and POST). If you wish to support both HTTP requests and websockets in the one server, refer
* to the <tt>io.netty.example.http.websocketx.server.WebSocketServer</tt> example.
* The implementation of this handler assumes that you just want to run a socket server and not process other types
* HTTP requests (like GET and POST). If you wish to support both HTTP requests and sockets in the one server, refer
* to the <tt>io.netty.example.http.websocketx.server.SocketServer</tt> example.
*
* To know once a handshake was done you can intercept the
* {@link ChannelInboundHandler#userEventTriggered(ChannelHandlerContext, Object)} and check if the event was instance
* of {@link HandshakeComplete}, the event will contain extra information about the handshake such as the request and
* selected subprotocol.
*/
public class WebSocketServerProtocolHandler extends WebSocketProtocolHandler {
public class SocketServerProtocolHandler extends SocketProtocolHandler {
private final boolean allowExtensions;
private final int maxFramePayloadLength;
private final boolean allowMaskMismatch;
public WebSocketServerProtocolHandler(boolean allowExtensions) {
public SocketServerProtocolHandler(boolean allowExtensions) {
this(allowExtensions, 65536);
}
public WebSocketServerProtocolHandler(boolean allowExtensions, int maxFrameSize) {
public SocketServerProtocolHandler(boolean allowExtensions, int maxFrameSize) {
this(allowExtensions, maxFrameSize, false);
}
public WebSocketServerProtocolHandler(boolean allowExtensions, int maxFrameSize, boolean allowMaskMismatch) {
public SocketServerProtocolHandler(boolean allowExtensions, int maxFrameSize, boolean allowMaskMismatch) {
this.allowExtensions = allowExtensions;
maxFramePayloadLength = maxFrameSize;
this.allowMaskMismatch = allowMaskMismatch;
@ -49,12 +49,12 @@ public class WebSocketServerProtocolHandler extends WebSocketProtocolHandler {
public void handlerAdded(ChannelHandlerContext ctx) {
ChannelPipeline cp = ctx.pipeline();
WebSocketFrameDecoder decoder = new WebSocket13FrameDecoder(true, allowExtensions, maxFramePayloadLength,
SocketFrameDecoder decoder = new Socket13FrameDecoder(true, allowExtensions, maxFramePayloadLength,
allowMaskMismatch);
WebSocketFrameEncoder encoder = new WebSocket13FrameEncoder(false);
SocketFrameEncoder encoder = new Socket13FrameEncoder(false);
cp.addBefore(ctx.name(), WebSocketFrameDecoder.class.getName(), decoder);
cp.addBefore(ctx.name(), WebSocketFrameEncoder.class.getName(), encoder);
cp.addBefore(ctx.name(), SocketFrameDecoder.class.getName(), decoder);
cp.addBefore(ctx.name(), SocketFrameEncoder.class.getName(), encoder);
if (cp.get(Utf8FrameValidator.class) == null) {
// Add the UFT8 checking before this one.
@ -63,8 +63,8 @@ public class WebSocketServerProtocolHandler extends WebSocketProtocolHandler {
}
@Override
protected void decode(ChannelHandlerContext ctx, WebSocketFrame frame, List<Object> out) throws Exception {
if (frame instanceof CloseWebSocketFrame) {
protected void decode(ChannelHandlerContext ctx, SocketFrame frame, List<Object> out) throws Exception {
if (frame instanceof CloseSocketFrame) {
ctx.writeAndFlush(Unpooled.EMPTY_BUFFER).addListener(ChannelFutureListener.CLOSE);
return;
}

View File

@ -5,14 +5,14 @@ import io.netty.buffer.Unpooled;
import io.netty.util.CharsetUtil;
/**
* Web Socket text frame
* Socket text frame
*/
public class TextWebSocketFrame extends WebSocketFrame {
public class TextSocketFrame extends SocketFrame {
/**
* Creates a new empty text frame.
*/
public TextWebSocketFrame() {
public TextSocketFrame() {
super(Unpooled.buffer(0));
}
@ -22,7 +22,7 @@ public class TextWebSocketFrame extends WebSocketFrame {
* @param text
* String to put in the frame
*/
public TextWebSocketFrame(String text) {
public TextSocketFrame(String text) {
super(fromText(text));
}
@ -32,7 +32,7 @@ public class TextWebSocketFrame extends WebSocketFrame {
* @param binaryData
* the content of the frame.
*/
public TextWebSocketFrame(ByteBuf binaryData) {
public TextSocketFrame(ByteBuf binaryData) {
super(binaryData);
}
@ -46,7 +46,7 @@ public class TextWebSocketFrame extends WebSocketFrame {
* @param text
* String to put in the frame
*/
public TextWebSocketFrame(boolean finalFragment, int rsv, String text) {
public TextSocketFrame(boolean finalFragment, int rsv, String text) {
super(finalFragment, rsv, fromText(text));
}
@ -68,7 +68,7 @@ public class TextWebSocketFrame extends WebSocketFrame {
* @param binaryData
* the content of the frame.
*/
public TextWebSocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
public TextSocketFrame(boolean finalFragment, int rsv, ByteBuf binaryData) {
super(finalFragment, rsv, binaryData);
}
@ -80,45 +80,45 @@ public class TextWebSocketFrame extends WebSocketFrame {
}
@Override
public TextWebSocketFrame copy() {
return (TextWebSocketFrame) super.copy();
public TextSocketFrame copy() {
return (TextSocketFrame) super.copy();
}
@Override
public TextWebSocketFrame duplicate() {
return (TextWebSocketFrame) super.duplicate();
public TextSocketFrame duplicate() {
return (TextSocketFrame) super.duplicate();
}
@Override
public TextWebSocketFrame retainedDuplicate() {
return (TextWebSocketFrame) super.retainedDuplicate();
public TextSocketFrame retainedDuplicate() {
return (TextSocketFrame) super.retainedDuplicate();
}
@Override
public TextWebSocketFrame replace(ByteBuf content) {
return new TextWebSocketFrame(isFinalFragment(), rsv(), content);
public TextSocketFrame replace(ByteBuf content) {
return new TextSocketFrame(isFinalFragment(), rsv(), content);
}
@Override
public TextWebSocketFrame retain() {
public TextSocketFrame retain() {
super.retain();
return this;
}
@Override
public TextWebSocketFrame retain(int increment) {
public TextSocketFrame retain(int increment) {
super.retain(increment);
return this;
}
@Override
public TextWebSocketFrame touch() {
public TextSocketFrame touch() {
super.touch();
return this;
}
@Override
public TextWebSocketFrame touch(Object hint) {
public TextSocketFrame touch(Object hint) {
super.touch(hint);
return this;
}

View File

@ -17,19 +17,19 @@ public class Utf8FrameValidator extends ChannelInboundHandlerAdapter {
@Override
public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
if (msg instanceof WebSocketFrame) {
WebSocketFrame frame = (WebSocketFrame) msg;
if (msg instanceof SocketFrame) {
SocketFrame frame = (SocketFrame) msg;
// Processing for possible fragmented messages for text and binary
// frames
if (((WebSocketFrame) msg).isFinalFragment()) {
if (((SocketFrame) msg).isFinalFragment()) {
// Final frame of the sequence. Apparently ping frames are
// allowed in the middle of a fragmented message
if (!(frame instanceof PingWebSocketFrame)) {
if (!(frame instanceof PingSocketFrame)) {
fragmentedFramesCount = 0;
// Check text for UTF8 correctness
if ((frame instanceof TextWebSocketFrame) || (utf8Validator != null && utf8Validator.isChecking())) {
if ((frame instanceof TextSocketFrame) || (utf8Validator != null && utf8Validator.isChecking())) {
// Check UTF-8 correctness for this payload
checkUTF8String(ctx, frame.content());
@ -43,7 +43,7 @@ public class Utf8FrameValidator extends ChannelInboundHandlerAdapter {
// fragmented sequence
if (fragmentedFramesCount == 0) {
// First text or binary frame for a fragmented set
if (frame instanceof TextWebSocketFrame) {
if (frame instanceof TextSocketFrame) {
checkUTF8String(ctx, frame.content());
}
} else {