class ROM::Solr::RequestHandler
Attributes
dataset[R]
Public Class Methods
call(dataset)
click to toggle source
# File lib/rom/solr/request_handler.rb, line 5 def self.call(dataset) new(dataset).execute end
new(dataset)
click to toggle source
# File lib/rom/solr/request_handler.rb, line 11 def initialize(dataset) @dataset = dataset end
Public Instance Methods
execute()
click to toggle source
# File lib/rom/solr/request_handler.rb, line 15 def execute Net::HTTP.start(uri.host, uri.port, use_ssl: uri.scheme.eql?('https')) do |http| http.request(request) end end
headers()
click to toggle source
# File lib/rom/solr/request_handler.rb, line 30 def headers dataset.headers.transform_keys(&:to_s) end
request()
click to toggle source
# File lib/rom/solr/request_handler.rb, line 21 def request request_class.new(uri.request_uri, headers).tap do |req| if dataset.request_data? req.body = dataset.request_data req.content_type = dataset.content_type end end end
request_class()
click to toggle source
# File lib/rom/solr/request_handler.rb, line 42 def request_class if dataset.request_data? Net::HTTP::Post else Net::HTTP::Get end end
uri()
click to toggle source
# File lib/rom/solr/request_handler.rb, line 34 def uri @uri ||= URI(dataset.uri).tap do |u| if dataset.params? u.query ||= URI.encode_www_form(dataset.params) end end end