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 void
void
flush
(DataStreamChannel channel) private void
private void
void
write
(byte[] b, int off, int len) Writeslen
bytes from the specified byte array starting at offsetoff
to this buffer.void
write
(int b) Writes the specified byte to this buffer.void
Indicates the content has been fully written.Methods inherited from class org.apache.hc.core5.http.nio.support.classic.AbstractSharedBuffer
abort, capacity, hasData, isEndStream, length, reset
Methods inherited from class org.apache.hc.core5.http.impl.nio.ExpandableBuffer
buffer, clear, ensureAdjustedCapacity, ensureCapacity, expand, mode, setInputMode, setOutputMode, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods 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:ContentOutputBuffer
Writeslen
bytes from the specified byte array starting at offsetoff
to this buffer.If
off
is negative, orlen
is negative, oroff+len
is 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:
write
in 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:ContentOutputBuffer
Writes the specified byte to this buffer.- Specified by:
write
in interfaceContentOutputBuffer
- Parameters:
b
- thebyte
.- Throws:
IOException
- if an I/O error occurs.
-
writeCompleted
Description copied from interface:ContentOutputBuffer
Indicates the content has been fully written.- Specified by:
writeCompleted
in interfaceContentOutputBuffer
- Throws:
IOException
- if an I/O error occurs.
-
waitFlush
- Throws:
InterruptedIOException
-
propagateEndStream
- Throws:
IOException
-