Module: Cliqr::Config::Validation::ValidatorFactory Private

Defined in:
lib/cliqr/config/validation/validator_factory.rb

Overview

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

A factory class to retrieve a attribute validator based on the configuration type

Defined Under Namespace

Classes: ChildValidator, CollectionValidator, FormatValidator, HashValidator, InclusionValidator, NOOPValidator, NonEmptyFormatValidator, NonEmptyNilOkFormatValidator, NonEmptyValidator, NonNilValidator, OneOfValidator, TypeHierarchyValidator, TypeOfValidator, Validator

Constant Summary collapse

VALIDATORS =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

A hash of validator type id to validator class

{
  non_empty: NonEmptyValidator,
  non_empty_format: NonEmptyFormatValidator,
  non_empty_nil_ok_format: NonEmptyNilOkFormatValidator,
  format: FormatValidator,
  extend: TypeHierarchyValidator,
  collection: CollectionValidator,
  hash: HashValidator,
  inclusion: InclusionValidator,
  one_of: OneOfValidator,
  type_of: TypeOfValidator,
  child: ChildValidator
}

Class Method Summary collapse

Class Method Details

.get(validator_type, config) ⇒ Cliqr::Validation::ValidatorFactory::Validator

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Get a new validator based on the type and config param

Returns:

  • (Cliqr::Validation::ValidatorFactory::Validator)


392
393
394
395
396
397
398
399
# File 'lib/cliqr/config/validation/validator_factory.rb', line 392

def self.get(validator_type, config)
  validator_class = VALIDATORS[validator_type]
  if validator_class.nil?
    NOOPValidator.new(validator_type)
  else
    validator_class.new(config)
  end
end