org.jboss.netty.handler.codec.spdy

## Class SpdyHttpEncoder

- java.lang.Object
- - org.jboss.netty.handler.codec.spdy.SpdyHttpEncoder

All Implemented Interfaces:
  ChannelDownstreamHandler, ChannelHandler

    public class SpdyHttpEncoder
    extends Object
    implements ChannelDownstreamHandler

Encodes `HttpRequest`s, `HttpResponse`s, and `HttpChunk`s into `SpdySynStreamFrame`s and `SpdySynReplyFrame`s.

### Request Annotations

SPDY specific headers must be added to `HttpRequest`s:

Header Name | Header Value
--- | ---
`"X-SPDY-Stream-ID"` | The Stream-ID for this request. Stream-IDs must be odd, positive integers, and must increase monotonically.
`"X-SPDY-Priority"` | The priority value for this request. The priority should be between 0 and 7 inclusive. 0 represents the highest priority and 7 represents the lowest. This header is optional and defaults to 0.

### Response Annotations

SPDY specific headers must be added to `HttpResponse`s:

Header Name | Header Value
--- | ---
`"X-SPDY-Stream-ID"` | The Stream-ID of the request corresponding to this response.

### Pushed Resource Annotations

SPDY specific headers must be added to pushed `HttpResponse`s:

Header Name | Header Value
--- | ---
`"X-SPDY-Stream-ID"` | The Stream-ID for this resource. Stream-IDs must be even, positive integers, and must increase monotonically.
`"X-SPDY-Associated-To-Stream-ID"` | The Stream-ID of the request that initiated this pushed resource.
`"X-SPDY-Priority"` | The priority value for this resource. The priority should be between 0 and 7 inclusive. 0 represents the highest priority and 7 represents the lowest. This header is optional and defaults to 0.
`"X-SPDY-URL"` | The absolute path for the resource being pushed.

### Required Annotations

SPDY requires that all Requests and Pushed Resources contain an HTTP "Host" header.

### Optional Annotations

Requests and Pushed Resources must contain a SPDY scheme header. This can be set via the `"X-SPDY-Scheme"` header but otherwise defaults to "https" as that is the most common SPDY deployment.

### Chunked Content

This encoder associates all `HttpChunk`s that it receives with the most recently received 'chunked' `HttpRequest` or `HttpResponse`.

### Pushed Resources

All pushed resources should be sent before sending the response that corresponds to the initial request.

### Nested Class Summary

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

`ChannelHandler.Sharable`

### Constructor Summary

Constructors
Constructor and Description
`SpdyHttpEncoder()` Deprecated.
`SpdyHttpEncoder(int version)` Creates a new instance.

### Method Summary

Methods
`void` `handleDownstream(ChannelHandlerContext ctx, ChannelEvent evt)` Handles the specified downstream event.

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

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

### Constructor Detail

#### SpdyHttpEncoder

    @Deprecated
    public SpdyHttpEncoder()

Deprecated.
Creates a new instance for the SPDY/2 protocol

#### SpdyHttpEncoder

    public SpdyHttpEncoder(int version)

Creates a new instance.

Parameters:
  `version` - the protocol version

### Method Detail

#### handleDownstream

    public void handleDownstream(ChannelHandlerContext ctx,
                        ChannelEvent evt)
                          throws Exception

Description copied from interface: `ChannelDownstreamHandler`
Handles the specified downstream event.

Specified by:
  `handleDownstream` in interface `ChannelDownstreamHandler`
Parameters:
  `ctx` - the context object for this handler
  `evt` - the downstream event to process or intercept
Throws:
  `Exception`