static int dataLength(final ByteBuf byteBuf, final FrameType frameType, final int payloadOffset) { final int frameLength = frameLength(byteBuf); final int metadataLength = metadataFieldLength(byteBuf, frameType, frameLength); return frameLength - metadataLength - payloadOffset; }
public static int payloadLength(final ByteBuf byteBuf) { final int frameLength = frameLength(byteBuf); final int payloadOffset = payloadOffset(byteBuf); return frameLength - payloadOffset; }
public static @Nullable ByteBuf sliceFrameMetadata(final ByteBuf byteBuf) { final FrameType frameType = frameType(byteBuf); final int frameLength = frameLength(byteBuf); final @Nullable Integer metadataLength = metadataLength(byteBuf, frameType, frameLength); if (metadataLength == null) { return null; } int metadataOffset = metadataOffset(byteBuf); if (hasMetadataLengthField(frameType)) { metadataOffset += FRAME_LENGTH_SIZE; } ByteBuf result = Unpooled.EMPTY_BUFFER; if (0 < metadataLength) { result = byteBuf.slice(metadataOffset, metadataLength); } return result; }
public static ByteBuf sliceFrameData(final ByteBuf byteBuf) { final FrameType frameType = frameType(byteBuf); final int frameLength = frameLength(byteBuf); final int dataLength = dataLength(byteBuf, frameType); final int dataOffset = dataOffset(byteBuf, frameType, frameLength); ByteBuf result = Unpooled.EMPTY_BUFFER; if (0 < dataLength) { result = byteBuf.slice(dataOffset, dataLength); } return result; }
@Test public void headerSize() { int frameLength = 123456; FrameHeaderFlyweight.encodeFrameHeader(byteBuf, frameLength, 0, FrameType.SETUP, 0); assertEquals(frameLength, FrameHeaderFlyweight.frameLength(byteBuf)); }
@Test public void headerSizeMax() { int frameLength = FRAME_MAX_SIZE; FrameHeaderFlyweight.encodeFrameHeader(byteBuf, frameLength, 0, FrameType.SETUP, 0); assertEquals(frameLength, FrameHeaderFlyweight.frameLength(byteBuf)); }
static int dataLength(final ByteBuf byteBuf, final FrameType frameType, final int payloadOffset) { final int frameLength = frameLength(byteBuf); final int metadataLength = metadataFieldLength(byteBuf, frameType, frameLength); return frameLength - metadataLength - payloadOffset; }
public static int payloadLength(final ByteBuf byteBuf) { final int frameLength = frameLength(byteBuf); final int payloadOffset = payloadOffset(byteBuf); return frameLength - payloadOffset; }
public static ByteBuf sliceFrameData(final ByteBuf byteBuf) { final FrameType frameType = frameType(byteBuf); final int frameLength = frameLength(byteBuf); final int dataLength = dataLength(byteBuf, frameType); final int dataOffset = dataOffset(byteBuf, frameType, frameLength); ByteBuf result = Unpooled.EMPTY_BUFFER; if (0 < dataLength) { result = byteBuf.slice(dataOffset, dataLength); } return result; }
public static @Nullable ByteBuf sliceFrameMetadata(final ByteBuf byteBuf) { final FrameType frameType = frameType(byteBuf); final int frameLength = frameLength(byteBuf); final @Nullable Integer metadataLength = metadataLength(byteBuf, frameType, frameLength); if (metadataLength == null) { return null; } int metadataOffset = metadataOffset(byteBuf); if (hasMetadataLengthField(frameType)) { metadataOffset += FRAME_LENGTH_SIZE; } ByteBuf result = Unpooled.EMPTY_BUFFER; if (0 < metadataLength) { result = byteBuf.slice(metadataOffset, metadataLength); } return result; }