## org.apache.http.impl.entity
Class EntitySerializer

    java.lang.Object
      org.apache.http.impl.entity.EntitySerializer

    @Immutable
    public class EntitySerializer

extends Object

HTTP entity serializer.

This entity serializer currently supports "chunked" and "identitiy" transfer-coding and content length delimited content.

This class relies on a specific implementation of `ContentLengthStrategy` to determine the content length or transfer encoding of the entity.

This class writes out the content of `HttpEntity` to the data stream using a transfer coding based on properties on the HTTP message.

Since:
  4.0

Constructor Summary
`EntitySerializer(ContentLengthStrategy lenStrategy)`

Method Summary
`protected OutputStream` `doSerialize(SessionOutputBuffer outbuffer, HttpMessage message)` Creates a transfer codec based on properties of the given HTTP message and returns `OutputStream` instance that transparently encodes output data as it is being written out to the output stream.
`void` `serialize(SessionOutputBuffer outbuffer, HttpMessage message, HttpEntity entity)` Writes out the content of the given HTTP entity to the session output buffer based on properties of the given HTTP message.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### EntitySerializer

    public EntitySerializer(ContentLengthStrategy lenStrategy)

Method Detail

### doSerialize

    protected OutputStream doSerialize(SessionOutputBuffer outbuffer,
                                       HttpMessage message)
                                throws HttpException,
                                       IOException

  Creates a transfer codec based on properties of the given HTTP message and returns `OutputStream` instance that transparently encodes output data as it is being written out to the output stream.

  This method is called by the public `serialize(SessionOutputBuffer, HttpMessage, HttpEntity)`.

  Parameters:
    `outbuffer` - the session output buffer.
    `message` - the HTTP message.
  Returns:
    output stream.
  Throws:
    `HttpException` - in case of HTTP protocol violation.
    `IOException` - in case of an I/O error.

### serialize

    public void serialize(SessionOutputBuffer outbuffer,
                          HttpMessage message,
                          HttpEntity entity)
                   throws HttpException,
                          IOException

  Writes out the content of the given HTTP entity to the session output buffer based on properties of the given HTTP message.

  Parameters:
    `outbuffer` - the output session buffer.
    `message` - the HTTP message.
    `entity` - the HTTP entity to be written out.
  Throws:
    `HttpException` - in case of HTTP protocol violation.
    `IOException` - in case of an I/O error.

Copyright © 2005-2013 The Apache Software Foundation. All Rights Reserved.