com.esri.arcgis.geodatabase
Class IValidateProxy

java.lang.Object
  extended by com.esri.arcgis.interop.Dispatch
      extended by com.esri.arcgis.geodatabase.IValidateProxy
All Implemented Interfaces:
IValidate, Externalizable, Serializable

public class IValidateProxy
extends com.esri.arcgis.interop.Dispatch
implements IValidate, Serializable

Provides access to members to validate individual features.

Description

The IValidate interface can be used to validate individual features and objects from geodatabase feature classes and tables.

Remarks

The IValidate interface is used to test a row against the geodatabase rules defined for its object class. While the IValidation interface will validate a whole set of rows at once, IValidate operates on just one row; this can be useful if you want to validate the row immediately. IValidate also offers more detailed information on the failures; the Validate method returns an error message, and the other methods help identify what is wrong.

IValidate is not implemented by attributed relationships.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

See Also:
Serialized Form

Field Summary
 boolean noncastable
           
 
Fields inherited from class com.esri.arcgis.interop.Dispatch
DISPATCH_METHOD, DISPATCH_PROPERTYGET, DISPATCH_PROPERTYPUT, DISPATCH_PROPERTYPUTREF, objRef
 
Constructor Summary
  IValidateProxy()
           
  IValidateProxy(Object obj)
           
protected IValidateProxy(Object obj, String iid)
           
 
Method Summary
 void addListener(String iidStr, Object theListener, Object theSource)
           
 IFields getInvalidFields()
          Returns all invalid fields.
 IEnumRule getInvalidRules()
          The set of all invalid rules.
 IEnumRule getInvalidRulesByField(String fieldName)
          The set of all invalid rules for the specified field.
 void removeListener(String iidStr, Object theListener)
           
 boolean validate(String[] errorMessage)
          Validates the row.
 
Methods inherited from class com.esri.arcgis.interop.Dispatch
bindUsingMoniker, constructVtblPosTable, convertToNative, cookieForListener, createDispatch, createObjrefMonikerDisplayName, equals, getActiveObject, getActiveObject, getDefaultProperty, getDispatchIdOfName, getLastErrorCode, getMtsObjectContext, getObjRef, getPropertyByName, getPropertyByName, getVtblPos, hashCode, initDispatch, invoke, invokeMethodByName, invokeMethodByName, invokeMethodByName, invokePropertyGetByName, invokePropertyPutByName, invokePropertyPutByRefByName, isNativeMode, isObjRef, optimizedVtblInvoke, queryInterface, readExternal, release, setNativeMode, setPropertyByName, toString, vtblInvoke, writeExternal
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

noncastable

public boolean noncastable
Constructor Detail

IValidateProxy

public IValidateProxy()

IValidateProxy

public IValidateProxy(Object obj)
               throws IOException
Throws:
IOException

IValidateProxy

protected IValidateProxy(Object obj,
                         String iid)
                  throws IOException
Throws:
IOException
Method Detail

addListener

public void addListener(String iidStr,
                        Object theListener,
                        Object theSource)
                 throws IOException
Overrides:
addListener in class com.esri.arcgis.interop.Dispatch
Throws:
IOException

removeListener

public void removeListener(String iidStr,
                           Object theListener)
                    throws IOException
Overrides:
removeListener in class com.esri.arcgis.interop.Dispatch
Throws:
IOException

getInvalidFields

public IFields getInvalidFields()
                         throws IOException,
                                AutomationException
Returns all invalid fields.

Description

The GetInvalidFields method returns a field set containing the row's invalid fields.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getInvalidFields in interface IValidate
Returns:
A reference to a com.esri.arcgis.geodatabase.IFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInvalidRules

public IEnumRule getInvalidRules()
                          throws IOException,
                                 AutomationException
The set of all invalid rules.

Description

The GetInvalidRules method returns an enumerator of rules that are currently violated by the row.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getInvalidRules in interface IValidate
Returns:
A reference to a com.esri.arcgis.geodatabase.IEnumRule
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInvalidRulesByField

public IEnumRule getInvalidRulesByField(String fieldName)
                                 throws IOException,
                                        AutomationException
The set of all invalid rules for the specified field.

Description

The GetInvalidRulesByField method returns an enumerator of rules violated by the specified field of the row.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getInvalidRulesByField in interface IValidate
Parameters:
fieldName - The fieldName (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IEnumRule
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

validate

public boolean validate(String[] errorMessage)
                 throws IOException,
                        AutomationException
Validates the row.

Description

The Validate method indicates whether the row is violating any of its class's rules. A return value of true indicates the row is valid, while a return value of false indicates the row is violating one or more rules.

Remarks

Validate on a row occurs in five steps:

  1. Validate the subtype

  2. Validate the attribute rules

  3. Validate the network connectivity rules (if network feature)

  4. Validate the relationship rules

  5. Perform custom validation (using optional class extension)

The validate process stops once a row is found invalid. For example, if a network feature violates an attribute rule, the validation process stops and the feature's network connectivity rules are not evaluated until the attribute rule violation is corrected.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
validate in interface IValidate
Parameters:
errorMessage - The errorMessage (out: use single element array)
Returns:
The isValid
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.