Method: CloudFS::RestAdapter::Connection#initialize

Defined in:
lib/cloudfs/client/connection.rb

#initialize(**params) ⇒ Connection

Creates Connection instance

Parameters:

  • params (Hash)

    connection configurations

Options Hash (**params):

  • :connect_timeout (Fixnum) — default: 60

    for server handshake, defualts to 60 as per httpclient documentation

  • :send_timeout (Fixnum) — default: 120

    for send request, defaults to 120 sec as per httpclient documentation, set 0 for no timeout

  • :receive_timeout (Fixnum) — default: 60

    timeout for read per block, defaults to 60 sec as per httpclient documentation, set 0 for no timeout

  • :max_retry (Fixnum) — default: 0

    for http 500 level errors

  • :agent_name (String) — default: HTTPClient
  • :debug_dev (#<<) — default: nil

    provide http wire information from httpclient



39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# File 'lib/cloudfs/client/connection.rb', line 39

def initialize(** params)
  @persistent_conn = HTTPClient.new
  @persistent_conn.cookie_manager = nil

  connect_timeout, send_timeout, receive_timeout,
      max_retries, debug_dev, agent_name =
      params.values_at(:connect_timeout, :send_timeout, :receive_timeout,
                       :max_retries, :debug_dev, :agent_name)
  @persistent_conn.connect_timeout = connect_timeout if connect_timeout
  @persistent_conn.send_timeout = send_timeout if send_timeout
  @persistent_conn.receive_timeout = receive_timeout if receive_timeout
  @persistent_conn.debug_dev = debug_dev if debug_dev.respond_to?(:<<)
  @persistent_conn.agent_name = agent_name
  @max_retries = max_retries ? max_retries : 0
end