Class DemandingFlusher

java.lang.Object
org.eclipse.jetty.util.IteratingCallback
org.eclipse.jetty.websocket.core.internal.DemandingFlusher
All Implemented Interfaces:
Callback, Invocable, DemandChain
Direct Known Subclasses:
FragmentExtension.FragmentingDemandingFlusher

public abstract class DemandingFlusher extends IteratingCallback implements DemandChain

This flusher can be used to mutated and fragment Frames and forwarded them on towards the application using the IncomingFrames provided in the constructor. This can split a single incoming frame into n Frames which are passed on to the IncomingFrames one at a time.

The asynchronous operation performed by this IteratingCallback is demanding from upper layer after which onFrame(Frame, Callback) will called with the new content.

This flusher relies on the interception of demand, and because of this it can only be used in an Extension which implements the DemandChain interface. The methods of DemandChain from the Extension must be forwarded to this flusher.