PropertySchema class

Schema to validate object properties

See ObjectSchema

Example

var schema =  ObjectSchema()
    .withProperty( PropertySchema('id', TypeCode.String));

schema.validate({ id: '1', name: 'ABC' });       // Result: no errors
schema.validate({ name: 'ABC' });                // Result: no errors
schema.validate({ id: 1, name: 'ABC' });         // Result: id type mismatch
Inheritance

Constructors

PropertySchema([String? name, dynamic type, bool? req, List<IValidationRule>? rules])
Creates a new validation schema and sets its values.

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

getName() String?
Gets the property name.
getRules() List<IValidationRule>?
Gets validation rules to check values against.
inherited
getType() → dynamic
Gets the property type.
isRequired() bool
Gets a flag that always requires non-null values. For null values it raises a validation error.
inherited
makeOptional() Schema
Makes validated values optional. Validation for null values will be skipped.
inherited
makeRequired() Schema
Makes validated values always required (non-null). For null values the schema will raise errors.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
performTypeValidation(String? path, dynamic type, dynamic value, List<ValidationResult> results) → void
Validates a given value to match specified type. The type can be defined as a Schema, type, a type name or TypeCode When type is a Schema, it executes validation recursively against that Schema.
inherited
performValidation(String? path, dynamic value, List<ValidationResult> results) → void
Validates a given value against the schema and configured validation rules.
override
setName(String value) → void
Sets the property name.
setRequired(bool value) → void
Sets a flag that always requires non-null values.
inherited
setRules(List<IValidationRule> value) → void
Sets validation rules to check values against.
inherited
setType(dynamic value) → void
Sets a new property type. The type can be defined as type, type name or TypeCode
toString() String
A string representation of this object.
inherited
validate(dynamic value) List<ValidationResult>
Validates the given value and results validation results.
inherited
validateAndReturnException(String? correlationId, dynamic value, [bool strict = false]) ValidationException?
Validates the given value and returns a ValidationException if errors were found.
inherited
validateAndThrowException(String? correlationId, dynamic value, [bool strict = false]) → void
Validates the given value and throws a ValidationException if errors were found.
inherited
withRule(IValidationRule rule) Schema
Adds validation rule to this schema.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited