Class: KakugoSearch::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/kakugosearch/client.rb

Instance Method Summary collapse

Constructor Details

#initialize(config = KakugoSearch.configuration) ⇒ Client

Returns a new instance of Client.



7
8
9
# File 'lib/kakugosearch/client.rb', line 7

def initialize(config = KakugoSearch.configuration)
  @config = config
end

Instance Method Details

#delete_document(index, id) ⇒ Object

DELETE /indexes/index/documents/id



18
19
20
21
# File 'lib/kakugosearch/client.rb', line 18

def delete_document(index, id)
  uri = URI("#{@config.url}/indexes/#{index}/documents/#{id}")
  request(Net::HTTP::Delete, uri)
end

#index_documents(index, docs) ⇒ Object

POST /indexes/index/documents



12
13
14
15
# File 'lib/kakugosearch/client.rb', line 12

def index_documents(index, docs)
  uri = URI("#{@config.url}/indexes/#{index}/documents")
  request(Net::HTTP::Post, uri, docs)
end

#search(index, query, limit: 20, ai: false, ai_weight: 0.3) ⇒ Object

GET /indexes/index/search



24
25
26
27
28
# File 'lib/kakugosearch/client.rb', line 24

def search(index, query, limit: 20, ai: false, ai_weight: 0.3)
  params = URI.encode_www_form(q: query, limit: limit, ai: ai, ai_weight: ai_weight)
  uri    = URI("#{@config.url}/indexes/#{index}/search?#{params}")
  request(Net::HTTP::Get, uri)
end