class GnipApi::Request

Attributes

headers[R]
payload[R]
request_method[R]
uri[R]

Public Class Methods

new(params={}) click to toggle source
# File lib/gnip_api/request.rb, line 19
def initialize params={}
  @uri = params[:uri]
  @payload = params[:payload]
  @headers = params[:headers]
  @request_method = params[:request_method]
  @adapter = GnipApi::Adapter.new
end
new_delete(uri, payload, headers=nil) click to toggle source
# File lib/gnip_api/request.rb, line 14
def new_delete uri, payload, headers=nil
  new(:uri => uri, :headers => headers, :payload => payload, :request_method => GnipApi::Adapter::POST)
end
new_get(uri, headers=nil) click to toggle source
# File lib/gnip_api/request.rb, line 6
def new_get uri, headers=nil
  new(:uri => uri, :headers => headers, :request_method => GnipApi::Adapter::GET)
end
new_post(uri, payload, headers=nil) click to toggle source
# File lib/gnip_api/request.rb, line 10
def new_post uri, payload, headers=nil
  new(:uri => uri, :headers => headers, :payload => payload, :request_method => GnipApi::Adapter::POST)
end

Public Instance Methods

execute!() click to toggle source
# File lib/gnip_api/request.rb, line 27
def execute!
  log!
  case request_method
  when GnipApi::Adapter::GET
    response = @adapter.get(self)
  when GnipApi::Adapter::POST
    response = @adapter.post(self)
  when GnipApi::Adapter::DELETE
    response = @adapter.delete(self)
  else
    raise 'RequestNotAllowed'
  end
  response.check_for_errors!
  return response.body unless response.body.empty?
  return true
end
log!() click to toggle source
# File lib/gnip_api/request.rb, line 44
def log!
  GnipApi.logger.info "Starting #{request_method} request to #{uri}"
  GnipApi.logger.debug "Headers -> #{headers.inspect}"
  GnipApi.logger.debug "Payload -> #{payload.inspect}"
end