Sha256: 3419afd42552680cd064a4173188f10bd32bc968139d59bf9cb5d1fb3cbba00d
Contents?: true
Size: 1.2 KB
Versions: 17
Compression:
Stored size: 1.2 KB
Contents
module BrocadeVRouter class Config attr_reader :connection_opts, :request_opts def self.define_opts_methods(opts) opts.each do |name, _| define_method name do |value = nil| value ? (opts[name] = value) : opts[name] end end end def initialize @connection_opts = { ssl: {} } @request_opts = { timeout: 5, open_timeout: nil } self.class.define_opts_methods @connection_opts self.class.define_opts_methods @request_opts @raise_on_fail = true end def url(value = nil) @url ||= value end def logger(logdev = nil) @logger ||= logdev end def adapter(value = nil) @adapter ||= value || Faraday.default_adapter end def raise_on_fail(value = nil) @raise_on_fail = value unless value.nil? @raise_on_fail end def basic_auth(value = nil) @basic_auth ||= value end def connection_options @connection_opts.map { |op, _| (value = send(op)) && [op, value] }.to_h .merge request: request_options end def request_options request_opts.map { |op, _| (value = send(op)) && [op, value] } end end end
Version data entries
17 entries across 17 versions & 1 rubygems