Options
All
  • Public
  • Public/Protected
  • All
Menu

Class PropertySchema

Schema to validate object properties

see

ObjectSchema

Example

let schema = new ObjectSchema()
    .withProperty(new 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

Hierarchy

Index

Constructors

constructor

  • Creates a new validation schema and sets its values.

    see

    IValidationRule

    see

    TypeCode

    Parameters

    • Optional name: string

      (optional) a property name

    • Optional type: any

      (optional) a property type

    • Optional required: boolean

      (optional) true to always require non-null values.

    • Optional rules: IValidationRule[]

      (optional) a list with validation rules.

    Returns PropertySchema

Methods

getName

  • getName(): string
  • Gets the property name.

    Returns string

    the property name.

getRules

  • Gets validation rules to check values against.

    Returns IValidationRule[]

    a list with validation rules.

getType

  • getType(): any
  • Gets the property type.

    Returns any

    the property type.

isRequired

  • isRequired(): boolean
  • Gets a flag that always requires non-null values. For null values it raises a validation error.

    Returns boolean

    true to always require non-null values and false to allow null values.

makeOptional

  • Makes validated values optional. Validation for null values will be skipped.

    This method returns reference to this exception to implement Builder pattern to chain additional calls.

    see

    makeRequired

    Returns Schema

    this validation schema

makeRequired

  • Makes validated values always required (non-null). For null values the schema will raise errors.

    This method returns reference to this exception to implement Builder pattern to chain additional calls.

    see

    makeOptional

    Returns Schema

    this validation schema

Protected performTypeValidation

  • performTypeValidation(path: string, type: any, value: any, results: ValidationResult[]): 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.

    see

    performValidation

    Parameters

    • path: string

      a dot notation path to the value.

    • type: any

      a type to match the value type

    • value: any

      a value to be validated.

    • results: ValidationResult[]

      a list with validation results to add new results.

    Returns void

performValidation

  • performValidation(path: string, value: any, results: ValidationResult[]): void
  • Validates a given value against the schema and configured validation rules.

    Parameters

    • path: string

      a dot notation path to the value.

    • value: any

      a value to be validated.

    • results: ValidationResult[]

      a list with validation results to add new results.

    Returns void

setName

  • setName(value: string): void
  • Sets the property name.

    Parameters

    • value: string

      a new property name.

    Returns void

setRequired

  • setRequired(value: boolean): void
  • Sets a flag that always requires non-null values.

    Parameters

    • value: boolean

      true to always require non-null values and false to allow null values.

    Returns void

setRules

  • Sets validation rules to check values against.

    Parameters

    Returns void

setType

  • setType(value: any): void
  • Sets a new property type. The type can be defined as type, type name or TypeCode

    Parameters

    • value: any

      a new property type.

    Returns void

validate

  • Validates the given value and results validation results.

    see

    ValidationResult

    Parameters

    • value: any

      a value to be validated.

    Returns ValidationResult[]

    a list with validation results.

validateAndReturnException

  • validateAndReturnException(correlationId: string, value: any, strict?: boolean): ValidationException
  • Validates the given value and returns a ValidationException if errors were found.

    Parameters

    • correlationId: string

      (optional) transaction id to trace execution through call chain.

    • value: any

      a value to be validated.

    • Default value strict: boolean = false

      true to treat warnings as errors.

    Returns ValidationException

validateAndThrowException

  • validateAndThrowException(correlationId: string, value: any, strict?: boolean): void

withRule

  • Adds validation rule to this schema.

    This method returns reference to this exception to implement Builder pattern to chain additional calls.

    Parameters

    Returns Schema

    this validation schema.

Generated using TypeDoc