class ElasticQueue::Base
Public Class Methods
count()
click to toggle source
# File lib/elastic_queue/base.rb, line 76 def self.count query.count end
default_scope(proc)
click to toggle source
# File lib/elastic_queue/base.rb, line 44 def self.default_scope(proc) @default_scope = proc end
eager_load(includes)
click to toggle source
# File lib/elastic_queue/base.rb, line 36 def self.eager_load(includes) @eager_loads = includes end
eager_loads()
click to toggle source
# File lib/elastic_queue/base.rb, line 40 def self.eager_loads @eager_loads end
filter(options)
click to toggle source
# File lib/elastic_queue/base.rb, line 72 def self.filter(options) query.filter(options) end
index_name()
click to toggle source
# File lib/elastic_queue/base.rb, line 28 def self.index_name @index_name ||= to_s.underscore end
index_name=(name)
click to toggle source
# File lib/elastic_queue/base.rb, line 32 def self.index_name=(name) @index_name = name end
model_classes()
click to toggle source
# File lib/elastic_queue/base.rb, line 24 def self.model_classes model_names.map { |s| s.to_s.camelize.constantize } end
model_names()
click to toggle source
# File lib/elastic_queue/base.rb, line 19 def self.model_names fail NotImplementedError, "No models defined in #{self.class}" unless defined?(@models) @models end
models(*models)
click to toggle source
# File lib/elastic_queue/base.rb, line 15 def self.models(*models) @models = models end
query()
click to toggle source
# File lib/elastic_queue/base.rb, line 66 def self.query Query.new(self).tap do |q| q.instance_exec(&@default_scope) if @default_scope end end
scope(name, body)
click to toggle source
# File lib/elastic_queue/base.rb, line 48 def self.scope(name, body) @scopes.merge(name => body) end
scopes()
click to toggle source
# File lib/elastic_queue/base.rb, line 52 def self.scopes @scopes ||= {} end
search_client()
click to toggle source
# File lib/elastic_queue/base.rb, line 11 def self.search_client @search_client ||= Elasticsearch::Client.new hosts: ElasticQueue::OPTIONS[:elasticsearch_hosts] end
Public Instance Methods
query()
click to toggle source
instance methods
# File lib/elastic_queue/base.rb, line 81 def query @query ||= self.class.query end