org.geotools.validation.attributes
Class UniqueFIDValidation

java.lang.Object
  extended byorg.geotools.validation.DefaultIntegrityValidation
      extended byorg.geotools.validation.attributes.UniqueFIDValidation
All Implemented Interfaces:
IntegrityValidation, Validation

public class UniqueFIDValidation
extends DefaultIntegrityValidation

Ensure every feature has a unique Feature Id specified by uniqueID.

Please note that featureIDs are not attributes. Attributes may be checked with the UniquityValidation class.

The FeatureTypes it checks against are defined by typeNames[]. If a duplicate ID is detected, an error message returned via a Validation Result used as a visitor in the validation() method.

Example Use:


 UniqueFIDIntegrityValidation x = new UniqueFIDIntegrityValidation("uniqueFID_road", "Checks if each feature has a unique ID", new String[] {"road", "river"}, "FID");
 x.validate();
 

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

Field Summary
 
Fields inherited from interface org.geotools.validation.Validation
ALL, PRIORITY_COMPLEX, PRIORITY_INVOLVED, PRIORITY_SIMPLE, PRIORITY_TRIVIAL
 
Constructor Summary
UniqueFIDValidation()
          UniqueFIDIntegrityValidation constructor.
 
Method Summary
 int getPriority()
          Override getPriority.
 java.lang.String getTypeRef()
          Access typeRef property.
 java.lang.String[] getTypeRefs()
          Implementation of getTypeNames.
 void setTypeRef(java.lang.String typeRef)
          Set typeRef to indicate type, or for all.
 boolean validate(java.util.Map layers, com.vividsolutions.jts.geom.Envelope envelope, ValidationResults results)
          Override validate.
 
Methods inherited from class org.geotools.validation.DefaultIntegrityValidation
getDescription, getName, setDescription, setName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UniqueFIDValidation

public UniqueFIDValidation()
UniqueFIDIntegrityValidation constructor.

An empty constructor placed here for Java Beans

Method Detail

getPriority

public int getPriority()
Override getPriority.

Sets the priority level of this validation.

Specified by:
getPriority in interface Validation
Overrides:
getPriority in class DefaultIntegrityValidation
Returns:
A made up priority for this validation.
See Also:
Validation.getPriority()

validate

public boolean validate(java.util.Map layers,
                        com.vividsolutions.jts.geom.Envelope envelope,
                        ValidationResults results)
                 throws java.lang.Exception
Override validate.

Description ... This is supposed to go off and grab the necesary features from the database using the envelope with the typeNames. But it doesn't yet. It just uses the ones passed in through parameter layers.

Specified by:
validate in interface IntegrityValidation
Overrides:
validate in class DefaultIntegrityValidation
Parameters:
layers - a HashMap of key="TypeName" value="FeatureSource"
envelope - The bounding box of modified features
results - Storage for the error and warning messages
Returns:
True if there were no errors. False if there were errors.
Throws:
java.lang.Exception - DOCUMENT ME!
See Also:
IntegrityValidation.validate(java.util.Map, com.vividsolutions.jts.geom.Envelope, org.geotools.validation.ValidationResults)

getTypeRefs

public java.lang.String[] getTypeRefs()
Implementation of getTypeNames.

Specified by:
getTypeRefs in interface Validation
Overrides:
getTypeRefs in class DefaultIntegrityValidation
Returns:
Array of typeNames, or empty array for all, null for disabled
See Also:
org.geotools.validation.Validation#getTypeNames()

getTypeRef

public java.lang.String getTypeRef()
Access typeRef property.

Returns:
Returns the typeRef.

setTypeRef

public void setTypeRef(java.lang.String typeRef)
Set typeRef to indicate type, or for all.

Parameters:
typeRef - The typeRef to set.


Copyright © GeoTools. All Rights Reserved.