Module: Elastify::ActiveRecordExtensions::ClassMethods

Extended by:
ActiveSupport::Concern
Defined in:
lib/elastify/active_record_extensions.rb

Instance Method Summary collapse

Instance Method Details

#elastify_scroll(scroll_id: nil, scroll_timeout: nil) ⇒ Object



32
33
34
# File 'lib/elastify/active_record_extensions.rb', line 32

def elastify_scroll(scroll_id: nil, scroll_timeout: nil)
    return Elastify::Helpers::ElasticSearch::Document.new(self.elastify_options).scroll(scroll_id, scroll_timeout)
end

#elastify_search(dsl: nil, scroll_timeout: nil) ⇒ Object



28
29
30
# File 'lib/elastify/active_record_extensions.rb', line 28

def elastify_search(dsl: nil, scroll_timeout: nil)
    return Elastify::Helpers::ElasticSearch::Document.new(self.elastify_options).search(dsl, scroll_timeout)
end

#elastify_setup {|config| ... } ⇒ Object

Yields:

  • (config)


11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/elastify/active_record_extensions.rb', line 11

def elastify_setup(&block)
    include Elastify::ActiveRecordExtensions::LocalMethods
    cattr_accessor :elastify_options
    attr_accessor :elastify_serialized_document

    config = Elastify::Configurators::Model.new
    yield(config) if block_given?
    self.elastify_options = {} if self.elastify_options.blank?
    self.elastify_options[:base_url] = Elastify.configs[:base_url]
    self.elastify_options[:index] = config.opt_index if config.opt_index.present?
    self.elastify_options[:type] = config.opt_type if config.opt_type.present?
    self.elastify_options[:map] = config.opt_mapping if config.opt_mapping.present?
    self.elastify_options[:decode] = config.opt_decode if config.opt_decode.present?
    self.elastify_options[:encode] = config.opt_encode if config.opt_encode.present?
    self.elastify_options[:scroll_timeout] = config.opt_scroll_timeout if config.opt_scroll_timeout.present?
end