Class SharedOutputBuffer
- java.lang.Object
-
- org.apache.hc.core5.http.impl.nio.ExpandableBuffer
-
- org.apache.cxf.transport.http.asyncclient.hc5.SharedOutputBuffer
-
public class SharedOutputBuffer 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 expected to transfer data from the buffer toDataStreamChannelby callingproduceContent(DataStreamChannel). The worker thread is expected to write data to the buffer by callingwrite(int),write(byte[], int, int)orwriteCompleted()In case of an abnormal situation or when no longer needed the buffer must be shut down usingshutdown()method.
-
-
Constructor Summary
Constructors Constructor Description SharedOutputBuffer(int buffersize)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intcapacity()voidclose()intcopy(InputStream in)voidflush()booleanhasData()intlength()intproduceContent(org.apache.hc.core5.http.nio.DataStreamChannel stream)voidreset()voidshutdown()voidwrite(byte[] b)voidwrite(byte[] b, int off, int len)voidwrite(int b)intwrite(ByteBuffer b)voidwriteCompleted()
-
-
-
Method Detail
-
reset
public void reset()
-
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
-
produceContent
public int produceContent(org.apache.hc.core5.http.nio.DataStreamChannel stream) throws IOException- Throws:
IOException
-
close
public void close()
-
shutdown
public void shutdown()
-
copy
public int copy(InputStream in) throws IOException
- Throws:
IOException
-
write
public void write(byte[] b, int off, int len) throws IOException- Throws:
IOException
-
write
public int write(ByteBuffer b) throws IOException
- Throws:
IOException
-
write
public void write(byte[] b) throws IOException- Throws:
IOException
-
write
public void write(int b) throws IOException- Throws:
IOException
-
flush
public void flush() throws IOException- Throws:
IOException
-
writeCompleted
public void writeCompleted() throws IOException- Throws:
IOException
-
-