org.apache.http.nio.util
Class SimpleInputBuffer

java.lang.Object
  extended by org.apache.http.nio.util.ExpandableBuffer
      extended by org.apache.http.nio.util.SimpleInputBuffer
All Implemented Interfaces:
BufferInfo, ContentInputBuffer

public class SimpleInputBuffer
extends ExpandableBuffer
implements ContentInputBuffer

Basic implementation of the ContentInputBuffer interface.

This class is not thread safe.

Since:
4.0

Field Summary
 
Fields inherited from class org.apache.http.nio.util.ExpandableBuffer
buffer, INPUT_MODE, OUTPUT_MODE
 
Constructor Summary
SimpleInputBuffer(int bufferSize)
           
SimpleInputBuffer(int bufferSize, ByteBufferAllocator allocator)
           
 
Method Summary
 int consumeContent(ContentDecoder decoder)
          Reads content from the given ContentDecoder and stores it in this buffer.
 boolean isEndOfStream()
           
 int read()
          Reads one byte from this buffer.
 int read(byte[] b)
           
 int read(byte[] b, int off, int len)
          Reads up to len bytes of data from this buffer into an array of bytes.
 void reset()
          Resets the buffer by clearing its state and stored content.
 void shutdown()
           
 
Methods inherited from class org.apache.http.nio.util.ExpandableBuffer
available, capacity, clear, ensureCapacity, expand, getMode, hasData, length, setInputMode, setOutputMode, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SimpleInputBuffer

public SimpleInputBuffer(int bufferSize,
                         ByteBufferAllocator allocator)

SimpleInputBuffer

public SimpleInputBuffer(int bufferSize)
Since:
4.3
Method Detail

reset

public void reset()
Description copied from interface: ContentInputBuffer
Resets the buffer by clearing its state and stored content.

Specified by:
reset in interface ContentInputBuffer

consumeContent

public int consumeContent(ContentDecoder decoder)
                   throws IOException
Description copied from interface: ContentInputBuffer
Reads content from the given ContentDecoder and stores it in this buffer.

Specified by:
consumeContent in interface ContentInputBuffer
Parameters:
decoder - the content decoder.
Returns:
number of bytes read.
Throws:
IOException - in case of an I/O error.

isEndOfStream

public boolean isEndOfStream()

read

public int read()
         throws IOException
Description copied from interface: ContentInputBuffer
Reads one byte from this buffer. If the buffer is empty this method can throw a runtime exception. The exact type of runtime exception thrown by this method depends on implementation. This method returns -1 if the end of content stream has been reached.

Specified by:
read in interface ContentInputBuffer
Returns:
one byte
Throws:
IOException

read

public int read(byte[] b,
                int off,
                int len)
         throws IOException
Description copied from interface: ContentInputBuffer
Reads up to len bytes of data from this buffer into an array of bytes. The exact number of bytes read depends how many bytes are stored in the buffer.

If off is negative, or len is negative, or off+len is greater than the length of the array b, this method can throw a runtime exception. The exact type of runtime exception thrown by this method depends on implementation. This method returns -1 if the end of content stream has been reached.

Specified by:
read in interface ContentInputBuffer
Parameters:
b - the buffer into which the data is read.
off - the start offset in array b at which the data is written.
len - the maximum number of bytes to read.
Returns:
the total number of bytes read into the buffer, or -1 if there is no more data because the end of the stream has been reached.
Throws:
IOException - if an I/O error occurs.

read

public int read(byte[] b)
         throws IOException
Throws:
IOException

shutdown

public void shutdown()


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