com.esri.arcgis.catalog
Class IMSConnection

java.lang.Object
  extended by com.esri.arcgis.catalog.IMSConnection
All Implemented Interfaces:
IGxObject, IGxObjectContainer, IGxObjectEdit, IGxObjectProperties, IGxObjectUI, IGxObjectWizard, IGxRemoteConnection, IIMSConnection, IIMSConnection2, INativeTypeInfo, com.esri.arcgis.interop.RemoteObjRef, Serializable

public class IMSConnection
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IGxObject, IGxObjectContainer, IIMSConnection, IIMSConnection2, INativeTypeInfo, IGxObjectEdit, IGxObjectProperties, IGxObjectUI, IGxObjectWizard, IGxRemoteConnection

GxObject that represents ArcIMS Connection.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

See Also:
Serialized Form

Constructor Summary
IMSConnection()
          Constructs a IMSConnection using ArcGIS Engine.
IMSConnection(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
IMSConnection theIMSConnection = (IMSConnection) obj;
 
Method Summary
 IGxObject addChild(IGxObject child)
          Adds a new child and returns a reference to it.
 void attach(IGxObject parent, IGxCatalog pCatalog)
          Attaches the object to its parent and the catalog.
 boolean canCopy()
          Indicates if the object can be copied.
 boolean canDelete()
          Indicates if the object can be deleted.
 boolean canRename()
          Indicates if the object can be renamed.
 void connect()
          Connects to an ArcIMS server.
 void delete()
          Deletes the object.
 void deleteChild(IGxObject child)
          Deletes the specified child object.
 void detach()
          Instructs the object to detach itself from its parent and the catalog.
 void disconnect()
          Disconnects from an ArcIMS server.
 void editProperties(int hParent)
          Presents a modal dialog to allow editing the object's properties.
 boolean equals(Object o)
          Compare this object with another
 String getBaseName()
          The base name of the object (i.e.
 String getCategory()
          The category of the object.
 IEnumGxObject getChildren()
          An enumeration of the child objects.
 IUID getClassID()
          The class ID of this object.
static String getClsid()
          getClsid.
 IUID getContextMenu()
          The class ID of the context menu for this object.
 String getFileName()
          Path to the IMS connection file.
 Object getFilterServices()
          Filters out only the specified services.
 String getFullName()
          The full name of the object.
 IName getInternalObjectName()
          The Name for the internal object that this GxObject represents.
 int getLargeImage()
          The large image that represents the object.
 int getLargeSelectedImage()
          The large image that represents the object when it is selected.
 String getName()
          The short name of the object.
 INativeType getNativeType()
          The native type.
 IUID getNewMenu()
          The class ID of the New menu for this object.
 IGxObject getParent()
          The parent of the object.
 void getPropByIndex(int index, String[] name, Object[] value)
          The name and value of the indexed property in the GxObject.
 Object getProperty(String name)
          The value of the named property in the GxObject.
 int getPropertyCount()
          The number of properties in the GxObject.
 int getSmallImage()
          The small image that represents the object.
 int getSmallSelectedImage()
          The small image that represents the object when it is selected.
 String getURL()
          URL to ArcIMS server.
 String getUserName()
          User name.
 String getVersion()
          ArcIMS server version.
 int hashCode()
          the hashcode for this object
 boolean isAreChildrenViewable()
          Indicates if the objects children are available for viewing in the tree-view.
 boolean isConnected()
          Indicates whether the IMS connection has been made.
 boolean isHasChildren()
          Indicates if the object has any children.
 boolean isSavePassword()
          Indicates if the password should be saved.
 boolean isValid()
          Indicates if the object is still valid.
 void loadFromFile(String path)
          Loads an IMS connection file containing the URL.
 void refresh()
          Updates the object and any children of the object.
 void rename(String newShortName)
          Renames the object.
 void saveToFile(String path)
          Writes an IMS connection file containing the URL.
 void setFilterServices(Object names)
          Filters out only the specified services.
 void setPassword(String rhs1)
          Password.
 void setProperty(String name, Object value)
          Set the value of the named property in the GxObject.
 void setSavePassword(boolean flag)
          Indicates if the password should be saved.
 void setURL(String uRL)
          URL to ArcIMS server.
 void setUserName(String userName)
          User name.
 
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

IMSConnection

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

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

IMSConnection

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

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

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

getName

public String getName()
               throws IOException,
                      AutomationException
The short name of the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getName in interface IGxObject
Returns:
The name
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFullName

public String getFullName()
                   throws IOException,
                          AutomationException
The full name of the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getFullName in interface IGxObject
Returns:
The name
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBaseName

public String getBaseName()
                   throws IOException,
                          AutomationException
The base name of the object (i.e. no extension).

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getBaseName in interface IGxObject
Returns:
The name
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCategory

public String getCategory()
                   throws IOException,
                          AutomationException
The category of the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getCategory in interface IGxObject
Returns:
The category
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getParent

public IGxObject getParent()
                    throws IOException,
                           AutomationException
The parent of the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getClassID

public IUID getClassID()
                throws IOException,
                       AutomationException
The class ID of this object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getClassID in interface IGxObject
Returns:
A reference to a com.esri.arcgis.system.IUID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInternalObjectName

public IName getInternalObjectName()
                            throws IOException,
                                   AutomationException
The Name for the internal object that this GxObject represents.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getInternalObjectName in interface IGxObject
Returns:
A reference to a com.esri.arcgis.system.IName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isValid

public boolean isValid()
                throws IOException,
                       AutomationException
Indicates if the object is still valid.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

attach

public void attach(IGxObject parent,
                   IGxCatalog pCatalog)
            throws IOException,
                   AutomationException
Attaches the object to its parent and the catalog.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
attach in interface IGxObject
Parameters:
parent - A reference to a com.esri.arcgis.catalog.IGxObject (in)
pCatalog - A reference to a com.esri.arcgis.catalog.IGxCatalog (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

detach

public void detach()
            throws IOException,
                   AutomationException
Instructs the object to detach itself from its parent and the catalog.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

refresh

public void refresh()
             throws IOException,
                    AutomationException
Updates the object and any children of the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

isHasChildren

public boolean isHasChildren()
                      throws IOException,
                             AutomationException
Indicates if the object has any children.

Remarks

Note: This property always return True even when it has no children. This was done to improve the overall ArcCatalog browsing performance.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isHasChildren in interface IGxObjectContainer
Returns:
The hasChildren
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getChildren

public IEnumGxObject getChildren()
                          throws IOException,
                                 AutomationException
An enumeration of the child objects.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getChildren in interface IGxObjectContainer
Returns:
A reference to a com.esri.arcgis.catalog.IEnumGxObject
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isAreChildrenViewable

public boolean isAreChildrenViewable()
                              throws IOException,
                                     AutomationException
Indicates if the objects children are available for viewing in the tree-view.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isAreChildrenViewable in interface IGxObjectContainer
Returns:
The areViewable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addChild

public IGxObject addChild(IGxObject child)
                   throws IOException,
                          AutomationException
Adds a new child and returns a reference to it. However, if a duplicate already exists, the function returns the existing child instead.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
addChild in interface IGxObjectContainer
Parameters:
child - A reference to a com.esri.arcgis.catalog.IGxObject (in)
Returns:
A reference to a com.esri.arcgis.catalog.IGxObject
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

deleteChild

public void deleteChild(IGxObject child)
                 throws IOException,
                        AutomationException
Deletes the specified child object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
deleteChild in interface IGxObjectContainer
Parameters:
child - A reference to a com.esri.arcgis.catalog.IGxObject (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isConnected

public boolean isConnected()
                    throws IOException,
                           AutomationException
Indicates whether the IMS connection has been made.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

connect

public void connect()
             throws IOException,
                    AutomationException
Connects to an ArcIMS server.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

disconnect

public void disconnect()
                throws IOException,
                       AutomationException
Disconnects from an ArcIMS server.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

loadFromFile

public void loadFromFile(String path)
                  throws IOException,
                         AutomationException
Loads an IMS connection file containing the URL.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

saveToFile

public void saveToFile(String path)
                throws IOException,
                       AutomationException
Writes an IMS connection file containing the URL.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getFileName

public String getFileName()
                   throws IOException,
                          AutomationException
Path to the IMS connection file.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getFileName in interface IIMSConnection
Returns:
The fileName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getURL

public String getURL()
              throws IOException,
                     AutomationException
URL to ArcIMS server.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getURL in interface IIMSConnection
Returns:
The uRL
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setURL

public void setURL(String uRL)
            throws IOException,
                   AutomationException
URL to ArcIMS server.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

setUserName

public void setUserName(String userName)
                 throws IOException,
                        AutomationException
User name.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getUserName

public String getUserName()
                   throws IOException,
                          AutomationException
User name.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getUserName in interface IIMSConnection
Returns:
The userName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setPassword

public void setPassword(String rhs1)
                 throws IOException,
                        AutomationException
Password.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

isSavePassword

public boolean isSavePassword()
                       throws IOException,
                              AutomationException
Indicates if the password should be saved.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isSavePassword in interface IIMSConnection
Returns:
The flag
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSavePassword

public void setSavePassword(boolean flag)
                     throws IOException,
                            AutomationException
Indicates if the password should be saved.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getFilterServices

public Object getFilterServices()
                         throws IOException,
                                AutomationException
Filters out only the specified services. Array of strings.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getFilterServices in interface IIMSConnection
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFilterServices

public void setFilterServices(Object names)
                       throws IOException,
                              AutomationException
Filters out only the specified services. Array of strings.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
setFilterServices in interface IIMSConnection
Parameters:
names - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getVersion

public String getVersion()
                  throws IOException,
                         AutomationException
ArcIMS server version.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getVersion in interface IIMSConnection2
Returns:
The version
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNativeType

public INativeType getNativeType()
                          throws IOException,
                                 AutomationException
The native type.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

canRename

public boolean canRename()
                  throws IOException,
                         AutomationException
Indicates if the object can be renamed.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

rename

public void rename(String newShortName)
            throws IOException,
                   AutomationException
Renames the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

canDelete

public boolean canDelete()
                  throws IOException,
                         AutomationException
Indicates if the object can be deleted.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

delete

public void delete()
            throws IOException,
                   AutomationException
Deletes the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

editProperties

public void editProperties(int hParent)
                    throws IOException,
                           AutomationException
Presents a modal dialog to allow editing the object's properties.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
editProperties in interface IGxObjectEdit
Parameters:
hParent - The hParent (A COM typedef) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

canCopy

public boolean canCopy()
                throws IOException,
                       AutomationException
Indicates if the object can be copied.

Remarks

CanCopy must return True if your customized GxObject is intended to support copy/paste, drag/drop within ArcCatalog or drag/drop from ArcCatalog to ArcMap.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getPropertyCount

public int getPropertyCount()
                     throws IOException,
                            AutomationException
The number of properties in the GxObject.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getPropertyCount in interface IGxObjectProperties
Returns:
The count
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPropByIndex

public void getPropByIndex(int index,
                           String[] name,
                           Object[] value)
                    throws IOException,
                           AutomationException
The name and value of the indexed property in the GxObject.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getPropByIndex in interface IGxObjectProperties
Parameters:
index - The index (in)
name - The name (in/out: use single element array)
value - A Variant (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getProperty

public Object getProperty(String name)
                   throws IOException,
                          AutomationException
The value of the named property in the GxObject.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getProperty in interface IGxObjectProperties
Parameters:
name - The name (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setProperty

public void setProperty(String name,
                        Object value)
                 throws IOException,
                        AutomationException
Set the value of the named property in the GxObject.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
setProperty in interface IGxObjectProperties
Parameters:
name - The name (in)
value - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSmallImage

public int getSmallImage()
                  throws IOException,
                         AutomationException
The small image that represents the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getSmallImage in interface IGxObjectUI
Returns:
The hBitmap (A COM typedef)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSmallSelectedImage

public int getSmallSelectedImage()
                          throws IOException,
                                 AutomationException
The small image that represents the object when it is selected.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getSmallSelectedImage in interface IGxObjectUI
Returns:
The hBitmap (A COM typedef)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLargeImage

public int getLargeImage()
                  throws IOException,
                         AutomationException
The large image that represents the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getLargeImage in interface IGxObjectUI
Returns:
The hBitmap (A COM typedef)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLargeSelectedImage

public int getLargeSelectedImage()
                          throws IOException,
                                 AutomationException
The large image that represents the object when it is selected.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getLargeSelectedImage in interface IGxObjectUI
Returns:
The hBitmap (A COM typedef)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getContextMenu

public IUID getContextMenu()
                    throws IOException,
                           AutomationException
The class ID of the context menu for this object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getContextMenu in interface IGxObjectUI
Returns:
A reference to a com.esri.arcgis.system.IUID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNewMenu

public IUID getNewMenu()
                throws IOException,
                       AutomationException
The class ID of the New menu for this object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getNewMenu in interface IGxObjectUI
Returns:
A reference to a com.esri.arcgis.system.IUID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.