Package org.eclipse.jetty.server
Class HttpOutput.ReadableByteChannelWritingCB
java.lang.Object
org.eclipse.jetty.util.IteratingCallback
org.eclipse.jetty.server.HttpOutput.ChannelWriteCB
org.eclipse.jetty.server.HttpOutput.NestedChannelWriteCB
org.eclipse.jetty.server.HttpOutput.ReadableByteChannelWritingCB
- Enclosing class:
HttpOutput
An iterating callback that will take content from a
ReadableByteChannel and write it to the
HttpChannel.
A ByteBuffer of size HttpOutput.getBufferSize() is used that will be direct if
HttpChannel.useDirectBuffers() is true.
This callback is passed to the HttpChannel.write(ByteBuffer, boolean, Callback) to
be notified as each buffer is written and only once all the input is consumed will the
wrapped Callback.succeeded() method be called.-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.jetty.util.IteratingCallback
IteratingCallback.ActionNested classes/interfaces inherited from interface org.eclipse.jetty.util.Callback
Callback.Completable, Callback.Completing, Callback.InvocableCallback, Callback.NestedNested classes/interfaces inherited from interface org.eclipse.jetty.util.thread.Invocable
Invocable.InvocationType -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ByteBufferprivate booleanprivate booleanprivate final ReadableByteChannelFields inherited from class org.eclipse.jetty.server.HttpOutput.NestedChannelWriteCB
_callbackFields inherited from class org.eclipse.jetty.server.HttpOutput.ChannelWriteCB
_lastFields inherited from interface org.eclipse.jetty.util.thread.Invocable
__nonBlocking -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidInvoked when the overall task has completed with a failure.protected IteratingCallback.Actionprocess()Method called byIteratingCallback.iterate()to process the sub task.Methods inherited from class org.eclipse.jetty.server.HttpOutput.NestedChannelWriteCB
onCompleteSuccessMethods inherited from class org.eclipse.jetty.server.HttpOutput.ChannelWriteCB
getInvocationTypeMethods inherited from class org.eclipse.jetty.util.IteratingCallback
close, failed, isClosed, isFailed, isSucceeded, iterate, reset, succeeded, toString
-
Field Details
-
_in
-
_buffer
-
_eof
private boolean _eof -
_closed
private boolean _closed
-
-
Constructor Details
-
ReadableByteChannelWritingCB
ReadableByteChannelWritingCB(ReadableByteChannel in, Callback callback)
-
-
Method Details
-
process
Description copied from class:IteratingCallbackMethod called byIteratingCallback.iterate()to process the sub task.Implementations must start the asynchronous execution of the sub task (if any) and return an appropriate action:
IteratingCallback.Action.IDLEwhen no sub tasks are available for execution but the overall job is not completed yetIteratingCallback.Action.SCHEDULEDwhen the sub task asynchronous execution has been startedIteratingCallback.Action.SUCCEEDEDwhen the overall job is completed
- Specified by:
processin classIteratingCallback- Returns:
- the appropriate Action
- Throws:
Exception
-
onCompleteFailure
Description copied from class:IteratingCallbackInvoked when the overall task has completed with a failure.- Overrides:
onCompleteFailurein classHttpOutput.NestedChannelWriteCB- Parameters:
x- the throwable to indicate cause of failure- See Also:
-