class Fog::ArubaCloud::Service

Public Instance Methods

_request(options) click to toggle source
# File lib/fog/arubacloud/service.rb, line 20
def _request(options)
  http_method = options[:http_method] || :get
  @request_url = "#{@ws_enduser_url}/#{options[:method]}"

  params = {headers: headers}
  params[:expects] = options[:expected] || [200, 201]
  unless options[:body].nil?
    params[:body] = options[:body]
  end
  params[:read_timeout] = 360

  # initialize connection object
  @connection = Fog::Core::Connection.new(@request_url, false, params)
  # send request
  begin
    response = @connection.request(:method => http_method)
    @connection.reset
  rescue Excon::Errors::Timeout
    # raise an error
    raise Fog::ArubaCloud::Errors::RequestTimeOut.new(
        "Request timed out after: #{60 unless params[:read_timeout]}"
    )
  end

  # decode the response and return it
  Fog::JSON.decode(response.body)
end
datacenter() click to toggle source
# File lib/fog/arubacloud/service.rb, line 12
def datacenter
  raise Fog::Errors::NotImplemented.new('Please implement the #datacenter method')
end
headers(options={}) click to toggle source
# File lib/fog/arubacloud/service.rb, line 48
def headers(options={})
  {'Content-Type' => 'application/json'}.merge(options[:headers] || {})
end
login() click to toggle source
# File lib/fog/arubacloud/service.rb, line 52
def login

end
ws_enduser_url(url=nil) click to toggle source
# File lib/fog/arubacloud/service.rb, line 16
def ws_enduser_url(url=nil)
  @ws_enduser_url = url || Fog::ArubaCloud::DEFAULT_WS_ENDUSER_URL
end