private void writeFrame1(WebSocketFrame frame) throws IOException { // Frames sent from a client are always masked. int b = 0x80; int len = frame.getPayloadLength(); if (len <= 125) { b |= len; } else if (len <= 65535) { b |= 126; } else { b |= 127; } write(b); }
@Override public String toString() { StringBuilder builder = new StringBuilder() .append("WebSocketFrame(FIN=").append(mFin ? "1" : "0") .append(",RSV1=").append(mRsv1 ? "1" : "0") .append(",RSV2=").append(mRsv2 ? "1" : "0") .append(",RSV3=").append(mRsv3 ? "1" : "0") .append(",Opcode=").append(Misc.toOpcodeName(mOpcode)) .append(",Length=").append(getPayloadLength()); switch (mOpcode) { case TEXT: appendPayloadText(builder); break; case BINARY: appendPayloadBinary(builder); break; case CLOSE: appendPayloadClose(builder); break; } return builder.append(")").toString(); }
if (frame.getPayloadLength() <= maxPayloadSize) if (frame.getPayloadLength() <= maxPayloadSize)
private void writeFrameExtendedPayloadLength(WebSocketFrame frame) throws IOException { int len = frame.getPayloadLength(); if (len <= 125) { return; } if (len <= 65535) { // 2-byte in network byte order. write((len >> 8) & 0xFF); write((len ) & 0xFF); return; } // In this implementation, the maximum payload length is (2^31 - 1). // So, the first 4 bytes are 0. write(0); write(0); write(0); write(0); write((len >> 24) & 0xFF); write((len >> 16) & 0xFF); write((len >> 8) & 0xFF); write((len ) & 0xFF); }
private void writeFrame1(WebSocketFrame frame) throws IOException { // Frames sent from a client are always masked. int b = 0x80; int len = frame.getPayloadLength(); if (len <= 125) { b |= len; } else if (len <= 65535) { b |= 126; } else { b |= 127; } write(b); }
@Override public String toString() { StringBuilder builder = new StringBuilder() .append("WebSocketFrame(FIN=").append(mFin ? "1" : "0") .append(",RSV1=").append(mRsv1 ? "1" : "0") .append(",RSV2=").append(mRsv2 ? "1" : "0") .append(",RSV3=").append(mRsv3 ? "1" : "0") .append(",Opcode=").append(Misc.toOpcodeName(mOpcode)) .append(",Length=").append(getPayloadLength()); switch (mOpcode) { case TEXT: appendPayloadText(builder); break; case BINARY: appendPayloadBinary(builder); break; case CLOSE: appendPayloadClose(builder); break; } return builder.append(")").toString(); }
if (frame.getPayloadLength() <= maxPayloadSize) if (frame.getPayloadLength() <= maxPayloadSize)
private void writeFrameExtendedPayloadLength(WebSocketFrame frame) throws IOException { int len = frame.getPayloadLength(); if (len <= 125) { return; } if (len <= 65535) { // 2-byte in network byte order. write((len >> 8) & 0xFF); write((len ) & 0xFF); return; } // In this implementation, the maximum payload length is (2^31 - 1). // So, the first 4 bytes are 0. write(0); write(0); write(0); write(0); write((len >> 24) & 0xFF); write((len >> 16) & 0xFF); write((len >> 8) & 0xFF); write((len ) & 0xFF); }