Class SharedOutputBuffer
java.lang.Object
org.apache.hc.core5.http.impl.nio.ExpandableBuffer
org.apache.hc.core5.http.nio.support.classic.AbstractSharedBuffer
org.apache.hc.core5.http.nio.support.classic.SharedOutputBuffer
- All Implemented Interfaces:
ContentOutputBuffer
@Contract(threading=SAFE)
public final class SharedOutputBuffer
extends AbstractSharedBuffer
implements ContentOutputBuffer
- Since:
- 5.0
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.hc.core5.http.impl.nio.ExpandableBuffer
ExpandableBuffer.Mode -
Field Summary
FieldsFields inherited from class org.apache.hc.core5.http.nio.support.classic.AbstractSharedBuffer
aborted, condition, endStream, lock -
Constructor Summary
ConstructorsConstructorDescriptionSharedOutputBuffer(int bufferSize) SharedOutputBuffer(ReentrantLock lock, int initialBufferSize) -
Method Summary
Modifier and TypeMethodDescriptionprivate voidvoidflush(DataStreamChannel channel) private voidprivate voidvoidwrite(byte[] b, int off, int len) Writeslenbytes from the specified byte array starting at offsetoffto this buffer.voidwrite(int b) Writes the specified byte to this buffer.voidIndicates the content has been fully written.Methods inherited from class org.apache.hc.core5.http.nio.support.classic.AbstractSharedBuffer
abort, capacity, hasData, isEndStream, length, resetMethods inherited from class org.apache.hc.core5.http.impl.nio.ExpandableBuffer
buffer, clear, ensureAdjustedCapacity, ensureCapacity, expand, mode, setInputMode, setOutputMode, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.hc.core5.http.nio.support.classic.ContentOutputBuffer
length, reset
-
Field Details
-
dataStreamChannel
-
hasCapacity
private volatile boolean hasCapacity -
endStreamPropagated
private volatile boolean endStreamPropagated
-
-
Constructor Details
-
SharedOutputBuffer
-
SharedOutputBuffer
public SharedOutputBuffer(int bufferSize)
-
-
Method Details
-
flush
- Throws:
IOException
-
ensureNotAborted
- Throws:
InterruptedIOException
-
write
Description copied from interface:ContentOutputBufferWriteslenbytes from the specified byte array starting at offsetoffto this buffer.If
offis negative, orlenis negative, oroff+lenis greater than the length of the arrayb, this method can throw a runtime exception. The exact type of runtime exception thrown by this method depends on implementation.- Specified by:
writein interfaceContentOutputBuffer- Parameters:
b- the data.off- the start offset in the data.len- the number of bytes to write.- Throws:
IOException- if an I/O error occurs.
-
write
Description copied from interface:ContentOutputBufferWrites the specified byte to this buffer.- Specified by:
writein interfaceContentOutputBuffer- Parameters:
b- thebyte.- Throws:
IOException- if an I/O error occurs.
-
writeCompleted
Description copied from interface:ContentOutputBufferIndicates the content has been fully written.- Specified by:
writeCompletedin interfaceContentOutputBuffer- Throws:
IOException- if an I/O error occurs.
-
waitFlush
- Throws:
InterruptedIOException
-
propagateEndStream
- Throws:
IOException
-