Class: Acquia::Cloud::Api

Inherits:
Object
  • Object
show all
Defined in:
lib/acquia/cloud/api.rb

Constant Summary collapse

API_VERSION =
'v1'
BASE_URL =
'https://cloudapi.acquia.com'

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(args = {}) ⇒ Api

Returns a new instance of Api.



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/acquia/cloud/api.rb', line 10

def initialize(args = {})
  @acquia = Faraday.new(:url => 'https://cloudapi.acquia.com') do |client|
    client.request :url_encoded
    client.adapter Faraday.default_adapter

    # Log request and response to STDOUT.
    # client.use Faraday::Response::Logger

    # Raise errors on HTTP error codes.
    client.use Faraday::Response::RaiseError
  end

  @credentials = Credentials.new(args[:credentials])
  raise 'Unable to determine your Acquia Cloud credentials.' \
    unless @credentials.defined?
  @acquia.basic_auth @credentials.email, @credentials.key
end

Instance Attribute Details

#credentialsObject (readonly)

Returns the value of attribute credentials.



8
9
10
# File 'lib/acquia/cloud/api.rb', line 8

def credentials
  @credentials
end

Instance Method Details

#delete(url = nil, params = nil, headers = nil, &block) ⇒ Object



37
38
39
# File 'lib/acquia/cloud/api.rb', line 37

def delete(url = nil, params = nil, headers = nil, &block)
  request :delete, url, params, headers, &block
end

#get(url = nil, params = nil, headers = nil, &block) ⇒ Object



28
29
30
# File 'lib/acquia/cloud/api.rb', line 28

def get(url = nil, params = nil, headers = nil, &block)
  request :get, url, params, headers, &block
end

#post(url = nil, body = nil, headers = nil, &block) ⇒ Object



33
34
35
# File 'lib/acquia/cloud/api.rb', line 33

def post(url = nil, body = nil, headers = nil, &block)
  request :post, url, body.nil? ? body : body.to_json, headers, &block
end