Class ExtensionStack
- java.lang.Object
-
- org.eclipse.jetty.util.component.AbstractLifeCycle
-
- org.eclipse.jetty.util.component.ContainerLifeCycle
-
- org.eclipse.jetty.websocket.common.extensions.ExtensionStack
-
- All Implemented Interfaces:
Container,Destroyable,Dumpable,Dumpable.DumpableContainer,LifeCycle,IncomingFrames,OutgoingFrames
@ManagedObject("Extension Stack") public class ExtensionStack extends ContainerLifeCycle implements IncomingFrames, OutgoingFrames
Represents the stack of Extensions.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
AbstractLifeCycle.AbstractLifeCycleListener
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Container
Container.InheritedListener, Container.Listener
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Dumpable
Dumpable.DumpableContainer
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle
LifeCycle.Listener
-
-
Constructor Summary
Constructors Constructor Description ExtensionStack(ExtensionFactory factory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidconfigure(Generator generator)voidconfigure(Parser parser)protected voiddoStart()Starts the managed lifecycle beans in the order they were added.java.lang.StringdumpSelf()The description of this/self found in the dump.java.util.List<Extension>getExtensions()java.util.List<ExtensionConfig>getNegotiatedExtensions()Get the list of negotiated extensions, each entry being a full "name; params" extension configurationIncomingFramesgetNextIncoming()OutgoingFramesgetNextOutgoing()booleanhasNegotiatedExtensions()voidincomingFrame(Frame frame)Process the incoming frame.voidnegotiate(java.util.List<ExtensionConfig> configs)Perform the extension negotiation.voidoutgoingFrame(Frame frame, WriteCallback callback, BatchMode batchMode)A frame, and optional callback, intended for the network layer.voidsetNextIncoming(IncomingFrames nextIncoming)voidsetNextOutgoing(OutgoingFrames nextOutgoing)voidsetPolicy(WebSocketPolicy policy)java.lang.StringtoString()-
Methods inherited from class org.eclipse.jetty.util.component.ContainerLifeCycle
addBean, addBean, addEventListener, addManaged, contains, destroy, doStop, dump, 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
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.jetty.util.component.Dumpable.DumpableContainer
isDumpable
-
-
-
-
Constructor Detail
-
ExtensionStack
public ExtensionStack(ExtensionFactory factory)
-
-
Method Detail
-
configure
public void configure(Generator generator)
-
configure
public void configure(Parser parser)
-
doStart
protected void doStart() throws java.lang.ExceptionDescription copied from class:ContainerLifeCycleStarts the managed lifecycle beans in the order they were added.- Overrides:
doStartin classContainerLifeCycle- Throws:
java.lang.Exception
-
dumpSelf
public java.lang.String dumpSelf()
Description copied from interface:DumpableThe description of this/self found in the dump. Allows for alternative representation of Object other then .toString() where the long form output of toString() is represented in a cleaner way within the dump infrastructure.
-
getExtensions
@ManagedAttribute(name="Extension List", readonly=true) public java.util.List<Extension> getExtensions()
-
getNegotiatedExtensions
public java.util.List<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 IncomingFrames getNextIncoming()
-
getNextOutgoing
@ManagedAttribute(name="Next Outgoing Frames Handler", readonly=true) public OutgoingFrames getNextOutgoing()
-
hasNegotiatedExtensions
public boolean hasNegotiatedExtensions()
-
incomingFrame
public void incomingFrame(Frame frame)
Description copied from interface:IncomingFramesProcess 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.
- Specified by:
incomingFramein interfaceIncomingFrames- Parameters:
frame- the frame to process
-
negotiate
public void negotiate(java.util.List<ExtensionConfig> configs)
Perform the extension negotiation.For the list of negotiated extensions, use
getNegotiatedExtensions()- Parameters:
configs- the configurations being requested
-
outgoingFrame
public void outgoingFrame(Frame frame, WriteCallback callback, BatchMode batchMode)
Description copied from interface:OutgoingFramesA 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:
outgoingFramein interfaceOutgoingFrames- Parameters:
frame- the frame to eventually write to the network layer.callback- the callback to notify when the frame is written.batchMode- the batch mode requested by the sender.
-
setNextIncoming
public void setNextIncoming(IncomingFrames nextIncoming)
-
setNextOutgoing
public void setNextOutgoing(OutgoingFrames nextOutgoing)
-
setPolicy
public void setPolicy(WebSocketPolicy policy)
-
toString
public java.lang.String toString()
- Overrides:
toStringin classAbstractLifeCycle
-
-