@Override
    public HttpData decode(HttpData obj) {
        try {
            decoder.writeInbound(obj.byteBuf());
        } catch (DecompressionException ex) {
            final String message = ex.getMessage();
            if (message != null && message.startsWith("Decompression buffer has reached maximum size:")) {
                throw ContentTooLargeException.builder()
                                              .maxContentLength(maxLength)
                                              .cause(ex)
                                              .build();
            } else {
                throw ex;
            }
        }
        return fetchDecoderOutput();
    }
Skeletal {@link StreamDecoder} implementation. Netty implementation used to allow
for incremental decoding using an {@link EmbeddedChannel}.
core/src/main/java/com/linecorp/armeria/common/encoding/AbstractStreamDecoder.java