@UnstableApi
public interface Http2Stream
Modifier and Type | Interface and Description |
---|---|
static class |
Http2Stream.State
The allowed states of an HTTP2 stream.
|
Modifier and Type | Method and Description |
---|---|
Http2Stream |
close()
Closes the stream.
|
Http2Stream |
closeLocalSide()
Closes the local side of this stream.
|
Http2Stream |
closeRemoteSide()
Closes the remote side of this stream.
|
Http2Stream |
forEachChild(Http2StreamVisitor visitor)
Provide a means of iterating over the children of this stream.
|
<V> V |
getProperty(Http2Connection.PropertyKey key)
Returns application-defined data if any was associated with this stream.
|
Http2Stream |
headersSent()
Indicates that headers has been sent to the remote on this stream.
|
int |
id()
Gets the unique identifier for this stream within the connection.
|
boolean |
isDescendantOf(Http2Stream stream)
Indicates whether or not this stream is a descendant in the priority tree from the given stream.
|
boolean |
isHeadersSent()
Indicates whether or not headers was sent to the remote endpoint.
|
boolean |
isLeaf()
Indicates whether or not this is a leaf node (i.e.
|
boolean |
isPushPromiseSent()
Indicates whether or not a push promise was sent to the remote endpoint.
|
boolean |
isResetSent()
Indicates whether a
RST_STREAM frame has been sent from the local endpoint for this stream. |
boolean |
isRoot()
Indicates whether or not this stream is the root node of the priority tree.
|
int |
numChildren()
Returns the number of child streams directly dependent on this stream.
|
Http2Stream |
open(boolean halfClosed)
Opens this stream, making it available via
Http2Connection.forEachActiveStream(Http2StreamVisitor) and
transition state to:
Http2Stream.State.OPEN if state() is Http2Stream.State.IDLE and halfClosed is false . |
Http2Stream |
parent()
The parent (i.e. the node in the priority tree on which this node depends), or
null
if this is the root node (i.e. the connection, itself). |
Http2Stream |
pushPromiseSent()
Indicates that a push promise was sent to the remote endpoint.
|
<V> V |
removeProperty(Http2Connection.PropertyKey key)
Returns and removes application-defined data if any was associated with this stream.
|
Http2Stream |
resetSent()
Sets the flag indicating that a
RST_STREAM frame has been sent from the local endpoint
for this stream. |
Http2Stream |
setPriority(int parentStreamId,
short weight,
boolean exclusive)
Updates an priority for this stream.
|
<V> V |
setProperty(Http2Connection.PropertyKey key,
V value)
Associates the application-defined data with this stream.
|
Http2Stream.State |
state()
Gets the state of this stream.
|
short |
weight()
Returns weight assigned to the dependency with the parent.
|
int id()
Http2Stream.State state()
Http2Stream open(boolean halfClosed) throws Http2Exception
Http2Connection.forEachActiveStream(Http2StreamVisitor)
and
transition state to:
Http2Stream.State.OPEN
if state()
is Http2Stream.State.IDLE
and halfClosed
is false
.Http2Stream.State.HALF_CLOSED_LOCAL
if state()
is Http2Stream.State.IDLE
and halfClosed
is true
and the stream is local.Http2Stream.State.HALF_CLOSED_REMOTE
if state()
is Http2Stream.State.IDLE
and halfClosed
is true
and the stream is remote.Http2Stream.State.RESERVED_LOCAL
if state()
is Http2Stream.State.HALF_CLOSED_REMOTE
.Http2Stream.State.RESERVED_REMOTE
if state()
is Http2Stream.State.HALF_CLOSED_LOCAL
.Http2Exception
Http2Stream close()
Http2Stream closeLocalSide()
Http2Stream closeRemoteSide()
boolean isResetSent()
RST_STREAM
frame has been sent from the local endpoint for this stream.Http2Stream resetSent()
RST_STREAM
frame has been sent from the local endpoint
for this stream. This does not affect the stream state.<V> V setProperty(Http2Connection.PropertyKey key, V value)
key
, or null
if there was none.<V> V getProperty(Http2Connection.PropertyKey key)
<V> V removeProperty(Http2Connection.PropertyKey key)
Http2Stream setPriority(int parentStreamId, short weight, boolean exclusive) throws Http2Exception
parentStreamId
- the parent stream that given stream should depend on. May be 0
,
if the stream has no dependencies and should be an immediate child of the
connection.weight
- the weight to be assigned to this stream relative to its parent. This value
must be between 1 and 256 (inclusive)exclusive
- indicates that the stream should be the exclusive dependent on its parent.
This only applies if the stream has a parent.Http2Exception
boolean isRoot()
boolean isLeaf()
numChildren()
is 0) of the priority tree.short weight()
Http2Stream parent()
null
if this is the root node (i.e. the connection, itself).boolean isDescendantOf(Http2Stream stream)
int numChildren()
Http2Stream forEachChild(Http2StreamVisitor visitor) throws Http2Exception
visitor
- The visitor which will visit each child stream.null
if iteration went past the end.Http2Exception
Http2Stream headersSent()
boolean isHeadersSent()
Http2Stream pushPromiseSent()
boolean isPushPromiseSent()
Copyright © 2008–2017 The Netty Project. All rights reserved.