# File lib/agnostic_backend/index.rb, line 13 def primary? @primary end
class AgnosticBackend::Index
Attributes
options[R]
Public Class Methods
new(indexable_klass, primary: true, **options)
click to toggle source
# File lib/agnostic_backend/index.rb, line 6 def initialize(indexable_klass, primary: true, **options) @indexable_klass = indexable_klass @primary = primary @options = options parse_options end
Public Instance Methods
configure(new_schema = nil)
click to toggle source
# File lib/agnostic_backend/index.rb, line 29 def configure(new_schema = nil) raise NotImplementedError end
indexer()
click to toggle source
# File lib/agnostic_backend/index.rb, line 25 def indexer raise NotImplementedError end
name()
click to toggle source
# File lib/agnostic_backend/index.rb, line 17 def name @indexable_klass.index_name end
parse_option(option_name, optional: false, default: nil)
click to toggle source
# File lib/agnostic_backend/index.rb, line 37 def parse_option(option_name, optional: false, default: nil) if options.has_key?(option_name) options[option_name] elsif optional default else raise "#{option_name} must be specified" end end
parse_options()
click to toggle source
# File lib/agnostic_backend/index.rb, line 33 def parse_options raise NotImplementedError end
primary?()
click to toggle source
schema()
click to toggle source
# File lib/agnostic_backend/index.rb, line 21 def schema @indexable_klass.schema end