org.geotools.validation
Interface Validation

All Known Subinterfaces:
FeatureValidation, IntegrityValidation
All Known Implementing Classes:
DefaultFeatureValidation, DefaultIntegrityValidation

public interface Validation

Used to define a type of validation test that is performed on Features.

Each ValidationPlugIn is very specific in nature: it performs one test extermly well. This simplifies design decisions, documenation configuration and use.

The PlugIn is also required to supply some metadata to aid in its deployment, scripting, logging and execution and error recovery:

Version:
$Id: Validation.java 17704 2006-01-23 00:26:16Z desruisseaux $
Author:
bowens, Refractions Research, Inc., $Author: dmzwiers $ (last modification)

Field Summary
static java.lang.String[] ALL
          Empty String array for use with getTypeNames().
static int PRIORITY_COMPLEX
          A constant for getPriority() used for complex validation checks.
static int PRIORITY_INVOLVED
          A constant for getPriority() used for involved validation checks.
static int PRIORITY_SIMPLE
          A constant for getPriority() used for simple validation checks.
static int PRIORITY_TRIVIAL
          A constant for getPriority() used for Trivial validation checks.
 
Method Summary
 java.lang.String getDescription()
          User's Description of this Validation.
 java.lang.String getName()
          User's name for the validation.
 int getPriority()
          Priority used in scheduling this Validation test.
 java.lang.String[] getTypeRefs()
          Identify the FeatureTypes that this validation test is run against.
 void setDescription(java.lang.String description)
          Sets the description of the validation.
 void setName(java.lang.String name)
          Sets the name of the validation.
 

Field Detail

PRIORITY_TRIVIAL

public static final int PRIORITY_TRIVIAL
A constant for getPriority() used for Trivial validation checks.

This is a Priority Hint to Validation Processor based on computational expense.

Trivial is used for thing that don't require any real work - like checking for any O(1) opperations such as checking null values.

See Also:
Constant Field Values

PRIORITY_SIMPLE

public static final int PRIORITY_SIMPLE
A constant for getPriority() used for simple validation checks.

This is a Priority Hint to Validation Processor based on computational expense.

Used for simple attribute or geometry validations, basically anything that is Order(N) like a Bounds check.

See Also:
Constant Field Values

PRIORITY_COMPLEX

public static final int PRIORITY_COMPLEX
A constant for getPriority() used for complex validation checks.

This is a Priority Hint to Validation Processor based on computational expense.

Used for complex validations, basically anything that is has a Chance of being worse then O(N).

Any integrity tests between two FeatureTypes should be an example of a PRIORITY_COMPLEX.

See Also:
Constant Field Values

PRIORITY_INVOLVED

public static final int PRIORITY_INVOLVED
A constant for getPriority() used for involved validation checks.

This is a Priority Hint to Validation Processor based on computational expense.

Used for involved validations, basically anything that is has a Chance of being worse then O(N^2).

Any integrity tests involving network code, were we have to build the network and then walk it, is an example of PRIORITY_INVOLVED.

See Also:
Constant Field Values

ALL

public static final java.lang.String[] ALL
Empty String array for use with getTypeNames().

Used to denote that all FeatureTypes should be tested. (If this does not Pan out we may have to define the wild-card character "" or support Regex based typeName matching.

Method Detail

setName

public void setName(java.lang.String name)
Sets the name of the validation.

Parameters:
name - the name of the validation.

getName

public java.lang.String getName()
User's name for the validation.

Returns:
the name of the validation.

setDescription

public void setDescription(java.lang.String description)
Sets the description of the validation.

Parameters:
description - of the validation

getDescription

public java.lang.String getDescription()
User's Description of this Validation.

Returns:
the description of the validation.

getPriority

public int getPriority()
Priority used in scheduling this Validation test.

Returns:
The priority (time cost) of the validation test

getTypeRefs

public java.lang.String[] getTypeRefs()
Identify the FeatureTypes that this validation test is run against.

If this list is empty the ValidationProcess will run the test against all FeatureTypes. The ValidationProcess expects these names to be in the format dataStoreId:typeName.

Returns:
FeatureType names that this validation test is run against, empty for all, null to disable


Copyright © GeoTools. All Rights Reserved.