@ManagedObject(value="Extension Stack") public class ExtensionStack extends ContainerLifeCycle implements IncomingFrames, OutgoingFrames
AbstractLifeCycle.AbstractLifeCycleListenerContainer.InheritedListener, Container.ListenerLifeCycle.Listener| Constructor and Description |
|---|
ExtensionStack(ExtensionFactory factory) |
| Modifier and Type | Method and Description |
|---|---|
void |
configure(Generator generator) |
void |
configure(Parser parser) |
String |
dumpSelf()
The description of this/self found in the dump.
|
List<Extension> |
getExtensions() |
List<ExtensionConfig> |
getNegotiatedExtensions()
Get the list of negotiated extensions, each entry being a full "name; params" extension configuration
|
IncomingFrames |
getNextIncoming() |
OutgoingFrames |
getNextOutgoing() |
boolean |
hasNegotiatedExtensions() |
void |
incomingFrame(Frame frame)
Process the incoming frame.
|
void |
negotiate(List<ExtensionConfig> configs)
Perform the extension negotiation.
|
void |
outgoingFrame(Frame frame,
WriteCallback callback,
BatchMode batchMode)
A frame, and optional callback, intended for the network layer.
|
void |
setNextIncoming(IncomingFrames nextIncoming) |
void |
setNextOutgoing(OutgoingFrames nextOutgoing) |
void |
setPolicy(WebSocketPolicy policy) |
String |
toString() |
addBean, addBean, addEventListener, addManaged, contains, destroy, dump, dump, dump, dump, dump, dumpObject, dumpStdErr, getBean, getBeans, getBeans, getContainedBeans, isAuto, isManaged, isUnmanaged, manage, removeBean, removeBeans, removeEventListener, setBeans, setStopTimeout, unmanage, updateBean, updateBean, updateBeansaddLifeCycleListener, getState, getState, getStopTimeout, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stopequals, getClass, hashCode, notify, notifyAll, wait, wait, waitdumpContainer, dumpIterable, dumpMapEntries, dumpObjects, namedpublic ExtensionStack(ExtensionFactory factory)
public void configure(Generator generator)
public void configure(Parser parser)
public String dumpSelf()
Dumpable@ManagedAttribute(name="Extension List", readonly=true) public List<Extension> getExtensions()
public List<ExtensionConfig> getNegotiatedExtensions()
@ManagedAttribute(name="Next Incoming Frames Handler", readonly=true) public IncomingFrames getNextIncoming()
@ManagedAttribute(name="Next Outgoing Frames Handler", readonly=true) public OutgoingFrames getNextOutgoing()
public boolean hasNegotiatedExtensions()
public void incomingFrame(Frame frame)
IncomingFramesNote: 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.
incomingFrame in interface IncomingFramesframe - the frame to processpublic void negotiate(List<ExtensionConfig> configs)
For the list of negotiated extensions, use getNegotiatedExtensions()
configs - the configurations being requestedpublic void outgoingFrame(Frame frame, WriteCallback callback, BatchMode batchMode)
OutgoingFramesNote: 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.
outgoingFrame in interface OutgoingFramesframe - 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.public void setNextIncoming(IncomingFrames nextIncoming)
public void setNextOutgoing(OutgoingFrames nextOutgoing)
public void setPolicy(WebSocketPolicy policy)
public String toString()
toString in class AbstractLifeCycleCopyright © 2010 - 2020 Adobe. All Rights Reserved