def initialize(*args)
options = args[0].is_a?(Hash) && args[0] || {}
@end_point, @debug, @preferred_api_versions =
if options.empty?
options[:user] = args.delete_at(1)
options[:password] = args.delete_at(1)
args
else
[
options.delete(:url) ||
(options[:server] && "https://#{options.delete(:server)}/broker/rest/api"),
options.delete(:debug),
options.delete(:preferred_api_versions)
]
end
@preferred_api_versions ||= CLIENT_API_VERSIONS
@debug ||= false
if options[:token]
self.headers[:authorization] = "Bearer #{options.delete(:token)}"
options.delete(:user)
options.delete(:password)
end
@auth = options.delete(:auth)
self.headers.merge!(options.delete(:headers)) if options[:headers]
self.options.merge!(options)
update_http_proxy_env
debug "Connecting to #{@end_point}"
end