org.jboss.netty.handler.codec.string

## Class StringDecoder

- java.lang.Object
- - org.jboss.netty.handler.codec.oneone.OneToOneDecoder
  - - org.jboss.netty.handler.codec.string.StringDecoder

All Implemented Interfaces:
  ChannelHandler, ChannelUpstreamHandler

    @ChannelHandler.Sharable
    public class StringDecoder
    extends OneToOneDecoder

Decodes a received `ChannelBuffer` into a `String`. Please note that this decoder must be used with a proper `FrameDecoder` such as `DelimiterBasedFrameDecoder` if you are using a stream-based transport such as TCP/IP. A typical setup for a text-based line protocol in a TCP/IP socket would be:

     ChannelPipeline pipeline = ...;

     // Decoders
     pipeline.addLast("frameDecoder", new DelimiterBasedFrameDecoder(80, Delimiters.lineDelimiter()));
     pipeline.addLast("stringDecoder", new StringDecoder(CharsetUtil.UTF_8));

     // Encoder
     pipeline.addLast("stringEncoder", new StringEncoder(CharsetUtil.UTF_8));

and then you can use a `String` instead of a `ChannelBuffer` as a message:

     void messageReceived(ChannelHandlerContext ctx, MessageEvent e) {
         String msg = (String) e.getMessage();
         ch.write("Did you say '" + msg + "'?\n");
     }

### Nested Class Summary

### Nested classes/interfaces inherited from interface org.jboss.netty.channel.ChannelHandler

`ChannelHandler.Sharable`

### Constructor Summary

Constructors
Constructor and Description
`StringDecoder()` Creates a new instance with the current system character set.
`StringDecoder(Charset charset)` Creates a new instance with the specified character set.
`StringDecoder(String charsetName)` Deprecated. Use `StringDecoder(Charset)` instead.

### Method Summary

Methods
`protected Object` `decode(ChannelHandlerContext ctx, Channel channel, Object msg)` Transforms the specified received message into another message and return the transformed message.

### Methods inherited from class org.jboss.netty.handler.codec.oneone.OneToOneDecoder

`handleUpstream`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### StringDecoder

    public StringDecoder()

Creates a new instance with the current system character set.

#### StringDecoder

    public StringDecoder(Charset charset)

Creates a new instance with the specified character set.

#### StringDecoder

    @Deprecated
    public StringDecoder(String charsetName)

Deprecated. Use `StringDecoder(Charset)` instead.

### Method Detail

#### decode

    protected Object decode(ChannelHandlerContext ctx,
                Channel channel,
                Object msg)
                     throws Exception

Description copied from class: `OneToOneDecoder`
Transforms the specified received message into another message and return the transformed message. Return `null` if the received message is supposed to be discarded.

Specified by:
  `decode` in class `OneToOneDecoder`
Throws:
  `Exception`