org.jboss.netty.handler.codec.string

## Class StringEncoder

- java.lang.Object
- - org.jboss.netty.handler.codec.oneone.OneToOneEncoder
  - - org.jboss.netty.handler.codec.string.StringEncoder

- All Implemented Interfaces:
    ChannelDownstreamHandler, ChannelHandler

      @ChannelHandler.Sharable
      public class StringEncoder
      extends OneToOneEncoder

  Encodes the requested `String` into a `ChannelBuffer`. A typical setup for a text-based line protocol in a TCP/IP socket would be:

       ChannelPipeline pipeline = ...;

       // Decoders
       pipeline.addLast("frameDecoder", new DelimiterBasedFrameDecoder(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
    `StringEncoder()` Creates a new instance with the current system character set.
    `StringEncoder(Charset charset)` Creates a new instance with the specified character set.
    `StringEncoder(String charsetName)` Deprecated. Use `StringEncoder(Charset)` instead.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected Object` | `encode(ChannelHandlerContext ctx, Channel channel, Object msg)` Transforms the specified message into another message and return the transformed message.

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

      `handleDownstream`

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

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

- - ### Constructor Detail

    - #### StringEncoder

          public StringEncoder()

      Creates a new instance with the current system character set.

    - #### StringEncoder

          public StringEncoder(Charset charset)

      Creates a new instance with the specified character set.

    - #### StringEncoder

          @Deprecated
          public StringEncoder(String charsetName)

      Deprecated. Use `StringEncoder(Charset)` instead.

  - ### Method Detail

    - #### encode

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

      Description copied from class: `OneToOneEncoder`
      Transforms the specified message into another message and return the transformed message. Note that you can not return `null`, unlike you can in `OneToOneDecoder.decode(ChannelHandlerContext, Channel, Object)`; you must return something, at least `ChannelBuffers.EMPTY_BUFFER`.
      Specified by:
        `encode` in class `OneToOneEncoder`
      Throws:
        `Exception`

Copyright © 2008-2012 The Netty Project. All Rights Reserved.