com.esri.arcgis.networkanalyst
Class NALocation

java.lang.Object
  extended by com.esri.arcgis.networkanalyst.NALocation
All Implemented Interfaces:
com.esri.arcgis.interop.RemoteObjRef, INALocation, IDocumentVersionSupportGEN, IPersist, IPersistStream, Externalizable, Serializable

public class NALocation
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, INALocation, IPersistStream, IDocumentVersionSupportGEN, Externalizable

Defines the side and position of an analysis object on a feature.

Remarks

An NALocation object specifies the side and position along a Feature in a NetworkDataset.

NALocation objects can be CoCreated, retrieved from an NALocationObject or NALocationFeature object by getting the NALocation property on the INALocationObject interface, or retrieved through the NALocator object.

Product Availability

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

See Also:
Serialized Form

Constructor Summary
NALocation()
          Constructs a NALocation using ArcGIS Engine.
NALocation(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
NALocation theNALocation = (NALocation) obj;
 
Method Summary
 Object convertToSupportedObject(int docVersion)
          Convert the object to another object that is supported.
 boolean equals(Object o)
          Compare this object with another
 void getClassID(GUID[] pClassID)
          getClassID
static String getClsid()
          getClsid.
 int getSide()
          The side of the feature.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 int getSourceID()
          The ID of the network source.
 int getSourceOID()
          The OID of the feature.
 double getSourcePosition()
          The position along the feature.
 int hashCode()
          the hashcode for this object
 void isDirty()
          isDirty
 boolean isLocated()
          Indicates if the location has been found on the network.
 boolean isSupportedAtVersion(int docVersion)
          Is this object valid at the given document version.
 void load(IStream pstm)
          load
 void readExternal(ObjectInput in)
           
 void save(IStream pstm, int fClearDirty)
          save
 void setSide(int side)
          The side of the feature.
 void setSourceID(int sourceID)
          The ID of the network source.
 void setSourceOID(int sourceOID)
          The OID of the feature.
 void setSourcePosition(double position)
          The position along the feature.
 void writeExternal(ObjectOutput out)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef
getJintegraDispatch, release
 

Constructor Detail

NALocation

public NALocation()
           throws IOException,
                  UnknownHostException
Constructs a NALocation using ArcGIS Engine.

Throws:
IOException - if there are interop problems
UnknownHostException - if there are interop problems

NALocation

public NALocation(Object obj)
           throws IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
NALocation theNALocation = (NALocation) obj;

Construct a NALocation using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to NALocation.

Parameters:
obj - an object returned from ArcGIS Engine or Server
Throws:
IOException - if there are interop problems
Method Detail

getClsid

public static String getClsid()
getClsid.


equals

public boolean equals(Object o)
Compare this object with another

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

setSourceID

public void setSourceID(int sourceID)
                 throws IOException,
                        AutomationException
The ID of the network source.

Remarks

The SourceID property specifies the SourceID of the feature class in the NetworkDataset that the NALocation is referencing. The SourceID of the feature class can be retrieved from the ID property on the INetworkSource interface.

Product Availability

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

Specified by:
setSourceID in interface INALocation
Parameters:
sourceID - The sourceID (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSourceID

public int getSourceID()
                throws IOException,
                       AutomationException
The ID of the network source.

Remarks

The SourceID property specifies the SourceID of the feature class in the NetworkDataset that the NALocation is referencing. The SourceID of the feature class can be retrieved from the ID property on the INetworkSource interface.

Product Availability

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

Specified by:
getSourceID in interface INALocation
Returns:
The sourceID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSourceOID

public void setSourceOID(int sourceOID)
                  throws IOException,
                         AutomationException
The OID of the feature.

Remarks

The SourceOID property specifies the ObjectID of the feature in the NetworkDataset that the NALocation is referencing. The SourceOID is used in conjunction with the SourceID to uniquely specify a Feature in the NetworkDataset.

Product Availability

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

Specified by:
setSourceOID in interface INALocation
Parameters:
sourceOID - The sourceOID (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSourceOID

public int getSourceOID()
                 throws IOException,
                        AutomationException
The OID of the feature.

Remarks

The SourceOID property specifies the ObjectID of the feature in the NetworkDataset that the NALocation is referencing. The SourceOID is used in conjunction with the SourceID to uniquely specify a Feature in the NetworkDataset.

Product Availability

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

Specified by:
getSourceOID in interface INALocation
Returns:
The sourceOID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSourcePosition

public void setSourcePosition(double position)
                       throws IOException,
                              AutomationException
The position along the feature.

Remarks

The SourcePosition property specifies the position along the feature specified by the SourceID and SourceOID. Valid values are in the range of 0 to 1. A value of 0.25 would translate to 1/4 of the way along the source feature in the digitized direction.

Product Availability

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

Specified by:
setSourcePosition in interface INALocation
Parameters:
position - The position (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSourcePosition

public double getSourcePosition()
                         throws IOException,
                                AutomationException
The position along the feature.

Remarks

The SourcePosition property specifies the position along the feature specified by the SourceID and SourceOID. Valid values are in the range of 0 to 1. A value of 0.25 would translate to 1/4 of the way along the source feature in the digitized direction.

Product Availability

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

Specified by:
getSourcePosition in interface INALocation
Returns:
The position
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSide

public void setSide(int side)
             throws IOException,
                    AutomationException
The side of the feature.

Remarks

The Side property specifies the position of the NALocation in relation to the feature specified by the SourceID and SourceOID. Valid values are dictated by the enumeration esriNAEdgeSideType which has values esriNAEdgeSideRight (1) and esriNAEdgeSideLeft (2). The side is always in relation to the digitized direction of the feature.

Product Availability

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

Specified by:
setSide in interface INALocation
Parameters:
side - A com.esri.arcgis.networkanalyst.esriNAEdgeSideType constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSide

public int getSide()
            throws IOException,
                   AutomationException
The side of the feature.

Remarks

The Side property specifies the position of the NALocation in relation to the feature specified by the SourceID and SourceOID. Valid values are dictated by the enumeration esriNAEdgeSideType, which has values esriNAEdgeSideRight (1) and esriNAEdgeSideLeft (2). The side is always in relation to the digitized direction of the feature.

Product Availability

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

Specified by:
getSide in interface INALocation
Returns:
A com.esri.arcgis.networkanalyst.esriNAEdgeSideType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isLocated

public boolean isLocated()
                  throws IOException,
                         AutomationException
Indicates if the location has been found on the network.

Remarks

This property returns True if the SourceID, SourceOID, SourcePosition, and Side properties all have valid values that should correspond to a position along a feature in a NetworkDataset.

Product Availability

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

Specified by:
isLocated in interface INALocation
Returns:
The located
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isDirty

public void isDirty()
             throws IOException,
                    AutomationException
isDirty

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isDirty in interface IPersistStream
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

load

public void load(IStream pstm)
          throws IOException,
                 AutomationException
load

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
load in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

save

public void save(IStream pstm,
                 int fClearDirty)
          throws IOException,
                 AutomationException
save

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
save in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
fClearDirty - The fClearDirty (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSizeMax

public void getSizeMax(_ULARGE_INTEGER[] pcbSize)
                throws IOException,
                       AutomationException
getSizeMax

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSizeMax in interface IPersistStream
Parameters:
pcbSize - A Structure: com.esri.arcgis.system._ULARGE_INTEGER (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassID

public void getClassID(GUID[] pClassID)
                throws IOException,
                       AutomationException
getClassID

Description

IPersist is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getClassID in interface IPersist
Parameters:
pClassID - A Structure: com.esri.arcgis.support.ms.stdole.GUID (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isSupportedAtVersion

public boolean isSupportedAtVersion(int docVersion)
                             throws IOException,
                                    AutomationException
Is this object valid at the given document version.

Remarks

Use IsSupportedAtVersion to identify if a particular object should be saved to the ObjectStream. This result is based on the esriArcGISVersion enumeration. In some instances, if the object is not supported at a particular ArcGIS version, the object may support conversion to another similar object; use IDocumentVersionSupportGEN::ConvertToSupportedObject to accomplish this.

Product Availability

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

Specified by:
isSupportedAtVersion in interface IDocumentVersionSupportGEN
Parameters:
docVersion - A com.esri.arcgis.system.esriArcGISVersion constant (in)
Returns:
The supported
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

convertToSupportedObject

public Object convertToSupportedObject(int docVersion)
                                throws IOException,
                                       AutomationException
Convert the object to another object that is supported.

Remarks

This method should be used when IDocumentVersionSupportGEN::IsSupportedAtVersion returns FALSE. Calling ConvertToSupportedObject will return an IUnknown pointer to a relevant object supported at the particular ArcGIS version. Not all objects will return a supported object; in these cases a null pointer will be returned.

Product Availability

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

Specified by:
convertToSupportedObject in interface IDocumentVersionSupportGEN
Parameters:
docVersion - A com.esri.arcgis.system.esriArcGISVersion constant (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

writeExternal

public void writeExternal(ObjectOutput out)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Throws:
IOException

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Throws:
IOException
ClassNotFoundException