Sha256: 295480f918a21a148ec3a12183c55954888ef6b2f527eb1b9e5033a0575e74e4
Contents?: true
Size: 1.95 KB
Versions: 2
Compression:
Stored size: 1.95 KB
Contents
# Licensed to Elasticsearch B.V under one or more agreements. # Elasticsearch B.V licenses this file to you under the Apache 2.0 License. # See the LICENSE file in the project root for more information module Elasticsearch module Transport module Transport module HTTP # The default transport implementation, using the [_Faraday_](https://rubygems.org/gems/faraday) # library for abstracting the HTTP client. # # @see Transport::Base # class Faraday include Base # Performs the request by invoking {Transport::Base#perform_request} with a block. # # @return [Response] # @see Transport::Base#perform_request # def perform_request(method, path, params={}, body=nil, headers=nil, opts={}) super do |connection, url| headers = headers || connection.connection.headers response = connection.connection.run_request(method.downcase.to_sym, url, ( body ? __convert_to_json(body) : nil ), headers) Response.new response.status, response.body, response.headers end end # Builds and returns a connection # # @return [Connections::Connection] # def __build_connection(host, options={}, block=nil) client = ::Faraday::Connection.new(__full_url(host), options, &block) Connections::Connection.new :host => host, :connection => client end # Returns an array of implementation specific connection errors. # # @return [Array] # def host_unreachable_exceptions [::Faraday::ConnectionFailed, ::Faraday::TimeoutError] end end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
elasticsearch-transport-6.8.3 | lib/elasticsearch/transport/transport/http/faraday.rb |
elasticsearch-transport-6.8.2 | lib/elasticsearch/transport/transport/http/faraday.rb |