com.esri.arcgis.geodatabase
Interface INetworkSource

All Superinterfaces:
Serializable
All Known Implementing Classes:
EdgeFeatureSource, INetworkSourceProxy, JunctionFeatureSource, NetworkSource, SDCNetworkSource, SystemJunctionSource, TurnFeatureSource

public interface INetworkSource
extends Serializable

Provides access to members that specify the properties of a source in a network dataset.

Remarks

The INetworkSource interface is used to access the properties of the network source, such as its name and source type.

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

The INetworkSource interface is also used to define a new network source. To create a new network source, cocreate the appropriate NetworkSource object, specify its properties, and pass the object to the INetworkBuild::AddSource method on the network dataset.

Product Availability

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


Method Summary
 int getElementType()
          Network element type of this network source.
 int getID()
          Unique identifier of this network source.
 String getName()
          Name of the class associated with this network source.
 INetworkSourceDirections getNetworkSourceDirections()
          The driving directions settings for this network source.
 IPropertySet getProperties()
          Property set of this network source.
 int getSourceType()
          Type of network source.
 boolean isUsesGeometryInConnectivity()
          Indicates if the source object's geometry is used in determining network connectivity.
 void setElementType(int elementType)
          Network element type of this network source.
 void setName(String sourceName)
          Name of the class associated with this network source.
 void setNetworkSourceDirectionsByRef(INetworkSourceDirections sourceDirections)
          The driving directions settings for this network source.
 void setProperties(IPropertySet sourceProperties)
          Property set of this network source.
 

Method Detail

getID

int getID()
          throws IOException,
                 AutomationException
Unique identifier of this network source.

Remarks

Each source in a Network Dataset is identified by a unique value, the ID property. The ID property can be used to get a reference to the corresponding network source through the INetworkDataset::SourceByID property. This ID is different than the ID value returned by the IObjectClass::ObjectClassID property.

As with ObjectID values, SourceID values are never reused. They are not guaranteed to be sequential, but are guaranteed to be in increasing order based on when the source was added to the network. Unless the source is added or deleted from the DataElement, the SourceID values will remain constant after the INetworkDataset::UpdateSchema method is called.

Product Availability

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

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

getElementType

int getElementType()
                   throws IOException,
                          AutomationException
Network element type of this network source.

Product Availability

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

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

setElementType

void setElementType(int elementType)
                    throws IOException,
                           AutomationException
Network element type of this network source.

Product Availability

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

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

getName

String getName()
               throws IOException,
                      AutomationException
Name of the class associated with this network source.

Remarks

The Name property for the NetworkSource is exactly the same as the name of the reference FeatureClass. The feature classes that participate in the network dataset can be opened from the NetworkDataset by simply calling IFeatureClassContainer::ClassByName and passing in this Name.

NOTE: For SDC network datasets, not all network sources have a reference feature class. Only those feature classes returned in the IFeatureClassContainer::Classes enumeration can be opened.

Unlike other network dataset types, the source names for an SDC network dataset are not the same as the feature class names of the SDC feature classes. For SDC data, the source name for the edge feature source is the same as the network dataset name (obtained from IDataset::Name).

Product Availability

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

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

setName

void setName(String sourceName)
             throws IOException,
                    AutomationException
Name of the class associated with this network source.

Product Availability

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

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

getProperties

IPropertySet getProperties()
                           throws IOException,
                                  AutomationException
Property set of this network source.

Product Availability

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

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

setProperties

void setProperties(IPropertySet sourceProperties)
                   throws IOException,
                          AutomationException
Property set of this network source.

Product Availability

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

Parameters:
sourceProperties - A reference to a com.esri.arcgis.system.IPropertySet (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isUsesGeometryInConnectivity

boolean isUsesGeometryInConnectivity()
                                     throws IOException,
                                            AutomationException
Indicates if the source object's geometry is used in determining network connectivity.

Remarks

The UsesGeometryInConnectivity property indicates whether the geometries of the features in a NetworkSource are used in determining how its network elements are connected to each other.

For example, the geometries of the features in an EdgeFeatureSource and JunctionFeatureSource are used to determine how the generated edge and junction elements connect to each other. The UsesGeometryInConnectivity property for these sources is True.

In contrast, the geometries of the features in a TurnFeatureSource are not used in deteriming how the turn elements are associated with the edges and junctions of the network -- the fields of the TurnFeatureSource feature class determine this. The UsesGeometryInConnectivity property for the TurnFeatureSource is False.

Product Availability

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

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

getSourceType

int getSourceType()
                  throws IOException,
                         AutomationException
Type of network source.

Product Availability

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

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

getNetworkSourceDirections

INetworkSourceDirections getNetworkSourceDirections()
                                                    throws IOException,
                                                           AutomationException
The driving directions settings for this network source.

Remarks

The NetworkSourceDirections property specifies the information needed to generate driving directions when reporting routes traversing elements from this NetworkSource.

Product Availability

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

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

setNetworkSourceDirectionsByRef

void setNetworkSourceDirectionsByRef(INetworkSourceDirections sourceDirections)
                                     throws IOException,
                                            AutomationException
The driving directions settings for this network source.

Product Availability

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

Parameters:
sourceDirections - A reference to a com.esri.arcgis.geodatabase.INetworkSourceDirections (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.