module PDC::Resource::RestApi::ClassMethods
Public Instance Methods
fetch(relation)
click to toggle source
# File lib/pdc/resource/rest_api.rb, line 22 def fetch(relation) # TODO: handle v1/release-variant/(:release)/(:variant) # attributes won't contain (:release) and (:variant_id) params = relation.params resource_path = Path.new(relation.uri, params) uri = resource_path.expanded query = params.except(*resource_path.variables) request(:get, uri, query) end
request(method, path, query = {})
click to toggle source
# File lib/pdc/resource/rest_api.rb, line 10 def request(method, path, query = {}) PDC.logger.debug ' >>>' + " : #{path} #{query}" ActiveSupport::Notifications.instrument('request.pdc', method: method) do |payload| response = connection.send(method) do |request| request.url path, query end payload[:url] = response.env.url payload[:status] = response.status PDC::Http::Result.new(response) end end