Sha256: ce296864d2991113f50440e46aa855d411da4c47b7733f411eb4c5e7888d6d5e

Contents?: true

Size: 560 Bytes

Versions: 7

Compression:

Stored size: 560 Bytes

Contents

# frozen_string_literal: true

module Calagator
  class Event < Calagator::ApplicationRecord
    class SearchEngine
      cattr_accessor(:kind) { :sql }

      def self.search(*args)
        search_engine.search(*args)
      end

      def self.use(kind)
        self.kind = kind
        search_engine.configure if search_engine.respond_to?(:configure)
      end

      def self.score?
        search_engine.score?
      end

      private_class_method

      def self.search_engine
        (kind == :sunspot) ? ApacheSunspot : Sql
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 2 rubygems

Version Path
koalagator-4.1.0 app/models/calagator/event/search_engine.rb
koalagator-4.0.0 app/models/calagator/event/search_engine.rb
koalagator-3.0.0 app/models/calagator/event/search_engine.rb
koalagator-2.1.1 app/models/calagator/event/search_engine.rb
koalagator-2.1.0 app/models/calagator/event/search_engine.rb
calagator2-2.1.1 app/models/calagator/event/search_engine.rb
calagator2-2.1.0 app/models/calagator/event/search_engine.rb