module Idcf::Cli::Controller::Include::Client

client

Protected Instance Methods

faraday_headers(faraday) click to toggle source
# File lib/idcf/cli/controller/include/client.rb, line 72
def faraday_headers(faraday)
  Idcf::Cli::Conf::Const::HEADERS.each do |k, v|
    faraday.headers[k] = v
  end
  faraday
end
faraday_options(faraday) click to toggle source
# File lib/idcf/cli/controller/include/client.rb, line 79
def faraday_options(faraday)
  faraday
end
faraday_request() click to toggle source
# File lib/idcf/cli/controller/include/client.rb, line 68
def faraday_request
  :json
end
faraday_setting(faraday, o) click to toggle source

setting

@param faraday [Faraday] @param o [Hash] options @return Faraday

# File lib/idcf/cli/controller/include/client.rb, line 54
def faraday_setting(faraday, o)
  prof = Idcf::Cli::Lib::Configure.get_profile(o)
  op   = {}
  %i[api_key secret_key].each do |v|
    op[v] = o.key?(v) ? o[v] : Idcf::Cli::Lib::Configure.get_user_conf(v.to_s, prof)
  end
  faraday.request(faraday_request)
  faraday.request(:signature, op)
  faraday.response(:json)
  faraday.adapter Faraday.default_adapter
  faraday_headers(faraday)
  faraday_options(faraday)
end
make_client(o, region) click to toggle source

Create a new client

@param o [Hash] other options @param region [String] @return [Response] Mixed

# File lib/idcf/cli/controller/include/client.rb, line 16
def make_client(o, region)
  Faraday::Request.register_middleware(
    signature: signature
  )

  Faraday.new(url: make_host(o, region), ssl: make_ssl_option(o)) do |faraday|
    faraday_setting(faraday, o)
  end
end
make_host(o, region) click to toggle source
# File lib/idcf/cli/controller/include/client.rb, line 33
def make_host(o, region)
  protocol = o.key?(:no_ssl) ? 'http' : 'https'
  v = self.class.service_version(o)
  path     = "#{self.class.service_name}.#{v}.region.#{region}.host"
  host     = Idcf::Cli::Lib::Configure.get_code_conf(path, o)
  "#{protocol}://#{host}"
end
make_ssl_option(o) click to toggle source

ssl option

@param o [Hash] options @return Hash

# File lib/idcf/cli/controller/include/client.rb, line 45
def make_ssl_option(o)
  { verify: o.key?(:no_vssl) ? false : true }
end
signature() click to toggle source

signeture

@return String

# File lib/idcf/cli/controller/include/client.rb, line 29
def signature
  Idcf::FaradayMiddleware::Signature
end