Class: Qdrant::Client::Request
- Inherits:
-
Object
- Object
- Qdrant::Client::Request
- Defined in:
- lib/qdrant/client/request.rb
Instance Method Summary collapse
-
#initialize(uri, verb, body, api_key, logger) ⇒ Request
constructor
A new instance of Request.
- #perform(raise_error) ⇒ Object
Constructor Details
#initialize(uri, verb, body, api_key, logger) ⇒ Request
Returns a new instance of Request.
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/qdrant/client/request.rb', line 47 def initialize(uri, verb, body, api_key, logger) @logger = logger @uri = uri @verb = verb @data = verb.new(uri.request_uri).tap do |request| request["api-key"] = api_key if api_key if body request.body = JSON.generate(body) request["Content-Type"] = request["Accept"] = "application/json" end end logger.info("#{verb_name} #{uri}") logger.info("Request headers: #{redacted_headers.inspect}") logger.info("Request body: #{@data.body}") if @data.body end |
Instance Method Details
#perform(raise_error) ⇒ Object
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/qdrant/client/request.rb', line 66 def perform(raise_error) @logger.info("Performing Request: #{verb_name} #{@uri}") response = Net::HTTP.new(@uri.host, @uri.port).tap do |h| h.use_ssl = true if @uri.scheme == "https" end.request(@data) response.value if raise_error @logger.info("Response status: #{response.code}") response rescue => e @logger.error("#{verb_name} #{@uri} failed: #{e.class}: #{e.}") raise end |