Class FrameFlusher

java.lang.Object
org.eclipse.jetty.util.IteratingCallback
org.eclipse.jetty.websocket.common.io.FrameFlusher
All Implemented Interfaces:
org.eclipse.jetty.util.Callback, org.eclipse.jetty.util.thread.Invocable
Direct Known Subclasses:
AbstractWebSocketConnection.Flusher

public class FrameFlusher extends org.eclipse.jetty.util.IteratingCallback
  • Field Details

    • FLUSH_FRAME

      public static final BinaryFrame FLUSH_FRAME
    • LOG

      private static final org.eclipse.jetty.util.log.Logger LOG
    • bufferPool

      private final org.eclipse.jetty.io.ByteBufferPool bufferPool
    • endPoint

      private final org.eclipse.jetty.io.EndPoint endPoint
    • bufferSize

      private final int bufferSize
    • generator

      private final Generator generator
    • maxGather

      private final int maxGather
    • queue

      private final Deque<FrameFlusher.FrameEntry> queue
    • entries

      private final List<FrameFlusher.FrameEntry> entries
    • buffers

      private final List<ByteBuffer> buffers
    • messagesOut

      private final LongAdder messagesOut
    • bytesOut

      private final LongAdder bytesOut
    • closed

      private boolean closed
    • canEnqueue

      private boolean canEnqueue
    • terminated

      private Throwable terminated
    • aggregate

      private ByteBuffer aggregate
    • batchMode

      private BatchMode batchMode
  • Constructor Details

    • FrameFlusher

      public FrameFlusher(org.eclipse.jetty.io.ByteBufferPool bufferPool, Generator generator, org.eclipse.jetty.io.EndPoint endPoint, int bufferSize, int maxGather)
  • Method Details

    • enqueue

      public boolean enqueue(Frame frame, WriteCallback callback, BatchMode batchMode)
    • process

      protected org.eclipse.jetty.util.IteratingCallback.Action process() throws Throwable
      Specified by:
      process in class org.eclipse.jetty.util.IteratingCallback
      Throws:
      Throwable
    • batch

      private org.eclipse.jetty.util.IteratingCallback.Action batch()
    • flush

      private org.eclipse.jetty.util.IteratingCallback.Action flush()
    • getQueueSize

      private int getQueueSize()
    • succeeded

      public void succeeded()
      Specified by:
      succeeded in interface org.eclipse.jetty.util.Callback
      Overrides:
      succeeded in class org.eclipse.jetty.util.IteratingCallback
    • succeedEntries

      private void succeedEntries()
    • onCompleteFailure

      public void onCompleteFailure(Throwable failure)
      Overrides:
      onCompleteFailure in class org.eclipse.jetty.util.IteratingCallback
    • releaseAggregate

      private void releaseAggregate()
    • terminate

      void terminate(Throwable cause)
    • notifyCallbackSuccess

      protected void notifyCallbackSuccess(WriteCallback callback)
    • notifyCallbackFailure

      protected void notifyCallbackFailure(WriteCallback callback, Throwable failure)
    • getMessagesOut

      public long getMessagesOut()
    • getBytesOut

      public long getBytesOut()
    • toString

      public String toString()
      Overrides:
      toString in class org.eclipse.jetty.util.IteratingCallback