class Async::HTTP::Protocol::HTTP1::Connection
def as_json(...)
def as_json(...) to_s end
def concurrency
def concurrency 1 end
def http1?
def http1? true end
def http2?
def http2? false end
def initialize(stream, version, **options)
def initialize(stream, version, **options) super(stream, **options) # On the client side, we need to send the HTTP version with the initial request. On the server side, there are some scenarios (bad request) where we don't know the request version. In those cases, we use this value, which is either hard coded based on the protocol being used, OR could be negotiated during the connection setup (e.g. ALPN). @version = version end
def peer
def peer @peer ||= ::Protocol::HTTP::Peer.for(@stream.io) end
def reusable?
def reusable? @persistent && @stream && !@stream.closed? end
def to_json(...)
def to_json(...) as_json.to_json(...) end
def to_s
def to_s "\#<#{self.class} negotiated #{@version}, #{@state}>" end
def viable?
def viable? self.idle? && @stream&.readable? end