class Elastic::Type
Add activerecord related index helpers
Public Class Methods
connector()
click to toggle source
# File lib/elastic/type.rb, line 33 def self.connector @connector ||= begin Elastic::Core::Connector.new( suffix, definition.as_es_mapping ).tap do |conn| if Elastic.config.whiny_indices && conn.status != :ready raise 'elastic index out of sync, try migrating' end end end end
default_suffix()
click to toggle source
# File lib/elastic/type.rb, line 13 def self.default_suffix to_s.underscore end
delete(_object)
click to toggle source
# File lib/elastic/type.rb, line 84 def self.delete(_object) connector.delete new(_object).as_elastic_document(only_meta: true) self end
drop()
click to toggle source
# File lib/elastic/type.rb, line 93 def self.drop connector.drop self end
import(_collection, batch_size: nil)
click to toggle source
# File lib/elastic/type.rb, line 67 def self.import(_collection, batch_size: nil) batch_size = batch_size || import_batch_size Commands::ImportIndexDocuments.for( index: self, collection: _collection, batch_size: batch_size ) self end
import_batch_size()
click to toggle source
# File lib/elastic/type.rb, line 25 def self.import_batch_size @import_batch_size || Elastic.config.import_batch_size end
import_batch_size=(_value)
click to toggle source
# File lib/elastic/type.rb, line 29 def self.import_batch_size=(_value) @import_batch_size = _value end
index(_object)
click to toggle source
# File lib/elastic/type.rb, line 79 def self.index(_object) connector.index new(_object).as_elastic_document self end
index_name()
click to toggle source
# File lib/elastic/type.rb, line 46 def self.index_name connector.index_name end
migrate()
click to toggle source
# File lib/elastic/type.rb, line 50 def self.migrate connector.migrate(batch_size: import_batch_size) self end
query()
click to toggle source
# File lib/elastic/type.rb, line 89 def self.query Query.new self end
refresh()
click to toggle source
# File lib/elastic/type.rb, line 98 def self.refresh connector.refresh self end
reindex(verbose: true)
click to toggle source
# File lib/elastic/type.rb, line 55 def self.reindex(verbose: true) connector.rollover do Commands::ImportIndexDocuments.for( index: self, verbose: verbose, batch_size: import_batch_size ) end self end
suffix()
click to toggle source
# File lib/elastic/type.rb, line 17 def self.suffix @suffix || default_suffix end
suffix=(_value)
click to toggle source
# File lib/elastic/type.rb, line 21 def self.suffix=(_value) @suffix = _value end