class RSolr::HTTPClient::Adapter::Curb
def _build_url(path, params={})
def _build_url(path, params={}) url = @uri.scheme + '://' + @uri.host url += ':' + @uri.port.to_s if @uri.port url += @uri.path + path build_url(url, params, @uri.query) # build_url is coming from RSolr::HTTPClient::Util end
def create_http_context(path, params, data=nil, headers={})
def create_http_context(path, params, data=nil, headers={}) { :status_code=>@connection.response_code.to_i, :url=>@connection.url, :body=>@connection.body_str, :path=>path, :params=>params, :data=>data, :headers=>headers } end
def get(path, params={})
def get(path, params={}) @connection.url = _build_url(path, params) @connection.multipart_form_post = false @connection.perform create_http_context(path, params) end
def initialize(opts={})
def initialize(opts={}) @uri = URI.parse(opts[:url]) @connection = ::Curl::Easy.new end
def post(path, data, params={}, headers={})
def post(path, data, params={}, headers={}) @connection.url = _build_url(path, params) @connection.headers = headers @connection.http_post(data) create_http_context(path, params, data, headers) end