The IObjectStore type exposes the following members.

ToggleMethods

Type NameDescription
Public methodAddPendingAction
Adds the specified pending action to this object's PendingActions collection.
Note Note: You probably won't directly manipulate an object's pending actions in this manner. You will more likely call wrapper methods such as Delete and Checkin, which add a pending action to the collection.)
(Inherited from IIndependentlyPersistableObject.)
Public methodClearPendingActions
Clears out the list of pending actions for this object. For example, if you called Delete() without subsequently calling Save, then called ClearPendingActions(), the Delete pending action would no longer be in the object's pending actions list. This effectively cancels changes not yet saved.
(Inherited from IIndependentlyPersistableObject.)
Public methodClone
Creates a new object that is a copy of the current instance.
(Inherited from ICloneable.)
Public methodCreateObjectOverloaded.
Public methodDelete
Adds a Delete pending action to this object's PendingActions collection. You must subsequently commit the change to the repository. (See PendingAction for more information about pending actions.)

For IVersionSeries, all document versions are deleted.

For ICmRecoveryItem, this method deletes the item contained within the ICmRecoveryBin object. It also deletes all recoverable objects represented by the ICmRecoveryItem object.

(Inherited from IIndependentlyPersistableObject.)
Public methodDeterminePrerequisiteAddOnIds
Returns the feature addon IDs for which installation is required prior to the installation of the addon specified by addOnId. If the addon identified by addOnId has been superseded, the results are based on the superseding addon prerequisites.
Public methodFetchAndLockObjectOverloaded.
Public methodFetchObjectOverloaded.
Public methodFetchPropertiesOverloaded.
Public methodFetchPropertyOverloaded.
Public methodGetAccessAllowed
Returns a value representing a bit mask of access rights granted to the user requesting this object.
(Inherited from IIndependentlyPersistableObject.)
Public methodGetClassName
Returns the name of the class from which this object is instantiated.
(Inherited from IEngineObject.)
Public methodGetConnection
Returns a Connection object that represents a logical connection to the FileNet P8 domain. The returned Connection object is used as input to methods such as factory instantiation methods.
(Inherited from IEngineObject.)
Public methodGetObjectOverloaded.
Public methodGetObjectReference
Returns an object reference that represents the object's identity.

The ID of an independent object is the class name and ID of the object. The ID can be a path, GUID, or name of the object.

(Inherited from IIndependentObject.)
Public methodGetPendingActions
Returns the pending actions for this object.
(Inherited from IIndependentlyPersistableObject.)
Public methodGetSuperClasses
Returns a String array specifying the names of the superclasses of the class from which this object is instantiated.
(Inherited from IEngineObject.)
Public methodGetUpdateSequenceNumber
Returns the update sequence number (USN) for this object.

You can use the returned value to determine if the object has been modified since some earlier fetch of the same object.

An IndependentlyPersistableObject has an update sequence number (USN), which is an Integer value on the object that protects it against concurrent updates. The USN value increases monotonically with each update to the object. When you update the object, the USN from the retrieved object is checked against the currently persisted USN value. If the values are different, the operation fails.

As a special case, a USN value of Null causes the server-side check to be skipped during updates (this is sometimes called "unprotected update"). An IndependentlyPersistableObject instantiated by calling one of the GetInstance methods on a Factory class (such as Factory.CustomObject.GetInstance) does not fetch the object from the server, and therefore, is unaware of the persisted USN. Calling GetUpdateSequence on such an object returns Null.

(Inherited from IIndependentlyPersistableObject.)
Public methodInstallAddOn
Installs an add-on, available on a domain, to the current object store. When an add-on is installed, the pre-import script (if one exists) is run. Then the import data is imported into the object store, creating new metadata classes, properties, and data objects. Finally, the post-import script is run.

This method results in one of the following outcomes:

  • If the add-on doesn't have an installation record, the installation is attempted and an AddOnInstallationRecord object is created.
  • If the add-on has an installation record with a status of "InstallationFailed", the installation is re-attempted and the installation record's properties are updated.
  • If the add-on has an installation record with a status of "Installed", an exception (indicating that the add-on is already installed) is thrown.
Public methodIsAddOnInstalled
Returns a Boolean value indicating whether the feature addon identified by addOnId is installed (True) or not (False) in the object store. If the addon identified by addOnId has been superseded and the superseded addon is currently installed, a value of True is returned.
Public methodIsCurrent
Returns a value indicating whether or not the state of this object is consistent with its state in the repository.

When one or more of the object's properties are "dirty" (have been marked as changed since the last time they were saved), IsCurrent returns False. You can then do one of the following:

  • Save changes to the persistent store. (You can either call the Save method or add the object to an UpdatingBatch then call UpdateBatch, which effectively calls Save on each IndependentlyPersistableObject in the batch.)
  • Call the object's Refresh method to cancel the changes and restore the object's state to that of the persistent store.
  • Remove dirty properties by calling RemoveFromCache.
(Inherited from IIndependentlyPersistableObject.)
Public methodRefreshOverloaded.
Public methodSaveOverloaded.
Public methodSetUpdateSequenceNumber
Sets the update sequence number (USN) for this object. You can cause update sequence checking to be skipped for this object by setting the USN value to Null.
(Inherited from IIndependentlyPersistableObject.)

ToggleSee Also