Sha256: ef3faecc70cfb6822c2453e2f5731633870108e069c48e3d12ab89ea471ccf08
Contents?: true
Size: 1.43 KB
Versions: 5
Compression:
Stored size: 1.43 KB
Contents
module ApiClient # ApiClient::Configuration provides a way to configure ApiClient globally. class Configuration attr_accessor :mock, :hydra attr_reader :header # Return the api url. # # @return [String] the api url. def path @paths.each do |name, path| raise Exceptions::BadlyConfigured.new(name) unless path.size > 1 end @paths end # Set the api url. # # @param [String] path api url. def path=(path) path = "#{path}/" unless path[path.size - 1, 1] == '/' @paths = { :default => path } end # Set several api urls. # # @param [Hash] paths hash with paths to api urls. def paths=(paths = {}) @paths = {} paths.each do |name, path| if path[path.size - 1, 1] == '/' @paths[name] = path else @paths[name] = "#{path}/" end end end # Set the default params of header. # # @param [Hash] header the default header for requisitions. def header=(header = {}) @header = { 'Content-Type' => 'application/json' }.merge(header) end # Set a basic authentication for all requisitions. # # @param [String] account the user for requisitions. # @param [String] password the password for requisitions. def basic_auth(account, password) @header.merge!({ 'Authorization' => "Basic #{["#{account}:#{password}"].pack('m').delete("\r\n")}" }) end end end
Version data entries
5 entries across 5 versions & 1 rubygems