httpx/sig/session.rbs
HoneyryderChuck 4c44f40511 moving seek-or-init connection logic fully to the pool
refactoring towards letting the pool figure out synchronization mechanisms
2024-07-18 16:25:42 +01:00

59 lines
2.3 KiB
Plaintext

module HTTPX
class Session
include Loggable
include Chainable
EMPTY_HASH: Hash[untyped, untyped]
@options: Options
@responses: Hash[Request, response]
@persistent: bool?
def self.plugin: (Symbol | Module plugin, ?options? options) ?{ (Class) -> void } -> singleton(Session)
def wrap: () { (instance) -> void } -> void
def close: (*untyped) -> void
def build_request: (verb verb, generic_uri uri, ?request_params params, ?Options options) -> Request
def initialize: (?options) { (self) -> void } -> void
| (?options) -> void
private
def pool: -> Pool
def on_response: (Request, response) -> void
def on_promise: (untyped, untyped) -> void
def fetch_response: (Request request, Array[Connection] connections, untyped options) -> response?
def find_connection: (Request request, Array[Connection] connections, Options options) ?{ (Connection new_connection) -> void } -> Connection
def send_request: (Request request, Array[Connection] connections, ?Options options) -> void
def set_connection_callbacks: (Connection connection, Array[Connection] connections, Options options, ?cloned: bool) -> void
def set_request_callbacks: (Request request) -> void
def build_altsvc_connection: (Connection existing_connection, Array[Connection] connections, URI::Generic alt_origin, String origin, Hash[String, String] alt_params, Options options)(URI::Generic uri, Options options) ?{ (Connection new_connection) -> void } -> (Connection & AltSvc::ConnectionMixin)?
def build_requests: (verb, uri, request_params) -> Array[Request]
| (Array[[verb, uri, request_params]], Hash[Symbol, untyped]) -> Array[Request]
| (Array[[verb, uri]], request_params) -> Array[Request]
| (verb, _Each[[uri, request_params]], Hash[Symbol, untyped]) -> Array[Request]
| (verb, _Each[uri], request_params) -> Array[Request]
def send_requests: (*Request) -> Array[response]
def _send_requests: (Array[Request] requests) -> Array[Connection]
def receive_requests: (Array[Request] requests, Array[Connection] connections) -> Array[response]
attr_reader self.default_options: Options
end
OriginalSession: singleton(Session)
end