class Clarification::SearchRequester

Public Class Methods

new() click to toggle source
# File lib/clarification/requester/search_requester.rb, line 4
def initialize
end

Public Instance Methods

get_results_for_concept(concept) click to toggle source
# File lib/clarification/requester/search_requester.rb, line 14
def get_results_for_concept(concept)
  uri = uri_builder("searches")
  body = concept_body_builder(concept)
  response = get_response(uri, body)
  return response
end
index(target_urls) click to toggle source
# File lib/clarification/requester/search_requester.rb, line 7
def index(target_urls)
  uri = uri_builder("inputs")
  body = body_builder(target_urls)
  response = get_response(uri, body)
  return response
end

Private Instance Methods

body_builder(target_urls) click to toggle source
# File lib/clarification/requester/search_requester.rb, line 23
def body_builder(target_urls)
  # build individual inputs
  inputs = []
  target_urls.each do |url|
    inputs << {
      data: {
        image: {
          url: url
        }
      }
    }
  end

  # wrap for api
  {
    inputs: inputs
  }
end
concept_body_builder(concept) click to toggle source
# File lib/clarification/requester/search_requester.rb, line 42
def concept_body_builder(concept)
  {
    query: {
      ands: [
        {
          output: {
            data: {
              concepts: [
                {
                  name: "#{concept}"
                }
              ]
            }
          }
        }
      ]
    }
  }
  
end
uri_builder(path) click to toggle source
# File lib/clarification/requester/search_requester.rb, line 64
def uri_builder(path)
  url = "#{Clarification::BASE_URL}#{path}"
  URI.parse(url)
end