Module: Async::HTTP::Protocol::HTTP2
- Defined in:
- lib/async/http/protocol/http2.rb,
lib/async/http/protocol/http2/input.rb,
lib/async/http/protocol/http2/client.rb,
lib/async/http/protocol/http2/output.rb,
lib/async/http/protocol/http2/server.rb,
lib/async/http/protocol/http2/stream.rb,
lib/async/http/protocol/http2/request.rb,
lib/async/http/protocol/http2/response.rb,
lib/async/http/protocol/http2/connection.rb
Defined Under Namespace
Modules: Connection
Classes: Client, Input, Output, Request, Response, Server, Stream
Constant Summary
collapse
- VERSION =
"HTTP/2"
- CLIENT_SETTINGS =
{
::Protocol::HTTP2::Settings::ENABLE_PUSH => 0,
::Protocol::HTTP2::Settings::MAXIMUM_FRAME_SIZE => 0x100000,
::Protocol::HTTP2::Settings::INITIAL_WINDOW_SIZE => 0x800000,
}
- SERVER_SETTINGS =
{
::Protocol::HTTP2::Settings::MAXIMUM_CONCURRENT_STREAMS => 128,
::Protocol::HTTP2::Settings::MAXIMUM_FRAME_SIZE => 0x100000,
::Protocol::HTTP2::Settings::INITIAL_WINDOW_SIZE => 0x800000,
::Protocol::HTTP2::Settings::ENABLE_CONNECT_PROTOCOL => 1,
}
- HTTPS =
"https".freeze
- SCHEME =
":scheme".freeze
- METHOD =
":method".freeze
- PATH =
":path".freeze
- AUTHORITY =
":authority".freeze
- STATUS =
":status".freeze
- PROTOCOL =
":protocol".freeze
- CONTENT_LENGTH =
"content-length".freeze
- CONNECTION =
"connection".freeze
- TRAILER =
"trailer".freeze
Class Method Summary
collapse
Class Method Details
.bidirectional? ⇒ Boolean
18
19
20
|
# File 'lib/async/http/protocol/http2.rb', line 18
def self.bidirectional?
true
end
|
.client(peer, settings = CLIENT_SETTINGS) ⇒ Object
40
41
42
43
44
45
46
47
48
|
# File 'lib/async/http/protocol/http2.rb', line 40
def self.client(peer, settings = CLIENT_SETTINGS)
stream = ::IO::Stream(peer)
client = Client.new(stream)
client.send_connection_preface(settings)
client.start_connection
return client
end
|
.names ⇒ Object
60
61
62
|
# File 'lib/async/http/protocol/http2.rb', line 60
def self.names
["h2"]
end
|
.server(peer, settings = SERVER_SETTINGS) ⇒ Object
50
51
52
53
54
55
56
57
58
|
# File 'lib/async/http/protocol/http2.rb', line 50
def self.server(peer, settings = SERVER_SETTINGS)
stream = ::IO::Stream(peer)
server = Server.new(stream)
server.read_connection_preface(settings)
server.start_connection
return server
end
|
.trailer? ⇒ Boolean
22
23
24
|
# File 'lib/async/http/protocol/http2.rb', line 22
def self.trailer?
true
end
|