@Override public ByteBuf readRetainedSlice(int length) { return buf.readRetainedSlice(length); }
@Override public ByteBuf readRetainedSlice(int length) { return buf.readRetainedSlice(length); }
@Override public ByteBuf readRetainedSlice(int length) { return buf.readRetainedSlice(length); }
/** * Create a frame out of the {@link ByteBuf} and return it. * * @param ctx the {@link ChannelHandlerContext} which this {@link ByteToMessageDecoder} belongs to * @param in the {@link ByteBuf} from which to read data * @return frame the {@link ByteBuf} which represent the frame or {@code null} if no frame could * be created. */ protected Object decode( @SuppressWarnings("UnusedParameters") ChannelHandlerContext ctx, ByteBuf in) throws Exception { if (in.readableBytes() < frameLength) { return null; } else { return in.readRetainedSlice(frameLength); } } }
/** * Create a frame out of the {@link ByteBuf} and return it. * * @param ctx the {@link ChannelHandlerContext} which this {@link ByteToMessageDecoder} belongs to * @param in the {@link ByteBuf} from which to read data * @return frame the {@link ByteBuf} which represent the frame or {@code null} if no frame could * be created. */ protected Object decode( @SuppressWarnings("UnusedParameters") ChannelHandlerContext ctx, ByteBuf in) throws Exception { if (in.readableBytes() < frameLength) { return null; } else { return in.readRetainedSlice(frameLength); } } }
@Override public ByteBuf readRetainedSlice(int length) { checkReadableBytes(length); return buffer.readRetainedSlice(length); }
@Override public ByteBuf readRetainedSlice(int length) { return buf.readRetainedSlice(length).order(order); }
@Override public ByteBuf readRetainedSlice(int length) { checkReadableBytes(length); return buffer.readRetainedSlice(length); }
@Override public ByteBuf readRetainedSlice(int length) { return buf.readRetainedSlice(length).order(order); }
@Override protected void doDecode(final ChannelHandlerContext context, final ByteBuf in, final List<Object> out, final int readableBytes) { int messageTyepLength = 0; if ('\0' == in.markReaderIndex().readByte()) { in.resetReaderIndex(); } else { messageTyepLength = PostgreSQLPacket.MESSAGE_TYPE_LENGTH; } int payloadLength = in.readInt(); int realPacketLength = payloadLength + messageTyepLength; if (readableBytes < realPacketLength) { in.resetReaderIndex(); return; } in.resetReaderIndex(); out.add(in.readRetainedSlice(payloadLength + messageTyepLength)); }
@Override public ByteBuf readRetainedSlice(int length) { checkReadableBytes(length); return buffer.readRetainedSlice(length); }
@Override protected void doDecode(final ChannelHandlerContext context, final ByteBuf in, final List<Object> out, final int readableBytes) { int payloadLength = in.markReaderIndex().readMediumLE(); int realPacketLength = payloadLength + MySQLPacket.PAYLOAD_LENGTH + MySQLPacket.SEQUENCE_LENGTH; if (readableBytes < realPacketLength) { in.resetReaderIndex(); return; } out.add(in.readRetainedSlice(payloadLength + MySQLPacket.SEQUENCE_LENGTH)); }
@Override protected void doDecode(final ChannelHandlerContext context, final ByteBuf in, final List<Object> out, final int readableBytes) { int payloadLength = in.markReaderIndex().readMediumLE(); int realPacketLength = payloadLength + MySQLPacket.PAYLOAD_LENGTH + MySQLPacket.SEQUENCE_LENGTH; if (readableBytes < realPacketLength) { in.resetReaderIndex(); return; } out.add(in.readRetainedSlice(payloadLength + MySQLPacket.SEQUENCE_LENGTH)); }
@Override protected void decode(ChannelHandlerContext ctx, ByteBuf in, List<Object> out) throws Exception { in.markReaderIndex(); int preIndex = in.readerIndex(); int length = readRawVarint32(in); if (preIndex == in.readerIndex()) { return; } if (length < 0) { throw new CorruptedFrameException("negative length: " + length); } if (in.readableBytes() < length) { in.resetReaderIndex(); } else { out.add(in.readRetainedSlice(length)); } }
@Override public ByteBuf readRetainedSlice(int length) { return buf.readRetainedSlice(length).order(order); }
@Override protected Object decode( ChannelHandlerContext ctx, Channel channel, ByteBuf buf) throws Exception { int length = messageLength(buf); if (buf.readableBytes() >= length) { return buf.readRetainedSlice(length); } return null; }
@Override protected Object decode( ChannelHandlerContext ctx, Channel channel, ByteBuf buf) throws Exception { buf.readerIndex(buf.indexOf(buf.readerIndex(), buf.writerIndex(), (byte) 'E')); int endIndex = buf.indexOf(buf.readerIndex() + 1, buf.writerIndex(), (byte) 'E'); if (endIndex > 0) { return buf.readRetainedSlice(endIndex - buf.readerIndex()); } else { return buf.readRetainedSlice(buf.readableBytes()); // assume full frame } }
@Override protected Object decode( ChannelHandlerContext ctx, Channel channel, ByteBuf buf) throws Exception { int length = 4 + buf.getIntLE(buf.readerIndex()); if (buf.readableBytes() >= length) { return buf.readRetainedSlice(length); } else { return null; } }
private static Result<ByteBuf> decodePublishPayload(ByteBuf buffer, int bytesRemainingInVariablePart) { ByteBuf b = buffer.readRetainedSlice(bytesRemainingInVariablePart); return new Result<ByteBuf>(b, bytesRemainingInVariablePart); }
@Override protected void decode(ChannelHandlerContext ctx, ByteBuf in, List<Object> out) throws Exception { in.markReaderIndex(); int preIndex = in.readerIndex(); int length = readRawVarint32(in); if (preIndex == in.readerIndex()) { return; } if (length < 0) { throw new CorruptedFrameException("negative length: " + length); } if (in.readableBytes() < length) { in.resetReaderIndex(); } else { out.add(in.readRetainedSlice(length)); } }