class Acquia::Cloud::Api
Constants
- API_VERSION
- BASE_URL
Attributes
credentials[R]
Public Class Methods
new(args = {})
click to toggle source
# 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
Public Instance Methods
delete(url = nil, params = nil, headers = nil, &block)
click to toggle source
# 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)
click to toggle source
# 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)
click to toggle source
# 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
Protected Instance Methods
request(method, url = nil, arg2 = nil, headers = nil, &block)
click to toggle source
# File lib/acquia/cloud/api.rb, line 43 def request(method, url = nil, arg2 = nil, headers = nil, &block) response = @acquia.method(method).call "/#{API_VERSION}#{url}.json", arg2, headers, &block JSON.load(response.body) end