org.geotools.validation
Interface Validation

All Known Subinterfaces:
FeatureValidation, IntegrityValidation
All Known Implementing Classes:
AddressGapValidation, AddressOverlapValidation, AngleSizeValidation, AttributeValidation, ContainsIntegrity, CrossesIntegrity, DefaultFeatureValidation, DefaultIntegrityValidation, DisjointIntegrity, DomainValidation, EqualityValidation, GazetteerNameValidation, IntersectsIntegrity, IsValidGeometryValidation, LineAbstractValidation, LineCoveredByFeatureLineValidation, LineCoveredByPolygonBoundaryValidation, LineCoveredByPolygonValidation, LineEndPointCoveredByLineValidation, LineIntersectsLineWithNodeValidation, LineLineAbstractValidation, LineMustBeASinglePartValidation, LineNoDanglesValidation, LineNoPseudoNodeValidation, LineNoSelfIntersectValidation, LineNoSelfOverlappingValidation, LineNotTouchingPolygonInteriorValidation, LinePointAbstractValidation, LinePolygonAbstractValidation, LinesNotIntersectValidation, LinesNotOverlapValidation, NullZeroValidation, OrphanNodeValidation, OverlapsIntegrity, PointCoveredByEndPointOfLineValidation, PointCoveredByLineValidation, PointCoveredByPolygonBoundaryValidation, PointCoveredByPolygonValidation, PointInsidePolygonValidation, PointLineAbstractValidation, PointPolygonAbstractValidation, PolygonBoundaryCoveredByPolygonValidation, PolygonCoveredByFeaturePolygonValidation, PolygonCoveredByPolygonValidation, PolygonLineAbstractValidation, PolygonNoGapsValidation, PolygonNotCoveredByPolygonValidation, PolygonNotOverlappingLineValidation, PolygonNotOverlappingPolygonValidation, PolygonPointAbstractValidation, PolygonPolygonAbstractValidation, RangeValidation, RelateIntegrity, RelationIntegrity, SingleValueValidation, SQLValidation, StarNodeValidation, TouchesIntegrity, UniqueFIDValidation, UniquityValidation, WithinIntegrity

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:

Author:
bowens, Refractions Research, Inc., $Author: dmzwiers $ (last modification)

Field Summary
static 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
 String getDescription()
          User's Description of this Validation.
 String getName()
          User's name for the validation.
 int getPriority()
          Priority used in scheduling this Validation test.
 String[] getTypeRefs()
          Identify the FeatureTypes that this validation test is run against.
 void setDescription(String description)
          Sets the description of the validation.
 void setName(String name)
          Sets the name of the validation.
 

Field Detail

PRIORITY_TRIVIAL

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

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

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

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

static final 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

void setName(String name)
Sets the name of the validation.

Parameters:
name - the name of the validation.

getName

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

Returns:
the name of the validation.

setDescription

void setDescription(String description)
Sets the description of the validation.

Parameters:
description - of the validation

getDescription

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

Returns:
the description of the validation.

getPriority

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

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

getTypeRefs

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 © 1996-2014 Geotools. All Rights Reserved.