Class ExtensionStack

  • All Implemented Interfaces:
    org.eclipse.jetty.util.component.Container, org.eclipse.jetty.util.component.Destroyable, org.eclipse.jetty.util.component.Dumpable, org.eclipse.jetty.util.component.LifeCycle, org.eclipse.jetty.websocket.api.extensions.IncomingFrames, org.eclipse.jetty.websocket.api.extensions.OutgoingFrames

    @ManagedObject("Extension Stack")
    public class ExtensionStack
    extends org.eclipse.jetty.util.component.ContainerLifeCycle
    implements org.eclipse.jetty.websocket.api.extensions.IncomingFrames, org.eclipse.jetty.websocket.api.extensions.OutgoingFrames
    Represents the stack of Extensions.
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

        org.eclipse.jetty.util.component.AbstractLifeCycle.AbstractLifeCycleListener
      • Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Container

        org.eclipse.jetty.util.component.Container.InheritedListener, org.eclipse.jetty.util.component.Container.Listener
      • Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle

        org.eclipse.jetty.util.component.LifeCycle.Listener
    • Field Summary

      • Fields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

        FAILED, RUNNING, STARTED, STARTING, STOPPED, STOPPING
      • Fields inherited from interface org.eclipse.jetty.util.component.Dumpable

        KEY
    • Constructor Summary

      Constructors 
      Constructor Description
      ExtensionStack​(org.eclipse.jetty.websocket.api.extensions.ExtensionFactory factory)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void configure​(Generator generator)  
      void configure​(Parser parser)  
      protected void doStart()  
      void dump​(Appendable out, String indent)  
      List<org.eclipse.jetty.websocket.api.extensions.Extension> getExtensions()  
      List<org.eclipse.jetty.websocket.api.extensions.ExtensionConfig> getNegotiatedExtensions()
      Get the list of negotiated extensions, each entry being a full "name; params" extension configuration
      org.eclipse.jetty.websocket.api.extensions.IncomingFrames getNextIncoming()  
      org.eclipse.jetty.websocket.api.extensions.OutgoingFrames getNextOutgoing()  
      boolean hasNegotiatedExtensions()  
      void incomingError​(Throwable e)  
      void incomingFrame​(org.eclipse.jetty.websocket.api.extensions.Frame frame)  
      void negotiate​(List<org.eclipse.jetty.websocket.api.extensions.ExtensionConfig> configs)
      Perform the extension negotiation.
      void outgoingFrame​(org.eclipse.jetty.websocket.api.extensions.Frame frame, org.eclipse.jetty.websocket.api.WriteCallback callback, org.eclipse.jetty.websocket.api.BatchMode batchMode)  
      void setNextIncoming​(org.eclipse.jetty.websocket.api.extensions.IncomingFrames nextIncoming)  
      void setNextOutgoing​(org.eclipse.jetty.websocket.api.extensions.OutgoingFrames nextOutgoing)  
      void setPolicy​(org.eclipse.jetty.websocket.api.WebSocketPolicy policy)  
      String toString()  
      • Methods inherited from class org.eclipse.jetty.util.component.ContainerLifeCycle

        addBean, addBean, addBean, addEventListener, addManaged, contains, destroy, doStop, dump, dump, dump, dump, dumpBeans, dumpObject, dumpObjects, dumpStdErr, dumpThis, getBean, getBeans, getBeans, getContainedBeans, getContainedBeans, isAuto, isManaged, isUnmanaged, manage, removeBean, removeBeans, removeEventListener, setBeans, setStopTimeout, start, stop, unmanage, updateBean, updateBean, updateBeans
      • Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

        addLifeCycleListener, getState, getState, getStopTimeout, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop
    • Constructor Detail

      • ExtensionStack

        public ExtensionStack​(org.eclipse.jetty.websocket.api.extensions.ExtensionFactory factory)
    • Method Detail

      • configure

        public void configure​(Generator generator)
      • configure

        public void configure​(Parser parser)
      • doStart

        protected void doStart()
                        throws Exception
        Overrides:
        doStart in class org.eclipse.jetty.util.component.ContainerLifeCycle
        Throws:
        Exception
      • dump

        public void dump​(Appendable out,
                         String indent)
                  throws IOException
        Specified by:
        dump in interface org.eclipse.jetty.util.component.Dumpable
        Overrides:
        dump in class org.eclipse.jetty.util.component.ContainerLifeCycle
        Throws:
        IOException
      • getExtensions

        @ManagedAttribute(name="Extension List",
                          readonly=true)
        public List<org.eclipse.jetty.websocket.api.extensions.Extension> getExtensions()
      • getNegotiatedExtensions

        public List<org.eclipse.jetty.websocket.api.extensions.ExtensionConfig> getNegotiatedExtensions()
        Get the list of negotiated extensions, each entry being a full "name; params" extension configuration
        Returns:
        list of negotiated extensions
      • getNextIncoming

        @ManagedAttribute(name="Next Incoming Frames Handler",
                          readonly=true)
        public org.eclipse.jetty.websocket.api.extensions.IncomingFrames getNextIncoming()
      • getNextOutgoing

        @ManagedAttribute(name="Next Outgoing Frames Handler",
                          readonly=true)
        public org.eclipse.jetty.websocket.api.extensions.OutgoingFrames getNextOutgoing()
      • hasNegotiatedExtensions

        public boolean hasNegotiatedExtensions()
      • incomingError

        public void incomingError​(Throwable e)
        Specified by:
        incomingError in interface org.eclipse.jetty.websocket.api.extensions.IncomingFrames
      • incomingFrame

        public void incomingFrame​(org.eclipse.jetty.websocket.api.extensions.Frame frame)
        Specified by:
        incomingFrame in interface org.eclipse.jetty.websocket.api.extensions.IncomingFrames
      • negotiate

        public void negotiate​(List<org.eclipse.jetty.websocket.api.extensions.ExtensionConfig> configs)
        Perform the extension negotiation.

        For the list of negotiated extensions, use getNegotiatedExtensions()

        Parameters:
        configs - the configurations being requested
      • outgoingFrame

        public void outgoingFrame​(org.eclipse.jetty.websocket.api.extensions.Frame frame,
                                  org.eclipse.jetty.websocket.api.WriteCallback callback,
                                  org.eclipse.jetty.websocket.api.BatchMode batchMode)
        Specified by:
        outgoingFrame in interface org.eclipse.jetty.websocket.api.extensions.OutgoingFrames
      • setNextIncoming

        public void setNextIncoming​(org.eclipse.jetty.websocket.api.extensions.IncomingFrames nextIncoming)
      • setNextOutgoing

        public void setNextOutgoing​(org.eclipse.jetty.websocket.api.extensions.OutgoingFrames nextOutgoing)
      • setPolicy

        public void setPolicy​(org.eclipse.jetty.websocket.api.WebSocketPolicy policy)
      • toString

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