class EzClient::PersistentClientRegistry

Attributes

registry[RW]

Public Class Methods

new() click to toggle source
# File lib/ezclient/persistent_client_registry.rb, line 4
def initialize
  self.registry = {}
end

Public Instance Methods

for(url, timeout:) click to toggle source
# File lib/ezclient/persistent_client_registry.rb, line 8
def for(url, timeout:)
  cleanup_registry!
  uri = HTTP::URI.parse(url)
  registry[uri.origin] ||= EzClient::PersistentClient.new(uri.origin, timeout)
end

Private Instance Methods

cleanup_registry!() click to toggle source
# File lib/ezclient/persistent_client_registry.rb, line 18
def cleanup_registry!
  registry.delete_if { |_origin, client| client.timed_out? }
end