Package org.eclipse.jetty.io
Class WriteFlusher
java.lang.Object
org.eclipse.jetty.io.WriteFlusher
Deprecated.
The Eclipse Jetty and Apache Felix Http Jetty packages are no longer supported.
A Utility class to help implement
EndPoint.write(Callback, ByteBuffer...) by calling
EndPoint.flush(ByteBuffer...) until all content is written.
The abstract method onIncompleteFlush() is called when not all content has been written after a call to
flush and should organize for the completeWrite() method to be called when a subsequent call to flush
should be able to make more progress.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceDeprecated.The Eclipse Jetty and Apache Felix Http Jetty packages are no longer supported. -
Method Summary
Modifier and TypeMethodDescriptionvoidDeprecated.Complete a write that has not completed and that calledonIncompleteFlush()to request a call to this method when a call toEndPoint.flush(ByteBuffer...)is likely to be able to progress.Deprecated.booleanDeprecated.voidonClose()Deprecated.booleanDeprecated.Notify the flusher of a failureDeprecated.toString()Deprecated.voidwrite(Callback callback, ByteBuffer... buffers) Deprecated.Tries to switch state to WRITING.
-
Method Details
-
getCallbackInvocationType
Deprecated. -
write
Deprecated.Tries to switch state to WRITING. If successful it writes the given buffers to the EndPoint. If state transition fails it will fail the callback and leave the WriteFlusher in a terminal FAILED state. If not all buffers can be written in one go it creates a newPendingStateobject to preserve the state and then callsonIncompleteFlush(). The remaining buffers will be written incompleteWrite(). If all buffers have been written it calls callback.complete().- Parameters:
callback- the callback to call on either failed or completebuffers- the buffers to flush to the endpoint- Throws:
WritePendingException- if unable to write due to prior pending write
-
completeWrite
public void completeWrite()Deprecated.Complete a write that has not completed and that calledonIncompleteFlush()to request a call to this method when a call toEndPoint.flush(ByteBuffer...)is likely to be able to progress. It tries to switch from PENDING to COMPLETING. If state transition fails, then it does nothing as the callback should have been already failed. That's because the only way to switch from PENDING outside this method isonFail(Throwable)oronClose() -
onFail
Deprecated.Notify the flusher of a failure- Parameters:
cause- The cause of the failure- Returns:
- true if the flusher passed the failure to a
Callbackinstance
-
onClose
public void onClose()Deprecated. -
isPending
public boolean isPending()Deprecated. -
toStateString
Deprecated. -
toString
Deprecated.
-