Sha256: cafd53c7867970f2848b57abc0371ca8e2365b0c9273c18bb227282c362bd7f0

Contents?: true

Size: 1.35 KB

Versions: 21

Compression:

Stored size: 1.35 KB

Contents

module Elasticsearch
  module Model
    module Adapter

      # The default adapter for models which haven't one registered
      #
      module Default

        # Module for implementing methods and logic related to fetching records from the database
        #
        module Records

          # Return the collection of records fetched from the database
          #
          # By default uses `MyModel#find[1, 2, 3]`
          #
          def records
            klass.find(@ids)
          end
        end

        # Module for implementing methods and logic related to hooking into model lifecycle
        # (e.g. to perform automatic index updates)
        #
        # @see http://api.rubyonrails.org/classes/ActiveModel/Callbacks.html
        module Callbacks
          # noop
        end

        # Module for efficiently fetching records from the database to import them into the index
        #
        module Importing

          # @abstract Implement this method in your adapter
          #
          def __find_in_batches(options={}, &block)
            raise NotImplemented, "Method not implemented for default adapter"
          end

          # @abstract Implement this method in your adapter
          #
          def __transform
            raise NotImplemented, "Method not implemented for default adapter"
          end
        end

      end
    end
  end
end

Version data entries

21 entries across 21 versions & 2 rubygems

Version Path
elasticsearch-model-queryable-0.1.9 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-6.1.2 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-queryable-0.1.5 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-6.1.1 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-6.1.0 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-6.0.0 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-6.0.0.pre lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-5.1.0 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-5.0.2 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-2.0.1 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-5.0.1 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-2.0.0 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-5.0.0 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-0.1.9 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-0.1.8 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-0.1.7 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-0.1.6 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-0.1.5 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-0.1.4 lib/elasticsearch/model/adapters/default.rb
elasticsearch-model-0.1.3 lib/elasticsearch/model/adapters/default.rb