Skip to content

Validators

Steve Cote edited this page Aug 30, 2017 · 2 revisions

Coyote DX Validators are components which perform tests on the Working Frame within a Transaction Context and fire events in Listeners when their conditions are not met. This allows the Transform Engine to perform data quality checks prior to more expensive processing.

Data validation is performed immediately after Filters are run and just before the Transforms. When validation rules are broken, the onValidationFailed( OperationalContext, String ) event is triggered in all the registered Listeners. This allows the Transform Engine to log errors with the Working Frame.

Each validation rule can be configured to cause the Transaction Context to abort with the halt=true configuration option. This will cause the Transform Engine to skip past the remaining validators. The Transform Engine will then fire the onFrameFalidationFailed( OperationalContext, String ) event then attempt to read the next record. The halt switch is intended to reduce processing by skipping validations when it is known the working record is invalid. This is helpful when some validators may perform expensive lookups or calculations which can reduce throughput of the job. The default for halt is false. This allows the Transform Engine to collect all the errors for failed validation.

It is a good idea to have a listener registered with the job to record working records with fail validation so they can be processed off-line.

Home

  1. Concepts
  2. Features
  3. Transform Engine
  4. Quick Start
  5. Configuration
  6. Secrets Vault
  7. Readers
  8. Writers
    • List of Writers
    • Custom Writers
  9. Filters
    • Accept
    • Reject
    • Custom Filters
  10. Tasks
    • List of Tasks
    • Custom Tasks
  11. Validators
    • List of Validators
    • Custom Validators
  12. Listeners
    • List of Listeners
    • Custom Listeners
  13. Transforms
    • List of Transforms
    • Custom Transforms
  14. Mappers
  15. Context
  16. Databases
  17. Templates
  18. Logging
  19. Encryption
  20. Usage
  21. Expressions
  22. Examples
Clone this wiki locally