Class SharedInputBuffer
- java.lang.Object
-
- org.apache.hc.core5.http.impl.nio.ExpandableBuffer
-
- org.apache.cxf.transport.http.asyncclient.hc5.SharedInputBuffer
-
public class SharedInputBuffer extends org.apache.hc.core5.http.impl.nio.ExpandableBufferContent buffer that can be shared by multiple threads, usually the I/O dispatch of an I/O reactor and a worker thread. The I/O dispatch thread is expect to transfer data fromByteBufferto the buffer by calling#consumeContent(ByteBuffer). The worker thread is expected to read the data from the buffer by callingread()orread(byte[], int, int)methods. In case of an abnormal situation or when no longer needed the buffer must be shut down usingshutdown()method.
-
-
Constructor Summary
Constructors Constructor Description SharedInputBuffer(int buffersize)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intcapacity()voidclose()intconsumeContent(ByteBuffer buffer, boolean last)booleanhasData()protected booleanisEndOfStream()protected booleanisShutdown()intlength()intread()intread(byte[] b)intread(byte[] b, int off, int len)voidreset()voidshutdown()protected voidwaitForData(int waitPos)
-
-
-
Method Detail
-
reset
public void reset()
-
consumeContent
public int consumeContent(ByteBuffer buffer, boolean last) throws IOException
- Throws:
IOException
-
hasData
public boolean hasData()
- Overrides:
hasDatain classorg.apache.hc.core5.http.impl.nio.ExpandableBuffer
-
capacity
public int capacity()
- Overrides:
capacityin classorg.apache.hc.core5.http.impl.nio.ExpandableBuffer
-
length
public int length()
- Overrides:
lengthin classorg.apache.hc.core5.http.impl.nio.ExpandableBuffer
-
waitForData
protected void waitForData(int waitPos) throws IOException- Throws:
IOException
-
close
public void close()
-
shutdown
public void shutdown()
-
isShutdown
protected boolean isShutdown()
-
isEndOfStream
protected boolean isEndOfStream()
-
read
public int read() throws IOException- Throws:
IOException
-
read
public int read(byte[] b, int off, int len) throws IOException- Throws:
IOException
-
read
public int read(byte[] b) throws IOException- Throws:
IOException
-
-