Class: FastExists::MultiTenant::Strategies::BaseStrategy

Inherits:
Object
  • Object
show all
Defined in:
lib/fast_exists/multi_tenant/strategies/base_strategy.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ BaseStrategy

Returns a new instance of BaseStrategy.



9
10
11
# File 'lib/fast_exists/multi_tenant/strategies/base_strategy.rb', line 9

def initialize(options = {})
  @options = options
end

Instance Attribute Details

#optionsObject (readonly)

Returns the value of attribute options.



7
8
9
# File 'lib/fast_exists/multi_tenant/strategies/base_strategy.rb', line 7

def options
  @options
end

Instance Method Details

#add(tenant_id, attribute, value) ⇒ Object

Raises:

  • (NotImplementedError)


13
14
15
# File 'lib/fast_exists/multi_tenant/strategies/base_strategy.rb', line 13

def add(tenant_id, attribute, value)
  raise NotImplementedError, "#{self.class.name}#add is not implemented"
end

#classify_tenant(tenant_id, record_count) ⇒ Object



21
22
23
# File 'lib/fast_exists/multi_tenant/strategies/base_strategy.rb', line 21

def classify_tenant(tenant_id, record_count)
  :default
end

#contains?(tenant_id, attribute, value) ⇒ Boolean

Returns:

  • (Boolean)

Raises:

  • (NotImplementedError)


17
18
19
# File 'lib/fast_exists/multi_tenant/strategies/base_strategy.rb', line 17

def contains?(tenant_id, attribute, value)
  raise NotImplementedError, "#{self.class.name}#contains? is not implemented"
end

#statsObject



25
26
27
# File 'lib/fast_exists/multi_tenant/strategies/base_strategy.rb', line 25

def stats
  { strategy: self.class.name }
end