Most interfaces represent system events, which you can instantiate but not create through the API. The capability to create user-defined events is provided with the ICustomEvent interface.
The IAction interface and subinterfaces represent user-implemented actions in response to triggered events or changed document lifecycle states. IActionConsumer-based interfaces define the events or document lifecycle states under which user-implemented actions are invoked.
Interfaces
Type | Interface | Description |
---|---|---|
![]() | IAction |
Represents an extensible, user-implemented action in response to an
event triggered on a source object, or to an instance of a class definition getting created or updated.
The API provides handler subinterfaces that you implement
with the actions to be taken, coded as JavaScript or Java components.
An Action-based object identifies an implemented handler with the ProgId property. A JavaScript-implemented handler is set on the ScriptText property. A Java-implemented handler (JAR or class file) can be checked into a Content Engine object store as a ICodeModule object, requiring that the CodeModule property be set. Alternatively, you can set the location of the Java component in the class path of the application server. |
![]() | IActionConsumer |
Represents the consumer of Action-based objects.
This interface is the base for subinterfaces representing specific consumers,
namely, ISubscription-based interfaces and IDocumentLifecyclePolicy.
Generally speaking, IActionConsumer objects enable user-implemented actions to execute
when specified events fire on a specified Content Engine object.
You can instantiate a persisted IActionConsumer object by calling the getInstance or fetchInstance method on the Factory.ActionConsumer class. See also the help for the following interfaces: DocumentClassifier, DocumentLifecycleActionHandler, EventActionHandler. |
![]() | IAuditConfigurationEvent |
Represents an event that occurs when the auditing configuration of an object store is changed.
Auditing is either enabled or disabled by setting the AuditLevel property on IObjectStore,
and the IAuditConfigurationEvent object is saved.
You can instantiate a IAuditConfigurationEvent object in the following ways:
|
![]() | ICancelCheckoutEvent |
Represents an event that occurs when a reservation on a versionable object is canceled.
You can instantiate a ICancelCheckoutEvent object in the following ways:
|
![]() | IChangeClassEvent |
Represents an event that occurs when the class of an object is changed.
You can instantiate a IChangeClassEvent object in the following ways:
|
![]() | IChangeStateEvent |
Represents an event that occurs when the lifecycle state of a IDocument object changes,
or when the state of a ICmTask object changes.
You can instantiate a IChangeStateEvent object in the following ways:
|
![]() | ICheckinEvent |
Represents an event that occurs when a versionable object is checked in.
You can instantiate a ICheckinEvent object in the following ways:
|
![]() | ICheckoutEvent |
Represents an event that occurs when a versionable object is checked out.
You can instantiate a ICheckoutEvent object in the following ways:
|
![]() | IClassifyCompleteEvent |
Represents an event that occurs when a document has been auto-classified,
that is, assigned a document class automatically during checkin.
You can instantiate a IClassifyCompleteEvent object in the following ways:
|
![]() | IClassSubscription |
Represents a subscription for events generated by all objects of a particular class.
The target for these subscriptions must be a class definition.
To create a IClassSubscription object, call the CreateInstance method on the Factory.ClassSubscription class. You can instantiate a persisted IClassSubscription object in the following ways:
|
![]() | IClassWorkflowSubscription |
Represents a subscription that initiates a workflow in response to events generated by all objects of a
particular class.
A IClassWorkflowSubscription object provides object properties to link
a workflow (IWorkflowDefinition),
a target object, and one or more events (ISubscribedEvent)
that can be triggered on the target object.
These objects must exist before you can create a IClassWorkflowSubscription object
and persist it.
To create a IClassWorkflowSubscription object, call the createInstance method on the Factory.ClassWorkflowSubscription class. You can instantiate a persisted IClassWorkflowSubscription object in the following ways:
|
![]() | ICmChangePreprocessorAction |
Defines the action to be taken when a change preprocessor is invoked
on a class definition.
The action is coded by the user as a Java or JavaScript implementation of the
ChangePreprocessor interface
in the Content Engine Java API.
The action is set on the ChangePreprocessorAction property
of a ICmChangePreprocessorDefinition object, which is associated with
a class definition.
A ICmChangePreprocessorAction object can be disabled at the system scope; therefore, it will not be invoked, no matter where it is referenced in the class hierarchies. For more information, see Change Preprocessor Concepts. |
![]() | ICmMarkForDeletionEvent |
Represents an event that occurs when an object is marked for deletion.
You can instantiate a ICmMarkForDeletionEvent object in the following ways:
|
![]() | ICmMoveContentEvent |
Event reported when the content of an object is moved.
You can instantiate a ICmMoveContentEvent object in the following ways:
|
![]() | ICmRecoverEvent |
Represents an event that occurs when an object marked for deletion is restored from a recovery bin.
You can instantiate a ICmRecoverEvent object in the following ways:
|
![]() | ICmThumbnailGenerationSubscription |
Represents a subscription used to initiate event-based document thumbnail generation.
A ICmThumbnailGenerationSubscription instance is intended to be used with specfic property settings. Set the SubscriptionTarget property to the Document class or subsclass, the SubscribedEvents property to CheckinEvent, the isSynchronous property to true, and the EventAction property to the event action created by the Thumbnail Extensions AddOn, Thumbnail Generation Event Action. Setting these properties to different values could result in improper generation attempts and poor system behavior. To further narrow the conditions for automatic generation of thumbnails, use the subscription's FilterExpression property. See Thumbnail Concepts. |
![]() | ICreationEvent |
Represents an event that occurs when an object instance of a class is created and saved.
You can instantiate a ICreationEvent object in the following ways:
|
![]() | ICustomEvent |
Represents a user-defined custom event.
A custom event is raised whenever an object to which it is subscribed calls its RaiseEvent method.
To create a CustomEvent object, and persist it to a Content Engine object store, call the CreateInstance method on the Factory.CustomEvent class. You can instantiate a CustomEvent object in the following ways:
|
![]() | IDeletionEvent |
Represents an event that occurs when an object is deleted from the object store.
You can instantiate a IDeletionEvent object in the following ways:
|
![]() | IDemoteVersionEvent |
Represents an event that occurs when a versionable object is demoted to a minor version.
You can instantiate a IDemoteVersionEvent object in the following ways:
|
![]() | IDocumentClassificationAction |
Associates a server-side document classifier with documents of a defined MIME type. When a document of that MIME type is checked in,
the classifier assigns a target class to the document.
A document classifier can be a Java or JavaScript component implemented from the DocumentClassifier interface
in the Content Engine Java API.
Each IDocumentClassificationAction object that you save in an object store is automatically added to the object store's collection
of IDocumentClassificationAction objects.
|
![]() | IDocumentLifecycleAction |
Represents the actions to be taken when a document's lifecycle state is changed. A document's lifecycle states are defined in the
IDocumentStateList collection of its associated IDocumentLifecyclePolicy object. A document lifecycle policy defines a
set of valid lifecycle states for a document, controls the transition of those states, and specifies the actions to be taken when a
document's lifecycle state changes. To change the lifecycle state of a document, call its ChangeState method; you can change a
document's current lifecycle state to another predefined state, set it to an exception state, or clear it from an exception state by specifying
the appropriate LifecycleChangeFlags constant in the flags parameter.
To define the actions to take when a document’s lifecycle state is changed, write a JavaScript or Java handler class that implements the DocumentLifecycleActionHandler interface in the Content Engine Java API. |
![]() | IDocumentLifecyclePolicy |
Represents the lifecycle policy for a document. A document lifecycle policy defines a set of valid lifecycle states for a document,
controls the transition of those states, and specifies the actions to be taken and which access permissions to be applied when a
document's lifecycle state changes.
To define the lifecycle states in a document lifecycle policy, create a DocumentState object for each lifecycle state that you want to define and add it to the DocumentStateList collection referenced by the DocumentState property. You can set the ResetLifecycleOnCheckin property to define whether a document, when it is checked in, is reset to the initial lifecycle state in its document lifecycle policy or not. To define the actions to be taken when a document's lifecycle state changes, create a DocumentLifecycleAction object and set the DocumentLifecycleAction property to reference it. With the PreseveDirectPermissions property, you can elect to either preserve a document's direct (non-inherited) access permissions or replace them with the document lifecycle policy's access permissions. |
![]() | IDocumentState |
Represents a valid lifecycle state of a document lifecycle policy. A document lifecycle policy defines a set of valid lifecycle
states for a document, controls the transition of those states, and specifies the actions to be taken and which access permissions
to be applied when a document's lifecycle state changes. To define the lifecycle states in a document lifecycle policy, create a DocumentState object for each
lifecycle state that you want to define and add it to a DocumentLifecyclePolicy object's DocumentStates collection.
Each lifecycle state must have a name, which is set by the StateName property. Each lifecycle state name must be unique within the lifecycle policy in which it is defined. To specify whether a given lifecycle state can be demoted or not, set its CanBeDemoted property. The order of the lifecycle states in a document lifecycle policy's DocumentStates collection is important and determines the succession of lifecycle states. When a document that is associated with a document lifecycle policy is created, its initial lifecycle state is the first DocumentState object in the document lifecycle policy's DocumentStates collection. To move a document into the next lifecycle state defined in the document lifecycle policy's DocumentStates collection, call the document's ChangeState method and set its flags parameter to the LifecycleChangeFlags.PROMOTE constant. To move a document into the previous lifecycle state (unless the document's current lifecycle state's CanBeDemoted property is set to false), set the method's flags parameter to DEMOTE. The template permissions specified by the TemplatePermissions property will be applied during a lifecycle state change if you set the ApplyTemplatePermissions property to true; otherwise the permissions will not be applied. If the ApplyTemplatePermissions property to set to true and you reset a document's lifecycle state, either by calling its ChangeState method and specifying RESET or by calling its Checkin method while the ResetLifecycleOnCheckin property on its document lifecycle policy is set to true, the access permissions will be reset to the access permissions of the initial lifecycle state. |
![]() | IEvent |
Represents a system or custom event that can be triggered on an Content Engine object or class of objects.
This is the base event interface from which several subinterfaces derive, used primarily
for auditing and subscriptions. You can audit all event types, and you can subscribe to all events with the exception
of those that derive from the RetrievalEvent interface.
Through an event object, you can retrieve information about the object on which the event was fired, such as its permissions and the date the object was last modified. You can set some properties as well, if you have been granted privileged write access. |
![]() | IEventAction |
Represents the actions taken when a subscribed event fires.
You associate an event action with a Subscription-based object
by setting the object's EventAction property.
To define the actions to take, write a JavaScript or Java event handler class that implements the EventActionHandler interface. To create an EventAction object and persist it to a Content Engine object store, call the CreateInstance method on the Factory.EventAction class. You can instantiate an EventAction object in the following ways:
|
![]() | IFileEvent |
Represents an event that occurs when IFolder.File method is called to file a
Containable object, for example, a IDocument
or ICustomObject, or when the IFolder.CreateSubFolder method is called.
The source object of this event is the IFolder object.
In the case of filing a document or custom object, the source object is the containing folder.
In the case of creating a subfolder, the source object is the parent folder.
You can instantiate a FileEvent object in the following ways:
|
![]() | IFreezeEvent |
Represents an event that occurs when the
Freeze method
of a Versionable object is successfully called.
You can instantiate a IFreezeEvent object in the following ways:
|
![]() | IGetContentEvent |
Represents an event that occurs when the content of a content-carrying object is retrieved.
Unlike other IRetrievalEvent subclasses, this event is both auditable and subscribable.
You can instantiate a GetContentEvent object in the following ways:
|
![]() | IGetObjectEvent |
Represents an event that occurs when an object is retrieved from the object store.
This event can only be audited; you cannot subscribe to it.
You can instantiate a GetObjectEvent object in the following ways:
|
![]() | IInstanceSubscription |
Represents a subscription for events generated by a single object instance of a particular class.
To create a IInstanceSubscription object, call the CreateInstance method on the Factory.InstanceSubscription class. You can instantiate a persisted IInstanceSubscription object in the following ways:
|
![]() | IInstanceWorkflowSubscription |
Represents a subscription that initiates a workflow in response to events generated by a single object instance.
A InstanceWorkflowSubscription object provides object properties to link
a workflow (WorkflowDefinition),
a target object, and one or more events (SubscribedEvent)
that can be triggered on the target object.
These objects must exist before you can create a InstanceWorkflowSubscription object
and persist it.
To create a InstanceWorkflowSubscription object, call the CreateInstance method on the Factory.InstanceWorkflowSubscription class. You can instantiate a persisted InstanceWorkflowSubscription object in the following ways:
|
![]() | ILockEvent |
Represents an event that occurs when the Lock method is called to lock or update
an existing lock on a Document, CustomObject, or Folder
object.
You can instantiate a LockEvent object in the following ways:
|
![]() | IObjectChangeEvent |
Represents an event that occurs when the state of an object is changed.
This interface is the base for several event interfaces.
Note that an instance of IObjectChangeEvent or any of its subclasses can be extended with audited custom properties of the source object of the event. A source object's properties are audited under the following conditions:
For more information, see Property Auditing. You can instantiate a IObjectChangeEvent object with the GetInstance or FetchInstance method on the Factory.ObjectChangeEvent class. |
![]() | IPromoteVersionEvent |
Represents an event that occurs when a document is promoted or checked in as a major version.
You can instantiate a PromoteVersionEvent object in the following ways:
|
![]() | IPublishCompleteEvent |
Represents an event that occurs when a document-publishing request has completed.
You can instantiate a PublishCompleteEvent object in the following ways:
|
![]() | IPublishRequestEvent |
Represents an event that occurs when a request has been made to publish or
republish a document. A publish request is represented by a
PublishRequest object.
You can instantiate a PublishRequestEvent object in the following ways:
|
![]() | IQueryEvent |
Represents an event that occurs whenever a database query is performed.
This event can only be audited; you cannot subscribe to it.
You can instantiate a QueryEvent object in the following ways:
|
![]() | IRetrievalEvent |
Represents an event that occurs when a
Content Engine object or its content is retrieved or queried.
This interface is the base for other event interfaces.
All events of this type can be audited, and the IGetContentEvent subclass can be subscribed to as well.
You can instantiate a RetrievalEvent object in the following ways:
|
![]() | ISubscribedEvent |
A ISubscribedEvent object represents a system or custom event that applies to a
ISubscription object. You add a ISubscribedEvent object to a
subscription with the ISubscription object's SubscribedEvents property.
You set this property to a ISubscribedEventList collection.
To create a ISubscribedEvent object, call the CreateInstance method on the Factory.SubscribedEvent class. You then set the object's EventClass property to a IEventClassDefinition object. You can get a reference to a SubscribedEvent object by iterating a ISubscribedEventList collection. |
![]() | ISubscription |
Represents a request to execute an event action when an event
is triggered on a target Content Engine object.
For example, you can have a subscription that notifies you by email when documents
of a certain class are created and saved in the object store.
The specified EventAction and
Subscribable objects, which represent the
event action and target object, must exist before
you can create a Subscription object and persist it.
Subscription is the base class for subclasses defined with specialized behavior. You can create objects for the subclasses, but you cannot create a base Subscription object. You can, however, instantiate one in the following ways:
|
![]() | ITakeFederatedOwnershipEvent |
Event reported when the TakeFederatedOwnership
method is applied to a Document object.
You can instantiate a TakeFederatedOwnershipEvent object in the following ways:
|
![]() | IUnfileEvent |
Represents an event that occurs when a folder has its Unfile method called to remove (unfile) a
Containable object, for example, a Document or
CustomObject, or when a subfolder is deleted.
The source object of this event is the IFolder object.
In the case of unfiling a document or custom object, the source object is the containing folder.
In the case of deleting a subfolder, the source object is the parent folder.
You can instantiate an UnfileEvent object in the following ways:
|
![]() | IUnlockEvent |
Represents an event that occurs when the Unlock method is called on
a Document, CustomObject, or Folder object.
You can instantiate a UnlockEvent object in the following ways:
|
![]() | IUpdateEvent |
Represents an event that occurs when changes are made to an object's properties.
You can instantiate a UpdateEvent object in the following ways:
|
![]() | IUpdateSecurityEvent |
Represents an event that occurs when the security of an object is changed.
Note that the dynamic inheritance feature of the Content Engine security model impacts UpdateSecurityEvent as follows. First, modifying the security of a folder will not automatically propogate to the documents contained in the folder; that is, the security of the documents in the folder will not change. Therefore, the system will generate an UpdateSecurityEvent object for the folder, but it will not generate an UpdateSecurityEvent object for each contained document. Second, an update to any object-valued property designated as inheritable in the metadata will generate an UpdateSecurityEvent object . You can instantiate a UpdateSecurityEvent object in the following ways:
|
![]() | IWorkflowEventAction |
Represents the launching of a workflow when an event defined in a subscription is fired.
The action's ProgId property must be set to the system-supplied handler that launches workflows.
A IWorkflowEventAction object is set on an subscription of type IInstanceWorkflowSubscription or IClassWorkflowSubscription. Also set on the subscription is the identifier of the workflow to be launched. To create a IWorkflowEventAction object and persist it to a Content Engine object store, call the CreateInstance method on the Factory.WorkflowEventAction class. You can instantiate a IWorkflowEventAction object in the following ways:
|