Package org.eclipse.jetty.ee10.proxy
Class AsyncMiddleManServlet.ProxyWriter
java.lang.Object
org.eclipse.jetty.util.IteratingCallback
org.eclipse.jetty.ee10.proxy.AsyncMiddleManServlet.ProxyWriter
- All Implemented Interfaces:
jakarta.servlet.WriteListener
,EventListener
,Callback
,Invocable
- Enclosing class:
AsyncMiddleManServlet
protected class AsyncMiddleManServlet.ProxyWriter
extends IteratingCallback
implements jakarta.servlet.WriteListener
-
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
ConstructorsModifierConstructorDescriptionprotected
ProxyWriter
(jakarta.servlet.http.HttpServletRequest clientRequest, Response serverResponse) -
Method Summary
Modifier and TypeMethodDescriptionboolean
offer
(ByteBuffer content, Callback callback) protected void
onCompleteFailure
(Throwable failure) Invoked when the overall task has completed with a failure.void
protected void
Invoked when one task has completed successfully, either by the caller thread or by the processing thread.void
protected IteratingCallback.Action
process()
Method called byIteratingCallback.iterate()
to process the asynchronous sub-task.Methods inherited from class org.eclipse.jetty.util.IteratingCallback
abort, close, failed, isAborted, isClosed, isFailed, isSucceeded, iterate, onCompleteSuccess, reset, succeeded, toString
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
Methods inherited from interface org.eclipse.jetty.util.thread.Invocable
getInvocationType
-
Constructor Details
-
ProxyWriter
protected ProxyWriter(jakarta.servlet.http.HttpServletRequest clientRequest, Response serverResponse)
-
-
Method Details
-
offer
-
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
-
onSuccess
protected void onSuccess()Description copied from class:IteratingCallback
Invoked when one task has completed successfully, either by the caller thread or by the processing thread. This invocation is always serialized w.r.t the execution ofIteratingCallback.process()
.This method is not invoked when a call to
IteratingCallback.abort(Throwable)
is made before theIteratingCallback.succeeded()
callback happens.- Overrides:
onSuccess
in classIteratingCallback
-
onCompleteFailure
Description copied from class:IteratingCallback
Invoked when the overall task has completed with a failure.- Overrides:
onCompleteFailure
in classIteratingCallback
- Parameters:
failure
- the throwable to indicate cause of failure- See Also:
-
onWritePossible
public void onWritePossible()- Specified by:
onWritePossible
in interfacejakarta.servlet.WriteListener
-
onError
- Specified by:
onError
in interfacejakarta.servlet.WriteListener
-