Package org.eclipse.jetty.io.internal
Class ContentCopier
java.lang.Object
org.eclipse.jetty.util.IteratingCallback
org.eclipse.jetty.util.IteratingNestedCallback
org.eclipse.jetty.io.internal.ContentCopier
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.jetty.util.IteratingCallback
IteratingCallback.Action
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.Callback
Callback.Completable, Callback.Completing, Callback.Nested
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.thread.Invocable
Invocable.Callable, Invocable.InvocationType, Invocable.ReadyTask, Invocable.Task
-
Field Summary
Fields inherited from interface org.eclipse.jetty.util.thread.Invocable
__nonBlocking
-
Constructor Summary
ConstructorDescriptionContentCopier
(Content.Source source, Content.Sink sink, Content.Chunk.Processor chunkProcessor, Callback callback) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Method to invoke when the asynchronous sub-task fails, or to fail the overall asynchronous task and therefore terminate the iteration.protected IteratingCallback.Action
process()
Method called byIteratingCallback.iterate()
to process the asynchronous sub-task.void
Method to invoke when the asynchronous sub-task succeeds.Methods inherited from class org.eclipse.jetty.util.IteratingNestedCallback
onCompleteFailure, onCompleteSuccess, toString
Methods inherited from class org.eclipse.jetty.util.IteratingCallback
abort, close, isAborted, isClosed, isFailed, isSucceeded, iterate, reset
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.eclipse.jetty.util.Callback
completeWith
-
Constructor Details
-
ContentCopier
public ContentCopier(Content.Source source, Content.Sink sink, Content.Chunk.Processor chunkProcessor, Callback callback)
-
-
Method Details
-
getInvocationType
- Specified by:
getInvocationType
in interfaceInvocable
- Overrides:
getInvocationType
in classIteratingNestedCallback
- Returns:
- The InvocationType of this object
-
process
Description copied from class:IteratingCallback
Method called byIteratingCallback.iterate()
to process the asynchronous sub-task.Implementations must initiate the asynchronous execution of the sub-task (if any) and return an appropriate action:
IteratingCallback.Action.IDLE
when no sub tasks are available for execution but the overall job is not completed yetIteratingCallback.Action.SCHEDULED
when the sub task asynchronous execution has been startedIteratingCallback.Action.SUCCEEDED
when the overall job is completed
- Specified by:
process
in classIteratingCallback
- Returns:
- the appropriate Action
- Throws:
Throwable
- if the sub-task processing throws
-
succeeded
public void succeeded()Description copied from class:IteratingCallback
Method to invoke when the asynchronous sub-task succeeds.Subclasses that override this method must always remember to call
super.succeeded()
.- Specified by:
succeeded
in interfaceCallback
- Overrides:
succeeded
in classIteratingCallback
- See Also:
-
failed
Description copied from class:IteratingCallback
Method to invoke when the asynchronous sub-task fails, or to fail the overall asynchronous task and therefore terminate the iteration.Subclasses that override this method must always remember to call
super.failed(Throwable)
.Eventually,
IteratingCallback.onCompleteFailure(Throwable)
is called, either by the caller thread or by the processing thread.- Specified by:
failed
in interfaceCallback
- Overrides:
failed
in classIteratingCallback
- Parameters:
x
- the reason for the operation failure- See Also:
-