module Heroku::Helpers::Addons::API
Constants
- VERSION
Public Instance Methods
get_addon(identifier, options = {})
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 51 def get_addon(identifier, options = {}) get_addon!(identifier, options) rescue Heroku::API::Errors::NotFound end
get_addon!(identifier, options = {})
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 44 def get_addon!(identifier, options = {}) request( :headers => { 'Accept-Expansion' => 'plan' }, :path => "#{addons_path(options)}/#{identifier}" ) end
get_addons(options = {})
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 37 def get_addons(options = {}) request_list( :headers => { 'Accept-Expansion' => 'plan' }, :path => addons_path(options) ) end
get_attachment(identifier, options = {})
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 32 def get_attachment(identifier, options = {}) get_attachment!(identifier, options) rescue Heroku::API::Errors::NotFound end
get_attachment!(identifier, options = {})
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 28 def get_attachment!(identifier, options = {}) request(:path => "#{attachments_path(options)}/#{identifier}") end
get_attachments(options = {})
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 24 def get_attachments(options = {}) request_list(:path => attachments_path(options)) end
get_plans(options = {})
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 69 def get_plans(options = {}) path = options[:service] ? "/addon-services/#{options[:service]}/plans" : "/plans" request_list(:path => path) end
get_service(service)
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 60 def get_service(service) get_service! rescue Heroku::API::Errors::NotFound end
get_service!(service)
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 56 def get_service!(service) request(:path => "/addon-services/#{service}") end
get_services()
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 65 def get_services request_list(:path => "/addon-services") end
request(options = {})
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 6 def request(options = {}) defaults = { :expects => 200, :headers => {}, :method => :get } options = defaults.merge(options) options[:headers]["Accept"] ||= "application/vnd.heroku+json; version=#{VERSION}" api.request(options).body end
request_list(options = {})
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 17 def request_list(options = {}) options = options.dup options[:expects] = [200, 206, *options[:expects]].uniq request(options) end
Private Instance Methods
addons_path(options)
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 79 def addons_path(options) if app = options[:app] "/apps/#{app}/addons" else "/addons" end end
attachments_path(options)
click to toggle source
# File lib/heroku/helpers/addons/api.rb, line 87 def attachments_path(options) if resource = options[:resource] "/addons/#{resource}/addon-attachments" elsif app = options[:app] "/apps/#{app}/addon-attachments" else "/addon-attachments" end end