org.jboss.netty.handler.codec.http

## Class HttpMessageEncoder

- java.lang.Object
- - org.jboss.netty.handler.codec.oneone.OneToOneEncoder
  - - org.jboss.netty.handler.codec.http.HttpMessageEncoder

All Implemented Interfaces:
  ChannelDownstreamHandler, ChannelHandler

Direct Known Subclasses:
  HttpRequestEncoder, HttpResponseEncoder, RtspMessageEncoder

    public abstract class HttpMessageEncoder
    extends OneToOneEncoder

Encodes an `HttpMessage` or an `HttpChunk` into a `ChannelBuffer`.

### Extensibility

Please note that this encoder is designed to be extended to implement a protocol derived from HTTP, such as RTSP and ICAP. To implement the encoder of such a derived protocol, extend this class and implement all abstract methods properly.

### Nested Class Summary

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

`ChannelHandler.Sharable`

### Constructor Summary

Constructors
`protected` `HttpMessageEncoder()` Creates a new instance.

### Method Summary

Methods
`protected Object` `encode(ChannelHandlerContext ctx, Channel channel, Object msg)` Transforms the specified message into another message and return the transformed message.
`protected abstract void` `encodeInitialLine(ChannelBuffer buf, HttpMessage 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

#### HttpMessageEncoder

    protected HttpMessageEncoder()

Creates a new instance.

### 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`

#### encodeInitialLine

    protected abstract void encodeInitialLine(ChannelBuffer buf,
                         HttpMessage message)
                                       throws Exception

Throws:
  `Exception`