Package org.eclipse.jetty.http2
Class HTTP2Session.ControlEntry
- java.lang.Object
-
- org.eclipse.jetty.util.Callback.Completing
-
- org.eclipse.jetty.util.Callback.Nested
-
- org.eclipse.jetty.http2.HTTP2Flusher.Entry
-
- org.eclipse.jetty.http2.HTTP2Session.ControlEntry
-
- All Implemented Interfaces:
org.eclipse.jetty.util.Callback,org.eclipse.jetty.util.thread.Invocable
- Enclosing class:
- HTTP2Session
private class HTTP2Session.ControlEntry extends HTTP2Flusher.Entry
-
-
Field Summary
Fields Modifier and Type Field Description private intframeBytes-
Fields inherited from class org.eclipse.jetty.http2.HTTP2Flusher.Entry
frame, stream
-
-
Constructor Summary
Constructors Modifier Constructor Description privateControlEntry(Frame frame, IStream stream, org.eclipse.jetty.util.Callback callback)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidbeforeSend()Performs actions just before writing the frame to the network.protected booleangenerate(org.eclipse.jetty.io.ByteBufferPool.Lease lease)intgetFrameBytesGenerated()(package private) booleanhasHighPriority()longonFlushed(long bytes)voidsucceeded()-
Methods inherited from class org.eclipse.jetty.http2.HTTP2Flusher.Entry
commit, failed, getDataBytesRemaining, toString
-
-
-
-
Method Detail
-
getFrameBytesGenerated
public int getFrameBytesGenerated()
- Specified by:
getFrameBytesGeneratedin classHTTP2Flusher.Entry
-
generate
protected boolean generate(org.eclipse.jetty.io.ByteBufferPool.Lease lease) throws HpackException- Specified by:
generatein classHTTP2Flusher.Entry- Throws:
HpackException
-
onFlushed
public long onFlushed(long bytes)
- Specified by:
onFlushedin classHTTP2Flusher.Entry
-
beforeSend
private void beforeSend()
Performs actions just before writing the frame to the network.
Some frame, when sent over the network, causes the receiver to react and send back frames that may be processed by the original sender *before*
succeeded()is called.If the action to perform updates some state, this update may not be seen by the received frames and cause errors.
For example, suppose the action updates the stream window to a larger value; the sender sends the frame; the receiver is now entitled to send back larger data; when the data is received by the original sender, the action may have not been performed yet, causing the larger data to be rejected, when it should have been accepted.
-
hasHighPriority
boolean hasHighPriority()
- Overrides:
hasHighPriorityin classHTTP2Flusher.Entry
-
succeeded
public void succeeded()
- Specified by:
succeededin interfaceorg.eclipse.jetty.util.Callback- Overrides:
succeededin classorg.eclipse.jetty.util.Callback.Nested
-
-