class PageRankr::Request

Attributes

tracker[R]

Public Class Methods

new(tracker, options) click to toggle source
# File lib/page_rankr/request.rb, line 5
def initialize(tracker, options)
  @tracker = tracker
  @options = options
end

Public Instance Methods

perform() { |body| ... } click to toggle source
# File lib/page_rankr/request.rb, line 10
def perform
  method = tracker.method
  url = tracker.url

  response = HTTParty.send(method, url, construct_options(tracker))
  yield response.body if block_given?
end

Private Instance Methods

construct_options(tracker) click to toggle source
# File lib/page_rankr/request.rb, line 21
def construct_options(tracker)
  proxy = tracker.proxy
  params = tracker.params if tracker.respond_to?(:params)

  options = default_options
  options.merge!({
    :http_proxyaddr => proxy.host,
    :http_proxyport => proxy.port,
    :http_proxyuser => proxy.user,
    :http_proxypass => proxy.password
  }) if proxy
  options.merge!({:query => params}) if params
  options.merge!(@options)
end
default_options() click to toggle source
# File lib/page_rankr/request.rb, line 36
def default_options
  {
    :headers => {
      'User-Agent' => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.56.5 (KHTML, like Gecko) Version/5.1.6 Safari/534.56.5'
    }
  }
end