org.apache.http.impl.nio.codecs
Class ChunkEncoder

java.lang.Object
  extended by org.apache.http.impl.nio.codecs.AbstractContentEncoder
      extended by org.apache.http.impl.nio.codecs.ChunkEncoder
All Implemented Interfaces:
ContentEncoder

public class ChunkEncoder
extends AbstractContentEncoder

Implements chunked transfer coding. The content is sent in small chunks. Entities transferred using this decoder can be of unlimited length.

Since:
4.0

Field Summary
 
Fields inherited from class org.apache.http.impl.nio.codecs.AbstractContentEncoder
buffer, channel, completed, metrics
 
Constructor Summary
ChunkEncoder(WritableByteChannel channel, SessionOutputBuffer buffer, HttpTransportMetricsImpl metrics)
           
ChunkEncoder(WritableByteChannel channel, SessionOutputBuffer buffer, HttpTransportMetricsImpl metrics, int fragementSizeHint)
           
 
Method Summary
 void complete()
          Terminates the content stream.
 String toString()
           
 int write(ByteBuffer src)
          Writes a portion of entity content to the underlying channel.
 
Methods inherited from class org.apache.http.impl.nio.codecs.AbstractContentEncoder
assertNotCompleted, flushToChannel, isCompleted, writeToBuffer, writeToChannel, writeToChannel
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ChunkEncoder

public ChunkEncoder(WritableByteChannel channel,
                    SessionOutputBuffer buffer,
                    HttpTransportMetricsImpl metrics,
                    int fragementSizeHint)
Parameters:
channel - underlying channel.
buffer - session buffer.
metrics - transport metrics.
fragementSizeHint - fragment size hint defining an minimal size of a fragment that should be written out directly to the channel bypassing the session buffer. Value 0 disables fragment buffering.
Since:
4.3

ChunkEncoder

public ChunkEncoder(WritableByteChannel channel,
                    SessionOutputBuffer buffer,
                    HttpTransportMetricsImpl metrics)
Method Detail

write

public int write(ByteBuffer src)
          throws IOException
Description copied from interface: ContentEncoder
Writes a portion of entity content to the underlying channel.

Parameters:
src - The buffer from which content is to be retrieved
Returns:
The number of bytes read, possibly zero
Throws:
IOException - if I/O error occurs while writing content

complete

public void complete()
              throws IOException
Description copied from interface: ContentEncoder
Terminates the content stream.

Specified by:
complete in interface ContentEncoder
Overrides:
complete in class AbstractContentEncoder
Throws:
IOException - if I/O error occurs while writing content

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2005–2021 The Apache Software Foundation. All rights reserved.