com.esri.arcgis.datainterop
Class FMEDatasetHelper

java.lang.Object
  extended by com.esri.arcgis.datainterop.FMEDatasetHelper
All Implemented Interfaces:
IPlugInDatasetHelper, IPlugInDatasetInfo, IPlugInFastRowCount, com.esri.arcgis.interop.RemoteObjRef, Serializable

public class FMEDatasetHelper
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IPlugInDatasetInfo, IPlugInFastRowCount, IPlugInDatasetHelper

FMEDatasetHelper Class

Product Availability

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

See Also:
Serialized Form

Constructor Summary
FMEDatasetHelper()
          Constructs a FMEDatasetHelper using ArcGIS Engine.
FMEDatasetHelper(Object obj)
          Construct a FMEDatasetHelper using a reference to such an object returned from ArcGIS Engine or Server.
 
Method Summary
 boolean equals(Object o)
          Compare this object with another
 IPlugInCursorHelper fetchAll(int classIndex, String whereClause, Object fieldMap)
          Gets all the records in the database.
 IPlugInCursorHelper fetchByEnvelope(int classIndex, IEnvelope env, boolean strictSearch, String whereClause, Object fieldMap)
          Gets the records within the envelope (or the full extent if the envelope is null).
 IPlugInCursorHelper fetchByID(int classIndex, int iD, Object fieldMap)
          Gets a record by object id.
 IEnvelope getBounds()
          The extent of the dataset.
 int getClassCount()
          The number of classes in the dataset.
 int getClassIndex(String name)
          The index of the named class.
 String getClassName(int index)
          The name of the indicated class.
static String getClsid()
          getClsid.
 int getDatasetType()
          The type of the dataset.
 IFields getFields(int classIndex)
          The field set of the indicated class.
 int getGeometryType()
          The geometry type of the dataset.
 String getLocalDatasetName()
          The name of the dataset within the workspace.
 int getOIDFieldIndex(int classIndex)
          The index of the oid field in the field set of the indicated dataset.
 int getRowCount()
          The number of rows in the dataset.
 int getShapeFieldIndex(int classIndex)
          The index of the shape field in the field set of the indicated dataset.
 String getShapeFieldName()
          The name of the dataset's shape field.
 int hashCode()
          the hashcode for this object
 
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

FMEDatasetHelper

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

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

FMEDatasetHelper

public FMEDatasetHelper(Object obj)
                 throws IOException
Construct a FMEDatasetHelper using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to FMEDatasetHelper.

Parameters:
obj - an object returned from ArcGIS Engine or Server
Throws:
IOException - if there are interop problems FMEDatasetHelper theFMEDatasetHelper = (FMEDatasetHelper) obj;
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

getLocalDatasetName

public String getLocalDatasetName()
                           throws IOException,
                                  AutomationException
The name of the dataset within the workspace.

Description

Returns the local name of this dataset. This is the name that will show up in ArcCatalog, and that will be passed to the OpenDataset method of the workspace.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getDatasetType

public int getDatasetType()
                   throws IOException,
                          AutomationException
The type of the dataset.

Description

Returns the dataset type of this dataset. Determines what kind of icon the dataset will have in ArcCatalog.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDatasetType in interface IPlugInDatasetInfo
Returns:
A com.esri.arcgis.geodatabase.esriDatasetType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getGeometryType

public int getGeometryType()
                    throws IOException,
                           AutomationException
The geometry type of the dataset.

Description

Returns the geometry type of this dataset. Only called if the dataset type is feature class. Determines which feature class icon the dataset will have in ArcCatalog.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getGeometryType in interface IPlugInDatasetInfo
Returns:
A com.esri.arcgis.geometry.esriGeometryType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getShapeFieldName

public String getShapeFieldName()
                         throws IOException,
                                AutomationException
The name of the dataset's shape field.

Description

Returns the name of the shape field of this dataset. Only called if dataset type is feature class and geometry type is not null. Used to construct the FeatureClassName.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getRowCount

public int getRowCount()
                throws IOException,
                       AutomationException
The number of rows in the dataset.

Description

Returns the number of rows in the dataset. Should be implemented to be quick (i.e. faster than just getting a cursor of everything and counting).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getClassCount

public int getClassCount()
                  throws IOException,
                         AutomationException
The number of classes in the dataset.

Description

Returns the number of classes contained in this dataset. Tables and standalone feature classes should return 1.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getClassName

public String getClassName(int index)
                    throws IOException,
                           AutomationException
The name of the indicated class.

Product Availability

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

Specified by:
getClassName in interface IPlugInDatasetHelper
Parameters:
index - The index (in)
Returns:
The name
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassIndex

public int getClassIndex(String name)
                  throws IOException,
                         AutomationException
The index of the named class.

Product Availability

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

Specified by:
getClassIndex in interface IPlugInDatasetHelper
Parameters:
name - The name (in)
Returns:
The index
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBounds

public IEnvelope getBounds()
                    throws IOException,
                           AutomationException
The extent of the dataset.

Description

Gets an envelope which is the full extent of the data in the dataset. Implementations of the getBounds method should employ the com.esri.arcgis.geometry.Envelope class to define and return an envelope that corresponds to the full extent of the data in the dataset. The spatial reference property on the envelope must be set. All feature classes in a feature dataset share the same bounds and spatial reference.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getFields

public IFields getFields(int classIndex)
                  throws IOException,
                         AutomationException
The field set of the indicated class.

Product Availability

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

Specified by:
getFields in interface IPlugInDatasetHelper
Parameters:
classIndex - The classIndex (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getOIDFieldIndex

public int getOIDFieldIndex(int classIndex)
                     throws IOException,
                            AutomationException
The index of the oid field in the field set of the indicated dataset.

Product Availability

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

Specified by:
getOIDFieldIndex in interface IPlugInDatasetHelper
Parameters:
classIndex - The classIndex (in)
Returns:
The oIDFieldIndex
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getShapeFieldIndex

public int getShapeFieldIndex(int classIndex)
                       throws IOException,
                              AutomationException
The index of the shape field in the field set of the indicated dataset.

Product Availability

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

Specified by:
getShapeFieldIndex in interface IPlugInDatasetHelper
Parameters:
classIndex - The classIndex (in)
Returns:
The shapeFieldIndex
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

fetchByID

public IPlugInCursorHelper fetchByID(int classIndex,
                                     int iD,
                                     Object fieldMap)
                              throws IOException,
                                     AutomationException
Gets a record by object id.

Description

Returns a record by object ID. The cursor will have a single record. If there is no object with the given id, this method should fail.

FieldMap indicates which fields should be returned by the query. See IPlugInCursorHelper::QueryValues and IPlugInFastQueryValues::FastQueryValues for a description of how to use the field map.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
fetchByID in interface IPlugInDatasetHelper
Parameters:
classIndex - The classIndex (in)
iD - The iD (in)
fieldMap - A Variant (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IPlugInCursorHelper
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

fetchAll

public IPlugInCursorHelper fetchAll(int classIndex,
                                    String whereClause,
                                    Object fieldMap)
                             throws IOException,
                                    AutomationException
Gets all the records in the database.

Description

Returns a cursor of all the records in the dataset that match the optional where clause. An empty or null where clause means all records should be returned. The where clause will always be null if IPlugInWorkspaceFactoryHelper::CanSupportSQL returns false. The method should fail if there are no records.

The field map indicates which fields should be returned by the query. See IPlugInCursorHelper::QueryValues and IPlugInFastQueryValues::FastQueryValues for a description of how to use the field map.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
fetchAll in interface IPlugInDatasetHelper
Parameters:
classIndex - The classIndex (in)
whereClause - The whereClause (in)
fieldMap - A Variant (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IPlugInCursorHelper
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

fetchByEnvelope

public IPlugInCursorHelper fetchByEnvelope(int classIndex,
                                           IEnvelope env,
                                           boolean strictSearch,
                                           String whereClause,
                                           Object fieldMap)
                                    throws IOException,
                                           AutomationException
Gets the records within the envelope (or the full extent if the envelope is null).

Description

Returns a record set of all records that are in the envelope and that match the optional where clause. The where clause will always be null if IPlugInWorkspaceFactoryHelper::CanSupportSQL returns false. The method should fail if there are no records in the envelope that match the optional where clause.

Fieldmap indicates which fields should be returned by the query. See IPlugInCursorHelper::QueryValues and IPlugInFastQueryValues::FastQueryValues for a description of how to use the field map.

Many data sources use spatial indexes or other spatial organization methods. If strictSearch is false, these data sources should return a cursor containing all the records which are in indexes or blocks within the query envelope. If strictSearch is true, the cursor should contain only the records within the envelope. Data sources that donít use indexes or blocks may ignore this parameter.

Remarks

The FetchByEnvelope function returns all records in the Dataset if the Envelope parameter given is Nothing.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
fetchByEnvelope in interface IPlugInDatasetHelper
Parameters:
classIndex - The classIndex (in)
env - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
strictSearch - The strictSearch (in)
whereClause - The whereClause (in)
fieldMap - A Variant (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IPlugInCursorHelper
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.