com.esri.arcgis.geodatabase
Interface IJunctionFeatureSource

All Superinterfaces:
java.io.Serializable
All Known Implementing Classes:
IJunctionFeatureSourceProxy, JunctionFeatureSource

public interface IJunctionFeatureSource
extends java.io.Serializable

Provides access to members that specify the properties of a network dataset source whose junction elements are derived from point geometry.

Product Availability

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

Remarks

The IJunctionFeatureSource interface is used to access the properties of the junction feature source, such as its connectivity groups and elevation field name.

To access the JunctionFeatureSource object for an existing network dataset source, use the Source, SourceByID, or SourceByName methods on the INetworkDataset interface.

The IJunctionFeatureSource interface is also used to define a new junction feature source.  To create a new junction feature source, cocreate the JunctionFeatureSource object, specify its properties on both the INetworkSource and IJunctionFeatureSource interfaces, and pass the object to the INetworkBuild::AddSource method on the network dataset.


Method Summary
 void addClassConnectivityGroup(int group)
          Adds a connectivity group in which this junction feature source participates.
 void addSubtypeConnectivityGroup(int subtypeCode, int group)
          Adds a connectivity group in which the specified subtype of this junction feature source participates.
 ILongArray getClassConnectivityGroups()
          Connectivity groups in which this junction feature source participates.
 int getClassConnectivityPolicy()
          Policy determining how all junction elements in this source connect to other edge elements.
 java.lang.String getElevationFieldName()
          The field name on the feature source to be used as the elevation field when determining connectivity at coincident vertices.
 ILongArray getSubtypeConnectivityGroups(int subtypeCode)
          Connectivity groups in which the specified subtype of this junction feature source participates.
 int getSubtypeConnectivityPolicy(int subtypeCode)
          Policy determining how the junction elements in the specified subtype of this source connect to other edge elements.
 boolean isUsesSubtypes()
          Indicates if this junction feature source determines connectivity groups and policies by subtypes.
 void removeAllClassConnectivityGroups()
          Removes all connectivity groups in which this junction feature source participates.
 void removeAllSubtypeConnectivityGroups(int subtypeCode)
          Removes all connectivity groups in which the specified subtype of this junction feature source participates.
 void setClassConnectivityPolicy(int policy)
          Policy determining how all junction elements in this source connect to other edge elements.
 void setElevationFieldName(java.lang.String name)
          The field name on the feature source to be used as the elevation field when determining connectivity at coincident vertices.
 void setSubtypeConnectivityPolicy(int subtypeCode, int policy)
          Policy determining how the junction elements in the specified subtype of this source connect to other edge elements.
 void setUsesSubtypes(boolean bySubtype)
          Indicates if this junction feature source determines connectivity groups and policies by subtypes.
 

Method Detail

getClassConnectivityGroups

public ILongArray getClassConnectivityGroups()
                                      throws java.io.IOException,
                                             AutomationException
Connectivity groups in which this junction feature source participates.

Remarks

JunctionFeatureSource can be assigned to connectivity group(s) in the network dataset in one of two ways:

If all features are assigned to the same connectivity group(s), then use the ClassConnectivityGroups property to retrieve which connectivity group(s) this JunctionFeatureSource is assigned.

If features are assigned to connectivity group(s) based on their Subtype values, then the ClassConnectivityGroups property is not used.  See the SubtypeConnectivityGroups property.

Returns:
A reference to a com.esri.arcgis.system.ILongArray
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addClassConnectivityGroup

public void addClassConnectivityGroup(int group)
                               throws java.io.IOException,
                                      AutomationException
Adds a connectivity group in which this junction feature source participates.

Remarks

JunctionFeatureSource can be assigned to connectivity group(s) in the network dataset in one of two ways:

If all features are assigned to the same connectivity group(s), then use the AddClassConnectivityGroup method to add a new connectivity group to the list of connectivity groups that this JunctionFeatureSource is assigned.

If features are assigned to connectivity group(s) based on their Subtype values, then the AddClassConnectivityGroup method is not used.  See the AddSubtypeConnectivityGroup method.

Parameters:
group - The group (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeAllClassConnectivityGroups

public void removeAllClassConnectivityGroups()
                                      throws java.io.IOException,
                                             AutomationException
Removes all connectivity groups in which this junction feature source participates.

Remarks

JunctionFeatureSource can be assigned to connectivity group(s) in the network dataset in one of two ways:

If all features are assigned to the same connectivity group(s), then use the RemoveAllClassConnectivityGroups method to clear out the list of connectivity groups that this JunctionFeatureSource is assigned.

If features are assigned to connectivity group(s) based on their Subtype values, then the RemoveAllClassConnectivityGroups method is not used.  See the RemoveAllSubtypeConnectivityGroups method.

Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSubtypeConnectivityGroups

public ILongArray getSubtypeConnectivityGroups(int subtypeCode)
                                        throws java.io.IOException,
                                               AutomationException
Connectivity groups in which the specified subtype of this junction feature source participates.

Remarks

JunctionFeatureSource can be assigned to connectivity group(s) in the network dataset in one of two ways:

If all features are assigned to the same connectivity group(s), then the SubtypeConnectivityGroups property is not used.  See the ClassConnectivityGroups property.

If features are assigned to connectivity group(s) based on their Subtype values, then use the SubtypeConnectivityGroups property to retrieve which connectivity group(s) this JunctionFeatureSource is assigned for the given Subtype value.

Parameters:
subtypeCode - The subtypeCode (in)
Returns:
A reference to a com.esri.arcgis.system.ILongArray
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addSubtypeConnectivityGroup

public void addSubtypeConnectivityGroup(int subtypeCode,
                                        int group)
                                 throws java.io.IOException,
                                        AutomationException
Adds a connectivity group in which the specified subtype of this junction feature source participates.

Remarks

JunctionFeatureSource can be assigned to connectivity group(s) in the network dataset in one of two ways:

If all features are assigned to the same connectivity group(s), then the AddSubtypeConnectivityGroup method is not used.  See the AddClassConnectivityGroup method.

If features are assigned to connectivity group(s) based on their Subtype values, then use the AddSubtypeConnectivityGroup method to add a new connectivity group to the list of connectivity groups that this JunctionFeatureSource is assigned for the given Subtype value.

Parameters:
subtypeCode - The subtypeCode (in)
group - The group (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeAllSubtypeConnectivityGroups

public void removeAllSubtypeConnectivityGroups(int subtypeCode)
                                        throws java.io.IOException,
                                               AutomationException
Removes all connectivity groups in which the specified subtype of this junction feature source participates.

Remarks

JunctionFeatureSource can be assigned to connectivity group(s) in the network dataset in one of two ways:

If all features are assigned to the same connectivity group(s), then the RemoveAllSubtypeConnectivityGroups method is not used.  See the RemoveAllClassConnectivityGroups method.

If features are assigned to connectivity group(s) based on their Subtype values, then use the RemoveAllSubtypeConnectivityGroups method to clear out the list of connectivity groups that this JunctionFeatureSource is assigned for the given Subtype value.

Parameters:
subtypeCode - The subtypeCode (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassConnectivityPolicy

public int getClassConnectivityPolicy()
                               throws java.io.IOException,
                                      AutomationException
Policy determining how all junction elements in this source connect to other edge elements.

Remarks

JunctionFeatureSource can be assigned to connectivity group(s) in the network dataset in one of two ways:

If all features are assigned to the same connectivity group(s), then use the ClassConnectivityPolicy property to specify the appropriate junction connectivity policy for the features in this JunctionFeatureSource.

If features are assigned to a connectivity group(s) based on their Subtype values, then the ClassConnectivityPolicy property is not used.  See the SubtypeConnectivityPolicy property.

Returns:
A com.esri.arcgis.geodatabase.esriNetworkJunctionConnectivityPolicy constant
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setClassConnectivityPolicy

public void setClassConnectivityPolicy(int policy)
                                throws java.io.IOException,
                                       AutomationException
Policy determining how all junction elements in this source connect to other edge elements.

Parameters:
policy - A com.esri.arcgis.geodatabase.esriNetworkJunctionConnectivityPolicy constant (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSubtypeConnectivityPolicy

public int getSubtypeConnectivityPolicy(int subtypeCode)
                                 throws java.io.IOException,
                                        AutomationException
Policy determining how the junction elements in the specified subtype of this source connect to other edge elements.

Remarks

JunctionFeatureSource can be assigned to connectivity group(s) in the network dataset in one of two ways:

If all features are assigned to the same connectivity group(s), then the SubtypeConnectivityPolicy property is not used.  See the ClassConnectivityPolicy property.

If features are assigned to a connectivity group(s) based on their Subtype values, then use the SubtypeConnectivityPolicy property to specify the appropriate junction connectivity policy for each Subtype value.

Parameters:
subtypeCode - The subtypeCode (in)
Returns:
A com.esri.arcgis.geodatabase.esriNetworkJunctionConnectivityPolicy constant
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSubtypeConnectivityPolicy

public void setSubtypeConnectivityPolicy(int subtypeCode,
                                         int policy)
                                  throws java.io.IOException,
                                         AutomationException
Policy determining how the junction elements in the specified subtype of this source connect to other edge elements.

Parameters:
subtypeCode - The subtypeCode (in)
policy - A com.esri.arcgis.geodatabase.esriNetworkJunctionConnectivityPolicy constant (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isUsesSubtypes

public boolean isUsesSubtypes()
                       throws java.io.IOException,
                              AutomationException
Indicates if this junction feature source determines connectivity groups and policies by subtypes.

Remarks

JunctionFeatureSource can be assigned to connectivity group(s) in the network dataset in one of two ways:

If all features are assigned to the same connectivity group(s), then the UsesSubtypes property should be set to False.  This means that the ClassConnectivityGroups and ClassConnectivityPolicy settings will apply to this JunctionFeatureSource.

If features are assigned to connectivity group(s) based on their Subtype values, then the UsesSubtypes property should be set to True.  This means that the SubtypeConnectivityGroups and SubtypeConnectivityPolicy settings will apply to this JunctionFeatureSource.

Returns:
The bySubtype
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUsesSubtypes

public void setUsesSubtypes(boolean bySubtype)
                     throws java.io.IOException,
                            AutomationException
Indicates if this junction feature source determines connectivity groups and policies by subtypes.

Parameters:
bySubtype - The bySubtype (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getElevationFieldName

public java.lang.String getElevationFieldName()
                                       throws java.io.IOException,
                                              AutomationException
The field name on the feature source to be used as the elevation field when determining connectivity at coincident vertices.

Returns:
The name
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setElevationFieldName

public void setElevationFieldName(java.lang.String name)
                           throws java.io.IOException,
                                  AutomationException
The field name on the feature source to be used as the elevation field when determining connectivity at coincident vertices.

Parameters:
name - The name (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.