@Override public Object decode(ByteBuf buf, State state) throws IOException { ByteBuf out = ByteBufAllocator.DEFAULT.buffer(); try { while (buf.isReadable()) { int chunkSize = buf.readInt(); ByteBuf chunk = buf.readSlice(chunkSize); snappyDecoder.get().decode(chunk, out); snappyDecoder.get().reset(); } return innerCodec.getValueDecoder().decode(out, state); } finally { snappyDecoder.get().reset(); out.release(); } } };
@Override public Object decode(ByteBuf buf, State state) throws IOException { ByteBuf out = ByteBufAllocator.DEFAULT.buffer(); try { while (buf.isReadable()) { int chunkSize = buf.readInt(); ByteBuf chunk = buf.readSlice(chunkSize); snappyDecoder.get().decode(chunk, out); snappyDecoder.get().reset(); } return innerCodec.getValueDecoder().decode(out, state); } finally { snappyDecoder.get().reset(); out.release(); } } };
@Override public Object decode(ByteBuf buf, State state) throws IOException { ByteBuf out = ByteBufAllocator.DEFAULT.buffer(); try { while (buf.isReadable()) { int chunkSize = buf.readInt(); ByteBuf chunk = buf.readSlice(chunkSize); snappyDecoder.get().decode(chunk, out); snappyDecoder.get().reset(); } return innerCodec.getValueDecoder().decode(out, state); } finally { snappyDecoder.get().reset(); out.release(); } } };