module DigestibleAttributes::Configuration
Constants
- DIGEST_ALGORITHMS
Public Instance Methods
default_digest_column()
click to toggle source
# File lib/digestible_attributes/configuration.rb, line 24 def default_digest_column "#{@@digest_algorithm.downcase}_digest".to_sym end
digestible_attributes(options = {})
click to toggle source
# File lib/digestible_attributes/configuration.rb, line 14 def digestible_attributes(options = {}) @@digest_fields = options.fetch(:fields, []) @@digest_algorithm = options.fetch(:algorithm, :MD5) @@digest_column = options.fetch(:digest_column, default_digest_column) validate_configuration! include CallbackActions end
symbolized_columns()
click to toggle source
# File lib/digestible_attributes/configuration.rb, line 54 def symbolized_columns self.column_names.map(&:to_sym) end
validate_configuration!()
click to toggle source
# File lib/digestible_attributes/configuration.rb, line 28 def validate_configuration! validate_digest_fields! validate_digest_algorithm! validate_digest_column! end
validate_digest_algorithm!()
click to toggle source
# File lib/digestible_attributes/configuration.rb, line 42 def validate_digest_algorithm! unless DIGEST_ALGORITHMS.include?(@@digest_algorithm) raise Errors::DigestAlgorithmError.new(@@digest_algorithm) end end
validate_digest_column!()
click to toggle source
# File lib/digestible_attributes/configuration.rb, line 48 def validate_digest_column! unless symbolized_columns.include?(@@digest_column) raise Errors::DigestColumnError.new(@@digest_column) end end
validate_digest_fields!()
click to toggle source
# File lib/digestible_attributes/configuration.rb, line 34 def validate_digest_fields! if @@digest_fields & symbolized_columns != @@digest_fields diff = @@digest_fields - symbolized_columns raise Errors::DigestFieldError.new(diff) end end