Method: Hyperclient::EntryPoint#connection

Defined in:
lib/hyperclient/entry_point.rb

#connection(options = {}, &block) ⇒ Object

A Faraday connection to use as a HTTP client.

Parameters:

  • options (defaults to: {})

    A Hash containing additional options to pass to Farday. Use

  • if (default: false)

    you want to skip using default Faraday options set by

  • Hyperclient.

Returns:

  • a Faraday::Connection.



54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# File 'lib/hyperclient/entry_point.rb', line 54

def connection(options = {}, &block)
  @faraday_options ||= options.dup
  if block_given?
    raise ConnectionAlreadyInitializedError if @connection
    @faraday_block = if @faraday_options.delete(:default) == false
                       block
                     else
                       lambda do |conn|
                         default_faraday_block.call conn
                         yield conn
                       end
                     end
  else
    @connection ||= Faraday.new(_url, faraday_options, &faraday_block)
  end
end