com.esri.arcgis.geodatabase
Interface IRelationshipClass2

All Superinterfaces:
IRelationshipClass, java.io.Serializable
All Known Implementing Classes:
AttributedRelationshipClass, IRelationshipClass2Proxy, MemoryRelationshipClass, RelationshipClass

public interface IRelationshipClass2
extends IRelationshipClass, java.io.Serializable

Provides access to members that get related object row pairs within a query filter specification.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Remarks

The IRelationshipClass2 interface was added to provide a method to get matching objects.

An AttributedRelationshipClass is a special kind of relationship class and is also a kind of table known as the relationship table. For non-attributed relationship classes, the relationships are stored with the objects themselves in the foreign key values. For attributed relationship classes, the relationships are defined by the objects in conjunction with the rows in the relationship table.

A good way of testing whether you have an AttributedRelationshipClass object is as follows.

If TypeOf pRelClass Is ITable Then Debug.Print
  "Attributed Relationship Class"
End If

See Also:
IRelationshipClass, ISet, RelationshipClass

Method Summary
 IRelClassEnumRowPairs getObjectsMatchingObjectArray(IArray pSrcObjectArray, IQueryFilter pQueryFilterAppliedToMatchingObjects, boolean returnAllObjectMatches)
          Gets rows pairs of objects that are related to the specified origin or destination object array, that also meet the query filter expression.
 IRelClassEnumRowPairs getObjectsMatchingObjectSetEx(ISet pSrcObjectSet, IQueryFilter pQueryFilterAppliedToMatchingObjects, boolean returnAllObjectMatches)
          Gets rows pairs of objects that are related to the specified origin or destination object set, that also meet the query filter expression.
 
Methods inherited from interface com.esri.arcgis.geodatabase.IRelationshipClass
addRelationshipRule, createRelationship, deleteRelationship, deleteRelationshipRule, deleteRelationshipsForObject, deleteRelationshipsForObjectSet, getBackwardPathLabel, getCardinality, getDestinationClass, getDestinationForeignKey, getDestinationPrimaryKey, getFeatureDataset, getForwardPathLabel, getNotification, getObjectsMatchingObjectSet, getObjectsRelatedToObject, getObjectsRelatedToObjectSet, getOriginClass, getOriginForeignKey, getOriginPrimaryKey, getRelationship, getRelationshipClassID, getRelationshipRules, getRelationshipsForObject, getRelationshipsForObjectSet, isAttributed, isComposite
 

Method Detail

getObjectsMatchingObjectSetEx

public IRelClassEnumRowPairs getObjectsMatchingObjectSetEx(ISet pSrcObjectSet,
                                                           IQueryFilter pQueryFilterAppliedToMatchingObjects,
                                                           boolean returnAllObjectMatches)
                                                    throws java.io.IOException,
                                                           AutomationException
Gets rows pairs of objects that are related to the specified origin or destination object set, that also meet the query filter expression.

Supported Platforms

Windows, Solaris, Linux

Remarks

The returnAllObjectMatches parameter indicates whether the first matching object or if all matching objects are returned. A value of True will return all object matches.

Parameters:
pSrcObjectSet - A reference to a com.esri.arcgis.system.ISet (in)
pQueryFilterAppliedToMatchingObjects - A reference to a com.esri.arcgis.geodatabase.IQueryFilter (in)
returnAllObjectMatches - The returnAllObjectMatches (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IRelClassEnumRowPairs
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getObjectsMatchingObjectArray

public IRelClassEnumRowPairs getObjectsMatchingObjectArray(IArray pSrcObjectArray,
                                                           IQueryFilter pQueryFilterAppliedToMatchingObjects,
                                                           boolean returnAllObjectMatches)
                                                    throws java.io.IOException,
                                                           AutomationException
Gets rows pairs of objects that are related to the specified origin or destination object array, that also meet the query filter expression.

Supported Platforms

Windows, Solaris, Linux

Remarks

The returnAllObjectMatches parameter indicates whether the first matching object or if all matching objects are returned. A value of True will return all object matches.

Parameters:
pSrcObjectArray - A reference to a com.esri.arcgis.system.IArray (in)
pQueryFilterAppliedToMatchingObjects - A reference to a com.esri.arcgis.geodatabase.IQueryFilter (in)
returnAllObjectMatches - The returnAllObjectMatches (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IRelClassEnumRowPairs
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.