Class DecoderEmbedder<E>

java.lang.Object
org.jboss.netty.handler.codec.embedder.AbstractCodecEmbedder<E>
org.jboss.netty.handler.codec.embedder.DecoderEmbedder<E>
All Implemented Interfaces:
CodecEmbedder<E>

public class DecoderEmbedder<E> extends AbstractCodecEmbedder<E>
A helper that wraps a decoder so that it can be used without doing actual I/O in unit tests or higher level codecs. For example, you can decode a Base64-encoded ChannelBuffer with Base64Decoder and StringDecoder without setting up the ChannelPipeline and other mock objects by yourself:
 ChannelBuffer base64Data = ChannelBuffers.copiedBuffer("Zm9vYmFy", CharsetUtil.US_ASCII);

 DecoderEmbedder<String> embedder = new DecoderEmbedder<String>(
         new Base64Decoder(), new StringDecoder());

 embedder.offer(base64Data);

 String decoded = embedder.poll();
 assert decoded.equals("foobar");
 
See Also:
  • Constructor Details

    • DecoderEmbedder

      public DecoderEmbedder(ChannelUpstreamHandler... handlers)
      Creates a new embedder whose pipeline is composed of the specified handlers.
    • DecoderEmbedder

      public DecoderEmbedder(ChannelBufferFactory bufferFactory, ChannelUpstreamHandler... handlers)
      Creates a new embedder whose pipeline is composed of the specified handlers.
      Parameters:
      bufferFactory - the ChannelBufferFactory to be used when creating a new buffer.
  • Method Details