class Protocol::HTTP2::PushPromiseFrame
The PUSH_PROMISE frame is used to notify the peer endpoint in advance of streams the sender intends to initiate. The PUSH_PROMISE frame includes the unsigned 31-bit identifier of the stream the endpoint plans to create along with a set of headers that provide additional context for the stream.
---------------
|Pad Length? (8)| -
————------------------------------------------------
|R| Promised Stream
ID (31) | -
—————————–-------------------------------
| Header Block Fragment (*) … ---------------------------------------------------------------
| Padding (*) … ---------------------------------------------------------------
Constants
- FORMAT
- TYPE
Public Instance Methods
apply(connection)
click to toggle source
# File lib/protocol/http2/push_promise_frame.rb, line 57 def apply(connection) connection.receive_push_promise(self) end
pack(stream_id, data, *arguments, **options)
click to toggle source
Calls superclass method
Protocol::HTTP2::Frame#pack
# File lib/protocol/http2/push_promise_frame.rb, line 53 def pack(stream_id, data, *arguments, **options) super([stream_id].pack(FORMAT) + data, *arguments, **options) end
unpack()
click to toggle source
Calls superclass method
Protocol::HTTP2::Frame#unpack
# File lib/protocol/http2/push_promise_frame.rb, line 45 def unpack data = super stream_id = data.unpack1(FORMAT) return stream_id, data.byteslice(4, data.bytesize - 4) end