Package project35.soa.validation

The classes in this package support Project35's facilities for validating the data set.

See:
          Description

Interface Summary
ConstraintDescription interface used by some validator classes to return a phrase that describes the nature of its constraints; used in making reports about properties of XML Schema constructs
DocumentValidationService a validation service that is triggered whenever the user explicitly activates "Show Errors" or when the current data file is exported to a final submission format.
EditFieldValidationService A generic interface used to validate field values.
FieldValidationService A generic interface used to validate field values.
ListFieldValidationService A generic interface used to validate field values.
RecordModelValidationService describes a record model validation service that is activated whenever the user tries to commit changes to the current record.
 

Class Summary
AbstractEditFieldValidationService Has routines for validating required fields.
BooleanValidator checks that a field value is a valid boolean
BoundedDoubleValidator Determines whether a double field value is within minimum and maximum bounds boundaries are inclusive.
BoundedFloatValidator Determines whether a float field value is within minimum and maximum bounds boundaries are inclusive.
BoundedIntegerValidator Determines whether an integer field value is within minimum and maximum bounds boundaries are inclusive.
Choose1FromNValidator This class is used for combination box fields that have a "None" option.
DateTimeValidator This validator checks if a String value is formatted according to the XML Schema dateTime format.
DateValidator In Project35, the user can establish which format they want to use to express date values.
DoubleValidator Checks whether a field value is a valid double
FieldValidationServiceFactory Provides a singleton pattern for producing registered validation classes.
FloatValidator Checks whether field value is a valid float
IntegerValidator Checks whether a field value is a valid integer
NumericValidator a marker class indicating that the validation service affects numeric values.
PositiveIntegerValidator checks that a field is a positive integer
RequiredFieldValidator checks whether a required field has been left blank.
StringMaskValidator Checks that a string field value matches a regular expression.
StringValidator Checks that a value is a string - this class should probably be deprecated.
StubbedDocumentValidationService Copyright (c) 2008 Kevin Garwood for Project35.
StubbedEditFieldValidationService Copyright (c) 2008 Kevin Garwood for Project35.
StubbedListFieldValidationService Copyright (c) 2008 Kevin Garwood for Project35.
StubbedRecordValidationService Copyright (c) 2008 Kevin Garwood for Project35.
URLValidator Supposed to check whether field is a valid URL.
ValidationFacility this is meant to be the main class for performing validation on fields, records and documents in Project35.
ValidationServiceRegistry given the name of a record or a field, returns validation services that should be used.
 

Package project35.soa.validation Description

The classes in this package support Project35's facilities for validating the data set. There are three main interfaces that developers can implement to create their own validation services. DocumentValidationService is for services which validate the contents of an entire data set. They are triggered whenever an end-user attempts to use the "Export to Final Submission Format" button in the File Menu or the "Show Errors" button in the View Menu. RecordModelValidationService is for services which are meant to identify illegal combinations of form field values. This service is triggered whenever the end-users press "Keep" or "Done" buttons on the main record form. FieldValidationService is for services which validate the contents of a particular field. EditFieldValidationServices are used to validate a single field value, whereas a ListFieldValidationService will be used to identify errors in the number and type of child records a list field contains.

Most of the classes in the package focus on default field validation services which perform type checking on field values. All of them extend AbstractEditFieldValidationService which contains code for managing the field name and for determining whether a field value is empty. The rest of the classes apply type checking to field values which are non-empty. Project35 has a separate validation service to scan for required fields which are left empty.

Project35 initiates a validation activity via the ValidationFacility class, which in turn applies appropriate field, record and document level validation services.