Class FragmentExtension

java.lang.Object
org.eclipse.jetty.websocket.core.AbstractExtension
org.eclipse.jetty.websocket.core.internal.FragmentExtension
All Implemented Interfaces:
Closeable, AutoCloseable, Extension, IncomingFrames, DemandChain, OutgoingFrames

public class FragmentExtension extends AbstractExtension implements DemandChain
Fragment Extension
  • Constructor Details

    • FragmentExtension

      public FragmentExtension()
  • Method Details

    • demand

      public void demand(long n)
      Specified by:
      demand in interface DemandChain
    • setNextDemand

      public void setNextDemand(LongConsumer nextDemand)
      Specified by:
      setNextDemand in interface DemandChain
    • getName

      public String getName()
      Description copied from interface: Extension
      The Sec-WebSocket-Extensions name for this extension.

      Also known as the extension-token per Section 9.1. Negotiating Extensions.

      Specified by:
      getName in interface Extension
      Overrides:
      getName in class AbstractExtension
      Returns:
      the name of the extension
    • onFrame

      public void onFrame(Frame frame, Callback callback)
      Description copied from interface: IncomingFrames

      Process the incoming frame.

      Note: if you need to hang onto any information from the frame, be sure to copy it, as the information contained in the Frame will be released and/or reused by the implementation.

      Failure of the callback will propagate the failure back to the CoreSession to fail the connection and attempt to send a close Frame if one has not been sent.

      Specified by:
      onFrame in interface IncomingFrames
      Overrides:
      onFrame in class AbstractExtension
      Parameters:
      frame - the frame to process.
      callback - the read completion.
    • sendFrame

      public void sendFrame(Frame frame, Callback callback, boolean batch)
      Description copied from interface: OutgoingFrames
      A frame, and optional callback, intended for the network layer.

      Note: the frame can undergo many transformations in the various layers and extensions present in the implementation.

      If you are implementing a mutation, you are obliged to handle the incoming WriteCallback appropriately.

      Specified by:
      sendFrame in interface OutgoingFrames
      Overrides:
      sendFrame in class AbstractExtension
      Parameters:
      frame - the frame to eventually write to the network layer.
      callback - the callback to notify when the frame is written.
      batch - the batch mode requested by the sender.
    • init

      public void init(ExtensionConfig config, WebSocketComponents components)
      Specified by:
      init in interface Extension
      Overrides:
      init in class AbstractExtension