class Athena::Validator::ExecutionContext(Root)
- Athena::Validator::ExecutionContext(Root)
- Reference
- Object
Overview
Basic implementation of AVD::ExecutionContextInterface.
Included Modules
Defined in:
execution_context.crConstructors
Instance Method Summary
-
#add_violation(message : String, code : String, value : _) : Nil
Adds a violation with the provided message, and code, value parameter.
-
#add_violation(message : String, code : String) : Nil
Adds a violation with the provided message and code
-
#add_violation(message : String, parameters : Hash(String, String) = {} of String => String) : Nil
Adds a violation with the provided message, and optionally parameters based on the node currently being validated.
-
#build_violation(message : String, code : String, value : _) : AVD::Violation::ConstraintViolationBuilderInterface
Returns an
AVD::Violation::ConstraintViolationBuilderInterfacewith the provided message, and code, and value. -
#build_violation(message : String, code : String) : AVD::Violation::ConstraintViolationBuilderInterface
Returns an
AVD::Violation::ConstraintViolationBuilderInterfacewith the provided message, and code. -
#build_violation(message : String, parameters : Hash(String, String) = {} of String => String) : AVD::Violation::ConstraintViolationBuilderInterface
Returns an
AVD::Violation::ConstraintViolationBuilderInterfacewith the provided message. -
#class_name
Returns the class that is currently being validated.
-
#constraint : AVD::Constraint | Nil
Returns the
AVD::Constraintthat is currently being validated, if any. -
#group : String | Nil
Returns the group that is currently being validated, if any.
-
#metadata : AVD::Metadata::MetadataInterface | Nil
Returns an
AVD::Metadata::MetadataInterfaceobject for the value currently being validated. -
#object
Returns the object that is currently being validated.
-
#object_container : AVD::Container
The object that is currently being validated.
-
#property_name : String | Nil
Returns the property name of the node currently being validated.
-
#property_path(path : String = "") : String
Returns the path to the property that is currently being validated.
-
#root : Root
Returns the object initially passed to
AVD::Validator::ValidatorInterface#validate. -
#validator : AVD::Validator::ValidatorInterface
Returns a reference to an
AVD::Validator::ValidatorInterfacethat can be used to validate additional constraints as part of another constraint. -
#value
Returns the value that is currently being validated.
-
#violations : AVD::Violation::ConstraintViolationList
Returns the
AVD::Violation::ConstraintViolationInterfaceinstances generated by the validator thus far.
Instance methods inherited from module Athena::Validator::ExecutionContextInterface
add_violation(message : String, code : String, value : _) : Niladd_violation(message : String, parameters : Hash(String, String) = {} of String => String) : Nil
add_violation(message : String, code : String) : Nil add_violation, build_violation(message : String, code : String, value : _) : AVD::Violation::ConstraintViolationBuilderInterface
build_violation(message : String, parameters : Hash(String, String) = {} of String => String) : AVD::Violation::ConstraintViolationBuilderInterface
build_violation(message : String, code : String) : AVD::Violation::ConstraintViolationBuilderInterface build_violation, class_name class_name, constraint : AVD::Constraint | Nil constraint, group : String | Nil group, metadata : AVD::Metadata::MetadataInterface | Nil metadata, object object, property_name : String | Nil property_name, property_path : String property_path, root root, validator : AVD::Validator::ValidatorInterface validator, value value, violations : AVD::Violation::ConstraintViolationListInterface violations
Constructor Detail
Instance Method Detail
Adds a violation with the provided message, and code, value parameter.
The provided value is added to the violations' parameters as "{{ value }}".
Adds a violation with the provided message and code
Adds a violation with the provided message, and optionally parameters based on the node currently being validated.
Returns an AVD::Violation::ConstraintViolationBuilderInterface with the provided message, and code, and value.
The provided value is added to the violations' parameters as "{{ value }}".
Returns an AVD::Violation::ConstraintViolationBuilderInterface with the provided message, and code.
Returns an AVD::Violation::ConstraintViolationBuilderInterface with the provided message.
Can be used to add additional information to the AVD::Violation::ConstraintViolationInterface being adding it to self.
Returns the AVD::Constraint that is currently being validated, if any.
Returns an AVD::Metadata::MetadataInterface object for the value currently being validated.
This would be an AVD::Metadata::PropertyMetadataInterface if the current value is an object,
an AVD::Metadata::GenericMetadata if the current value is a plain value, and an
AVD::Metadata::ClassMetadata if the current value value is an entire class.
Returns the path to the property that is currently being validated.
For example, given a Person object that has an Address property;
the property path would be empty initially. When the address property
is being validated the property_path would be address.
When the street property of the related Address object is being validated
the property_path would be address.street.
This also works for collections of objects. If the Person object had multiple
addresses, the property path when validating the first street of the first address
would be addresses[0].street.
Returns the object initially passed to AVD::Validator::ValidatorInterface#validate.
Returns a reference to an AVD::Validator::ValidatorInterface that can be used to validate
additional constraints as part of another constraint.
Returns the AVD::Violation::ConstraintViolationInterface instances generated by the validator thus far.