module Stretchy

{include:file:README.md}

Constants

VERSION

Public Instance Methods

client() click to toggle source
# File lib/stretchy.rb, line 23
def client
  @client ||= Elasticsearch::Client.new
end
client=(client) click to toggle source
# File lib/stretchy.rb, line 27
def client=(client)
  @client = client
end
count_index(name, params = {}) click to toggle source
# File lib/stretchy.rb, line 56
def count_index(name, params = {})
  client.count({index: name}.merge(params))['count']
end
create_index(name, params = {}) click to toggle source
# File lib/stretchy.rb, line 48
def create_index(name, params = {})
  client.indices.create({index: name}.merge(params)) unless index_exists? name
end
delete_index(name) click to toggle source
# File lib/stretchy.rb, line 44
def delete_index(name)
  client.indices.delete(index: name) if index_exists? name
end
fake_results() click to toggle source
# File lib/stretchy.rb, line 74
def fake_results
  Results.fake
end
index_document(params = {}) click to toggle source
# File lib/stretchy.rb, line 60
def index_document(params = {})
  Utils.require_params!(:index_document, params, :index, :body)

  raise IndexDoesNotExistError.new(
    "index #{params[:index]} does not exist"
  ) unless index_exists? params[:index]

  client.index(params)
end
index_exists?(name) click to toggle source
# File lib/stretchy.rb, line 40
def index_exists?(name)
  client.indices.exists? index: name
end
method_missing(method, *args, &block) click to toggle source
Calls superclass method
# File lib/stretchy.rb, line 78
def method_missing(method, *args, &block)
  if client.respond_to?(method)
    client.send(method, *args, &block)
  else
    super
  end
end
query(options = {}) click to toggle source
# File lib/stretchy.rb, line 70
def query(options = {})
  API.new(root: options)
end
refresh_index(name, params = {}) click to toggle source
# File lib/stretchy.rb, line 52
def refresh_index(name, params = {})
  client.indices.refresh({index: name}.merge(params)) if index_exists? name
end