com.esri.arcgis.geodatabase
Class IRowProxy

java.lang.Object
  extended bycom.esri.arcgis.interop.Dispatch
      extended bycom.esri.arcgis.geodatabase.IRowBufferProxy
          extended bycom.esri.arcgis.geodatabase.IRowProxy
All Implemented Interfaces:
java.io.Externalizable, IRow, IRowBuffer, java.io.Serializable
Direct Known Subclasses:
IObjectProxy

public class IRowProxy
extends IRowBufferProxy
implements IRow, java.io.Serializable

Provides access to members that return information about the row, the table the row belongs to and storing and deleting the row.

Product Availability

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

See Also:
Serialized Form

Field Summary
static java.lang.Class targetClass
           
 
Fields inherited from class com.esri.arcgis.interop.Dispatch
DISPATCH_METHOD, DISPATCH_PROPERTYGET, DISPATCH_PROPERTYPUT, DISPATCH_PROPERTYPUTREF
 
Constructor Summary
  IRowProxy()
          For internal use only
  IRowProxy(java.lang.Object obj)
           
protected IRowProxy(java.lang.Object obj, java.lang.String iid)
           
  IRowProxy(java.lang.String CLSID, java.lang.String host, AuthInfo authInfo)
           
protected IRowProxy(java.lang.String CLSID, java.lang.String iid, java.lang.String host, AuthInfo authInfo)
           
 
Method Summary
 void addListener(java.lang.String iidStr, java.lang.Object theListener, java.lang.Object theSource)
          Adds a Java object to be a listener for a specific kind of event generated by the COM object.
 void delete()
          Deletes the row.
 int getOID()
          The OID for the row.
 ITable getTable()
          The Table for the row.
 boolean isHasOID()
          Indicates if the row has an OID.
 void removeListener(java.lang.String iidStr, java.lang.Object theListener)
          Removes a Java object as a listener to events generated by a COM object.
 void store()
          Stores the row.
 
Methods inherited from class com.esri.arcgis.geodatabase.IRowBufferProxy
getFields, getValue, setValue
 
Methods inherited from class com.esri.arcgis.interop.Dispatch
bindUsingMoniker, convertToNative, cookieForListener, createDispatch, createObjrefMonikerDisplayName, equals, getActiveObject, getActiveObject, getDefaultProperty, getDispatchIdOfName, getLastErrorCode, getMtsObjectContext, getObjRef, getPropertyByName, getPropertyByName, hashCode, invoke, invokeMethodByName, invokeMethodByName, invokeMethodByName, invokePropertyGetByName, invokePropertyPutByName, invokePropertyPutByRefByName, isNativeMode, isObjRef, queryInterface, readExternal, setNativeMode, setPropertyByName, toString, vtblInvoke, writeExternal
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.geodatabase.IRowBuffer
getFields, getValue, setValue
 

Field Detail

targetClass

public static final java.lang.Class targetClass
Constructor Detail

IRowProxy

public IRowProxy(java.lang.String CLSID,
                 java.lang.String host,
                 AuthInfo authInfo)
          throws java.net.UnknownHostException,
                 java.io.IOException

IRowProxy

public IRowProxy()
For internal use only


IRowProxy

public IRowProxy(java.lang.Object obj)
          throws java.io.IOException

IRowProxy

protected IRowProxy(java.lang.Object obj,
                    java.lang.String iid)
             throws java.io.IOException

IRowProxy

protected IRowProxy(java.lang.String CLSID,
                    java.lang.String iid,
                    java.lang.String host,
                    AuthInfo authInfo)
             throws java.io.IOException
Method Detail

addListener

public void addListener(java.lang.String iidStr,
                        java.lang.Object theListener,
                        java.lang.Object theSource)
                 throws java.io.IOException
Description copied from class: Dispatch
Adds a Java object to be a listener for a specific kind of event generated by the COM object. when you wish to invoke method on the COM object using IDispatch (not using custom marshalling).

Overrides:
addListener in class IRowBufferProxy
Throws:
java.io.IOException

removeListener

public void removeListener(java.lang.String iidStr,
                           java.lang.Object theListener)
                    throws java.io.IOException
Description copied from class: Dispatch
Removes a Java object as a listener to events generated by a COM object. when you wish to invoke method on the COM object using IDispatch (not using custom marshalling).

Overrides:
removeListener in class IRowBufferProxy
Throws:
java.io.IOException

isHasOID

public boolean isHasOID()
                 throws java.io.IOException,
                        AutomationException
Description copied from interface: IRow
Indicates if the row has an OID.

Supported Platforms

Windows, Solaris, Linux

Remarks

If the table has been registered with the geodatabase it will have unique Object ID, automatically created by the register tool, and the HasOID property will be set to True. Tables not registered with the geodatabase will not have an OID column and the HasOID property will be set to False.  See the IClassSchemaEdit::RegisterAsObjectClass method for more information.

Specified by:
isHasOID in interface IRow
Returns:
The hasOID
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getOID

public int getOID()
           throws java.io.IOException,
                  AutomationException
Description copied from interface: IRow
The OID for the row.

Supported Platforms

Windows, Solaris, Linux

Description

Gets the OID for a row in a table that has a unique Object ID, such as tables registered with the geodatabase.

Specified by:
getOID in interface IRow
Returns:
The oID
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getTable

public ITable getTable()
                throws java.io.IOException,
                       AutomationException
Description copied from interface: IRow
The Table for the row.

Supported Platforms

Windows, Solaris, Linux

Description

Returns a pointer to the table the row belongs to.

Specified by:
getTable in interface IRow
Returns:
A reference to a com.esri.arcgis.geodatabase.ITable
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

store

public void store()
           throws java.io.IOException,
                  AutomationException
Description copied from interface: IRow
Stores the row.

Supported Platforms

Windows, Solaris, Linux

Remarks

The Store method is called by an application once it has modified the values of a Row. Once Store is called on a Row object, all subsequent queries within the same edit session, using the Geodatabase API, will reflect the modified state of the Row object.

All edits to features that participate in a Topology or Geometric Network must be performed within an edit session and bracketed within an edit operation.

Calling the Store method triggers the following actions:

- The IRowEvents::OnChanged is called for the row being stored. The OnNew is called if this is a newly created row being stored for the first time. A custom row object can implement the OnChanged method and take some special action when it is called - for example; update a special column in the row

- The IRelatedObjectEvents::RelatedObjectChanged method is called for related objects in a related object class if the table for this row is an object class that participates in relationship classes with notification

Store should not be used for batch operations, such as updates or inserts.  For performing a number of inserts or updates using cursors, refer to the ITable::Insert, ITable::Update, ITable::UpdateSearchedRows , IFeatureClass::Update andIFeatureClass::Insert.  If an insert or update cursor is used on non-simple features (such as network features), the cursor will revert to using Store.

It is not necessary to explicitly call Connect on network features, this is handled polymorphically when Store is called on the feature. This is also the case with features in a Topology, Dirty Area creation is handled internally when Store is called.

Store should not be called inside of edit events, such as OnCreateFeature, OnChangeFeature or OnDeleteFeature.  Even if you are modifying the geometry or other field values, Store will be called once the event is complete.

Specified by:
store in interface IRow
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

delete

public void delete()
            throws java.io.IOException,
                   AutomationException
Description copied from interface: IRow
Deletes the row.

Supported Platforms

Windows, Solaris, Linux

Remarks

All edits to features that participate in a Topology or Geometric Network must be performed within an edit session and bracketed within an edit operation.

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