Class: DatabaseValidations::UniquenessOptionsStorage

Inherits:
Object
  • Object
show all
Defined in:
lib/database_validations/validations/uniqueness_options_storage.rb

Instance Method Summary collapse

Constructor Details

#initialize(klass) ⇒ UniquenessOptionsStorage

Returns a new instance of UniquenessOptionsStorage.



4
5
6
7
# File 'lib/database_validations/validations/uniqueness_options_storage.rb', line 4

def initialize(klass)
  @adapter = Adapters.factory(klass)
  @storage = {}
end

Instance Method Details

#[](key) ⇒ Object



14
15
16
# File 'lib/database_validations/validations/uniqueness_options_storage.rb', line 14

def [](key)
  storage[key]
end

#each_validatorObject



18
19
20
# File 'lib/database_validations/validations/uniqueness_options_storage.rb', line 18

def each_validator
  storage.each_value { |validator| yield(validator) }
end

#push(field, options) ⇒ Object



9
10
11
12
# File 'lib/database_validations/validations/uniqueness_options_storage.rb', line 9

def push(field, options)
  uniqueness_options = UniquenessOptions.new(field, options, adapter)
  storage[uniqueness_options.key] = uniqueness_options
end