org.apache.http.impl.nio.codecs
Class IdentityDecoder
java.lang.Object
org.apache.http.impl.nio.codecs.AbstractContentDecoder
org.apache.http.impl.nio.codecs.IdentityDecoder
- All Implemented Interfaces:
- ContentDecoder, FileContentDecoder
public class IdentityDecoder
- extends AbstractContentDecoder
- implements FileContentDecoder
Identity decoder implementation.
- Since:
- 4.0
- Version:
- $Revision: 667974 $
- Author:
- Oleg Kalnichevski, Andrea Selva
Method Summary |
int |
read(java.nio.ByteBuffer dst)
Reads a portion of content from the underlying channel |
void |
setCompleted(boolean completed)
Sets the completed status of this decoder. |
java.lang.String |
toString()
|
long |
transfer(java.nio.channels.FileChannel dst,
long position,
long count)
Transfers a portion of entity content from the underlying network channel
into the given file channel.
Warning: Many implementations cannot write beyond the length of the file. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
IdentityDecoder
public IdentityDecoder(java.nio.channels.ReadableByteChannel channel,
SessionInputBuffer buffer,
HttpTransportMetricsImpl metrics)
setCompleted
public void setCompleted(boolean completed)
- Sets the completed status of this decoder. Normally this is not necessary
(the decoder will automatically complete when the underlying channel
returns EOF). It is useful to mark the decoder as completed if you have
some other means to know all the necessary data has been read and want to
reuse the underlying connection for more messages.
read
public int read(java.nio.ByteBuffer dst)
throws java.io.IOException
- Description copied from interface:
ContentDecoder
- Reads a portion of content from the underlying channel
- Specified by:
read
in interface ContentDecoder
- Parameters:
dst
- The buffer into which entity content is to be transferred
- Returns:
- The number of bytes read, possibly zero, or -1 if the
channel has reached end-of-stream
- Throws:
java.io.IOException
- if I/O error occurs while reading content
transfer
public long transfer(java.nio.channels.FileChannel dst,
long position,
long count)
throws java.io.IOException
- Description copied from interface:
FileContentDecoder
- Transfers a portion of entity content from the underlying network channel
into the given file channel.
Warning: Many implementations cannot write beyond the length of the file.
If the position exceeds the channel's size, some implementations
may throw an IOException.
- Specified by:
transfer
in interface FileContentDecoder
- Parameters:
dst
- the target FileChannel to transfer data into.position
- The position within the file at which the transfer is to begin;
must be non-negative.
Must be less than or equal to the size of the filecount
- The maximum number of bytes to be transferred; must be
non-negative
- Returns:
- The number of bytes, possibly zero,
that were actually transferred
- Throws:
java.io.IOException
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
Copyright © 2005-2008 Apache Software Foundation. All Rights Reserved.