Class: Qonfig::Validation::Building::InstanceBuilder Private

Inherits:
Object
  • Object
show all
Defined in:
lib/qonfig/validation/building/instance_builder.rb

Overview

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

Since:

  • 0.20.0

Defined Under Namespace

Classes: AttributesConsistency

Constant Summary collapse

EMPTY_SETTING_KEY_PATTERN =

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.

Returns:

  • (NilClass)

Since:

  • 0.20.0

nil
NO_RUNTIME_VALIDATION_METHOD =

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.

Returns:

  • (NilClass)

Since:

  • 0.20.0

nil
NO_VALIDATION_LOGIC =

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.

Returns:

  • (NilClass)

Since:

  • 0.20.0

nil
NO_PREDEFINED_VALIDATOR =

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.

Returns:

  • (NilClass)

Since:

  • 0.20.0

nil
DEFAULT_STRICT_BEHAVIOUR =

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.

Returns:

  • (Boolean)

Since:

  • 0.17.0

false

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data_set_klass, setting_key_pattern, predefined_validator_name, runtime_validation_method, strict, validation_logic) ⇒ void

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.

Parameters:

  • data_set_klass (Class<Qonfig::DataSet>)
  • setting_key_pattern (String, Symbol, NilClass)
  • predefined_validator_name (String, Symbol, NilClass)
  • runtime_validation_method (String, Symbol, NilClass)
  • strict (Boolean)
  • validation_logic (Proc, NilClass)

Since:

  • 0.20.0



78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# File 'lib/qonfig/validation/building/instance_builder.rb', line 78

def initialize(
  data_set_klass,
  setting_key_pattern,
  predefined_validator_name,
  runtime_validation_method,
  strict,
  validation_logic
)
  @data_set_klass = data_set_klass
  @setting_key_pattern = setting_key_pattern
  @predefined_validator_name = predefined_validator_name
  @runtime_validation_method = runtime_validation_method
  @strict = strict
  @validation_logic = validation_logic
end

Class Method Details

.build(data_set_klass, setting_key_pattern: EMPTY_SETTING_KEY_PATTERN, runtime_validation_method: NO_RUNTIME_VALIDATION_METHOD, validation_logic: NO_VALIDATION_LOGIC, strict: DEFAULT_STRICT_BEHAVIOUR, predefined_validator: NO_PREDEFINED_VALIDATOR) ⇒ Qonfig::Validator::MethodBased, Qonfig::Validator::ProcBased

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.

Parameters:

  • data_set_klass (Class<Qonfig::DataSet>)
  • setting_key_pattern (Hash) (defaults to: EMPTY_SETTING_KEY_PATTERN)

    a customizable set of options

  • predefined_validator (Hash) (defaults to: NO_PREDEFINED_VALIDATOR)

    a customizable set of options

  • runtime_validation_method (Hash) (defaults to: NO_RUNTIME_VALIDATION_METHOD)

    a customizable set of options

  • validation_logic (Hash) (defaults to: NO_VALIDATION_LOGIC)

    a customizable set of options

  • strict (Hash) (defaults to: DEFAULT_STRICT_BEHAVIOUR)

    a customizable set of options

Options Hash (setting_key_pattern:):

  • (String, Symbol, NilClass)

Options Hash (runtime_validation_method:):

  • (String, Symbol, NilClass)

Options Hash (validation_logic:):

  • (Proc, NilClass)

Options Hash (strict:):

  • (Boolean)

Options Hash (predefined_validator:):

  • (String, Symbol, NilClass)

Returns:

  • (Qonfig::Validator::MethodBased, Qonfig::Validator::ProcBased)

Since:

  • 0.20.0



49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/qonfig/validation/building/instance_builder.rb', line 49

def build(
  data_set_klass,
  setting_key_pattern: EMPTY_SETTING_KEY_PATTERN,
  runtime_validation_method: NO_RUNTIME_VALIDATION_METHOD,
  validation_logic: NO_VALIDATION_LOGIC,
  strict: DEFAULT_STRICT_BEHAVIOUR,
  predefined_validator: NO_PREDEFINED_VALIDATOR
)
  new(
    data_set_klass,
    setting_key_pattern,
    predefined_validator,
    runtime_validation_method,
    strict,
    validation_logic
  ).build
end

Instance Method Details

#buildQonfig::Validation::Validators::MethodBased, ...

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.



100
101
102
103
# File 'lib/qonfig/validation/building/instance_builder.rb', line 100

def build
  validate_attributes!
  build_validator
end