public interface IObjectClassInfo
extends java.io.Serializable
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.
IObjectClass
Modifier and Type | Method and Description |
---|---|
boolean |
canBypassStoreMethod()
Indicates if updates to objects can bypass the Store method and OnChange notifications for efficiency.
|
boolean canBypassStoreMethod() throws java.io.IOException, AutomationException
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.
java.io.IOException
- If there are interop problems.AutomationException
- If the ArcObject component throws an exception.