|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.esri.arcgis.interop.Dispatch
com.esri.arcgis.geodatabase.ICursorProxy
public class ICursorProxy
Provides access to members that hand out enumerated rows, field collections and allows for the updating, deleting and inserting of rows.
Cursors are forward only; they do not support backing up and retrieving rows that have already been retrieved or making multiple passes over data. If an application needs to make multiple passes over the data, the application needs to reexecute the query that returned the cursor. If both executions of the query are made within the same edit session (or database transaction with the appropriate level of isolation), the application is guaranteed not to see any changes made to the data by other concurrently executing applications.
Note that while a cursor is created in the client's memory after a call to methods such as ITable.Search or ITable.Insert, the DBMS cursor is not created until a call to NextRow (or a similar method) is made. This is why retrieving the first row may take longer than subsequent rows, and because underlying DBMS errors might be raised on the call, error handling is recommended.
When using cursors within an edit session, they should always be scoped to edit operations. In other words, a cursor should be created after an edit operation has begun and should not be used once that edit operation has been stopped or aborted.
| Field Summary |
|---|
| Fields inherited from class com.esri.arcgis.interop.Dispatch |
|---|
DISPATCH_METHOD, DISPATCH_PROPERTYGET, DISPATCH_PROPERTYPUT, DISPATCH_PROPERTYPUTREF, E |
| Constructor Summary | |
|---|---|
|
ICursorProxy()
|
|
ICursorProxy(Object obj)
|
protected |
ICursorProxy(Object obj,
String iid)
|
| Method Summary | |
|---|---|
void |
addListener(String iidStr,
Object theListener,
Object theSource)
|
void |
deleteRow()
Delete the existing Row in the database corresponding to the current position of the cursor. |
int |
findField(String name)
The index of the field with the specified name. |
void |
flush()
Flush any outstanding buffered writes to the database. |
IFields |
getFields()
The Fields Collection for this cursor. |
Object |
insertRow(IRowBuffer buffer)
Insert a new Row into the database using the property values in the input buffer. |
IRow |
nextRow()
Advance the position of the cursor by one and return the Row object at that position. |
void |
readExternal(ObjectInput in)
|
void |
removeListener(String iidStr,
Object theListener)
|
void |
updateRow(IRow row)
Update the existing Row in the database corresponding to the current position of the cursor. |
void |
writeExternal(ObjectOutput out)
|
| Methods inherited from class com.esri.arcgis.interop.Dispatch |
|---|
bindUsingMoniker, constructVtblPosTable, convertToNative, cookieForListener, createDispatch, createObjrefMonikerDisplayName, equals, getActiveObject, getActiveObject, getDefaultProperty, getDispatchIdOfName, getLastErrorCode, getMtsObjectContext, getObjRef, getPropertyByName, getPropertyByName, getVtblPos, hashCode, initDispatch, invoke, invokeMethodByName, invokeMethodByName, invokeMethodByName, invokePropertyGetByName, invokePropertyPutByName, invokePropertyPutByRefByName, isNativeMode, isObjRef, queryInterface, release, setNativeMode, setPropertyByName, toString, vtblInvoke |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public ICursorProxy()
public ICursorProxy(Object obj)
throws IOException
IOException
protected ICursorProxy(Object obj,
String iid)
throws IOException
IOException| Method Detail |
|---|
public void addListener(String iidStr,
Object theListener,
Object theSource)
throws IOException
addListener in class com.esri.arcgis.interop.DispatchIOException
public void removeListener(String iidStr,
Object theListener)
throws IOException
removeListener in class com.esri.arcgis.interop.DispatchIOException
public int findField(String name)
throws IOException,
AutomationException
findField in interface ICursorname - The name (in)
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public IFields getFields()
throws IOException,
AutomationException
getFields in interface ICursorIOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public IRow nextRow()
throws IOException,
AutomationException
The NextRow method on a search or update cursor returns the next row in the result set to the application. The row object returned is allocated and hydrated by the cursor, and a reference to it is handed to the application. To retrieve all rows in a result set containing N rows, the application must make N calls to NextRow. In VB, a call to NextRow after the last row in the result set has been retrieved returns Nothing. In C++, a call to NextRow after the last row in the result set has been retrieved returns a value of S_FALSE and sets the output row reference to 0.
nextRow in interface ICursorIOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void updateRow(IRow row)
throws IOException,
AutomationException
updateRow in interface ICursorrow - A reference to a com.esri.arcgis.geodatabase.IRow (in)
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void deleteRow()
throws IOException,
AutomationException
The cursor must be initialized to a row (with the NextRow method) before this method can be successfully called.
deleteRow in interface ICursorIOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public Object insertRow(IRowBuffer buffer)
throws IOException,
AutomationException
insertRow in interface ICursorbuffer - A reference to a com.esri.arcgis.geodatabase.IRowBuffer (in)
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void flush()
throws IOException,
AutomationException
flush in interface ICursorIOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void writeExternal(ObjectOutput out)
throws IOException
writeExternal in interface ExternalizablewriteExternal in class com.esri.arcgis.interop.DispatchIOException
public void readExternal(ObjectInput in)
throws IOException,
ClassNotFoundException
readExternal in interface ExternalizablereadExternal in class com.esri.arcgis.interop.DispatchIOException
ClassNotFoundException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||