com.esri.arcgis.geodatabase
Class IObjectClassInfoProxy
java.lang.Object
com.esri.arcgis.interop.Dispatch
com.esri.arcgis.geodatabase.IObjectClassInfoProxy
- All Implemented Interfaces:
- IObjectClassInfo, Externalizable, Serializable
public class IObjectClassInfoProxy
- extends com.esri.arcgis.interop.Dispatch
- implements IObjectClassInfo, Serializable
Provides access to method that indicates whether an object can bypass the store method.
Superseded By
IObjectClassInfo2
Remarks
The IObjectClassInfo and IObjectClassInfo2 interfaces provide some additional information to IObjectClass on object classes that may be of interest to some applications.
CanBypassStoreMethod is a convenience method that returns True if the instances of this object class have no custom behavior associated with creating or updating objects and if the object class does not participate in composite relationship classes or in relationship classes that require object notification. A return value of True implies that insert cursors handed out by the geodatabase will internally bypass the CreateRow and Store mechanisms when creating objects. A return value of False indicates that insert cursors will not bypass custom Store or OnChanged behavior implemented by the custom row object for this class.
Several geoprocessing tools (i.e. Calculate Field, Append, and Add Field) use insert cursors. For an extended class with custom behavior defined by the IObjectClassEvents interface to operate correctly with these tools, CanBypassStoreMethod should return false.
Product Availability
Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.
Supported Platforms
Windows, Solaris, Linux
- See Also:
IObjectClass,
Serialized Form
| Fields inherited from class com.esri.arcgis.interop.Dispatch |
DISPATCH_METHOD, DISPATCH_PROPERTYGET, DISPATCH_PROPERTYPUT, DISPATCH_PROPERTYPUTREF, E |
| 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 |
IObjectClassInfoProxy
public IObjectClassInfoProxy()
IObjectClassInfoProxy
public IObjectClassInfoProxy(Object obj)
throws IOException
- Throws:
IOException
IObjectClassInfoProxy
protected IObjectClassInfoProxy(Object obj,
String iid)
throws IOException
- Throws:
IOException
addListener
public void addListener(String iidStr,
Object theListener,
Object theSource)
throws IOException
- Overrides:
addListener in class com.esri.arcgis.interop.Dispatch
- Throws:
IOException
removeListener
public void removeListener(String iidStr,
Object theListener)
throws IOException
- Overrides:
removeListener in class com.esri.arcgis.interop.Dispatch
- Throws:
IOException
canBypassStoreMethod
public boolean canBypassStoreMethod()
throws IOException,
AutomationException
- Indicates if updates to objects can bypass the Store method and OnChange notifications for efficiency.
Remarks
CanBypassStoreMethod is a convenience method that returns True if the instances of this object class have no custom behavior associated with creating or updating objects and if the object class does not participate in composite relationship classes or in relationship classes that require object notification. A return value of True implies that insert cursors handed out by the geodatabase will internally bypass the CreateRow and Store mechanisms when creating objects. A return value of False indicates that insert cursors will not bypass custom Store or OnChanged behavior implemented by the custom row object for this class.
By default, this method returns False for custom object classes. The developer of a custom object class can change this behavior by implementing this interface on the class extension associated with the class and returning True for the method.
In addition, a developer can implement this interface on the class extension of a simple class and set this property to False . Doing this will ensure that when features in the class are inserted, updated or deleted by editor tools that use insert and update cursors, such as Planarize, Create Features and the Object Loader do not bypass Store or OnChanged behavior. By default, this property for a simple class is logically True, meaning these tools will not broacast Geodatabase events which in turn are not rebroadcast as editor events (for which a custom editor application may be listening). Set this to False for those classes for which you always want to have these events broadcast. Alternatively, this can be set globally for the entire edit session using the IWorkspaceEditControl interface.
Product Availability
Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.
Supported Platforms
Windows, Solaris, Linux
- Specified by:
canBypassStoreMethod in interface IObjectClassInfo
- Returns:
- The canBypassStore
- 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- Overrides:
writeExternal in class com.esri.arcgis.interop.Dispatch
- Throws:
IOException
readExternal
public void readExternal(ObjectInput in)
throws IOException,
ClassNotFoundException
- Specified by:
readExternal in interface Externalizable- Overrides:
readExternal in class com.esri.arcgis.interop.Dispatch
- Throws:
IOException
ClassNotFoundException