Interface CmCustomQueueSweep
-
- All Superinterfaces:
- CmQueueSweep, CmSweep, EngineObject, IndependentlyPersistableObject, IndependentObject, RepositoryObject, java.io.Serializable, Subscribable
public interface CmCustomQueueSweep extends RepositoryObject, CmQueueSweep
Represents a background task that operates continuously, periodically sweeping over a queue table specified as a target class. The custom queue sweep passes retrieved queue objects to a user implementation of theSweepActionHandlerinterface, which performs a custom action on the objects. When the handler successfully processes a queue item, the sweep service automatically deletes the item from the queue table. Queue items that fail to process are automatically retried up to a configurable number of times.A queue sweep can only process subclass instances of
CmAbstractQueueEntry. For a custom queue sweep to work, you must create a subclass ofCmAbstractQueueEntry, and specify that subclass in the SweepTarget property of the custom queue sweep.To associate an implemented action handler with a custom queue sweep, you set a
CmSweepActionon the custom queue sweep.A typical use case for a queued background operation is to control the flow of work to a scarce resource that is too slow to perform its operation within the context of an on-line transaction. A shared printer servicing a client application is one such case. An application that sends requests directly to the printer could back up the printer with requests. By implementing a custom queue sweep, you could manage the delivery of requests to the printer at an even rate. Instead of sending requests directly to the printer, the application would leverage the custom queue sweep, which would pass queue objects (printer requests) to a sweep action handler. The handler (and the supporting sweep service) would control the flow of requests to the printer.
Metadata
- See Also:
- Custom Sweeps, Action Handlers
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method and Description voidchangeClass(java.lang.String className)Changes the class of a Content Engine object.CmSweepActionget_SweepAction()Returns the value of the SweepAction property.voidset_SweepAction(CmSweepAction value)Sets the value of the SweepAction property.-
Methods inherited from interface com.filenet.api.sweep.CmQueueSweep
get_CurrentDeferredObjectCount, get_CurrentExaminedObjectCount, get_CurrentFailedObjectCount, get_CurrentProcessedObjectCount, get_DeferredObjectCount, get_DescriptiveText, get_DisplayName, get_EffectiveEndDate, get_EffectiveStartDate, get_IsEnabled, get_MaximumFailures, get_SweepBatchSize, get_SweepRetryWaitInterval, set_DescriptiveText, set_DisplayName, set_EffectiveEndDate, set_EffectiveStartDate, set_IsEnabled, set_MaximumFailures, set_SweepBatchSize, set_SweepRetryWaitInterval
-
Methods inherited from interface com.filenet.api.sweep.CmSweep
get_AuditedEvents, get_Creator, get_DateCreated, get_DateLastModified, get_ExaminedObjectCount, get_FailedObjectCount, get_Id, get_InterBatchDelay, get_LastModifier, get_MaxSweepWorkers, get_Owner, get_Permissions, get_ProcessedObjectCount, get_SweepEndDate, get_SweepStartDate, get_SweepTarget, get_SweepTimeslots, set_Creator, set_DateCreated, set_DateLastModified, set_InterBatchDelay, set_LastModifier, set_MaxSweepWorkers, set_Owner, set_Permissions, set_SweepTarget, set_SweepTimeslots
-
Methods inherited from interface com.filenet.api.core.RepositoryObject
getObjectStore
-
Methods inherited from interface com.filenet.api.core.Subscribable
raiseEvent
-
Methods inherited from interface com.filenet.api.core.IndependentlyPersistableObject
addPendingAction, clearPendingActions, delete, getAccessAllowed, getPendingActions, getUpdateSequenceNumber, isCurrent, save, save, setUpdateSequenceNumber
-
Methods inherited from interface com.filenet.api.core.IndependentObject
fetchProperties, fetchProperties, fetchProperty, fetchProperty, getObjectReference, refresh, refresh, refresh
-
Methods inherited from interface com.filenet.api.core.EngineObject
get_ClassDescription, getClassName, getConnection, getProperties, getSuperClasses
-
-
-
-
Method Detail
-
get_SweepAction
CmSweepAction get_SweepAction()
Returns the value of the SweepAction property. For more information, see SweepAction Property.
-
set_SweepAction
void set_SweepAction(CmSweepAction value)
Sets the value of the SweepAction property. For more information, see SweepAction Property.
-
changeClass
void changeClass(java.lang.String className)
Changes the class of a Content Engine object. The new class must already exist and both it and the original class must be subclasses of the same base class. ThechangeClassmethod does not modify the security for an object, even if the object's current security is derived from the default security for its source class. For the object's user-defined properties, the following rules apply:- Any user-defined properties that exist in the new class but not in the original class are set to the
default value defined by the new class (or to
nullif there is no default defined). - Any user-defined properties that exist in both the original and the new class that are writable and
have the same value (including
null) as the default value defined in the original class will be set to the default value defined by the new class. However, any user-defined property that has had its value modified from the default value will retain that modified value in the new class. - Any user-defined properties whose definitions exist in the original class but not in the new class will no longer exist on the object when its class is changed.
- Property constraints for the new class (for example, required values, choice lists, ranges) are not enforced.
When the class of a document object is changed, the default document lifecycle policy of the new class will only be applied to the document object's DocumentLifecyclePolicy property if both of the following scenarios occur:
- The document has no current lifecycle policy.
- The document is either a reservation object, or is the current version object and is not reserved.
Changing the document class of a document object has no effect on the storage location of the document's content. For more information, see the Document Storage topic in the "Document Concepts" section of the Content Engine Java and .NET API Developer's Guide.
- Parameters:
className- AStringspecifying the symbolic name,ClassNamesconstant, ID, orGUIDConstantsconstant of the class to which this object is to be changed.- Throws:
E_NULL_OR_INVALID_PARAM_VALUE- ifclassNameisnullor has a length of zero.
- Any user-defined properties that exist in the new class but not in the original class are set to the
default value defined by the new class (or to
-
-