Class SmartObjectPruner
- java.lang.Object
-
- sailpoint.task.AbstractTaskExecutor
-
- com.identityworksllc.iiq.common.task.AbstractThreadedTask<sailpoint.object.Reference>
-
- com.identityworksllc.iiq.common.task.SmartObjectPruner
-
- All Implemented Interfaces:
PrivateContextObjectConsumer<sailpoint.object.Reference>,sailpoint.object.BaseExecutor,sailpoint.object.TaskExecutor
public class SmartObjectPruner extends AbstractThreadedTask<sailpoint.object.Reference>
A class that can prune a subset of Sailpoint objects in a more granular way.The objects to prune can be supplied by a script or by a search filter. In the case of a filter, objects can be further narrowed by a post-selector script that can arbitrarily reject specific objects.
All selectors are defined in a Configuration object.
If a filter is used, the
TimeTokenizerclass allows for dynamic time based filtering (e.g. older than five days ago).
-
-
Field Summary
-
Fields inherited from class com.identityworksllc.iiq.common.task.AbstractThreadedTask
beforeExecutionHook, context, executor, failureCounter, log, successCounter, taskResult, taskSchedule, terminated, threadCount
-
-
Constructor Summary
Constructors Constructor Description SmartObjectPruner()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Iterator<? extends sailpoint.object.Reference>getObjectIterator(sailpoint.api.SailPointContext context, sailpoint.object.Attributes<String,Object> attributes)Gets the list of objects to pruneObjectthreadExecute(sailpoint.api.SailPointContext threadContext, Map<String,Object> parameters, sailpoint.object.Reference ref)Deletes the input-
Methods inherited from class com.identityworksllc.iiq.common.task.AbstractThreadedTask
addTerminationHandler, afterBatch, afterCompletion, beforeBatch, createBatchIterator, execute, getBatchSize, getExecutor, markFailure, markSuccess, parseArgs, prepareExecutor, setBeforeExecutionHook, setFailureMarker, setSuccessMarker, setWorkerCreator, submitAndWait, terminate
-
-
-
-
Constructor Detail
-
SmartObjectPruner
public SmartObjectPruner()
-
-
Method Detail
-
getObjectIterator
protected Iterator<? extends sailpoint.object.Reference> getObjectIterator(sailpoint.api.SailPointContext context, sailpoint.object.Attributes<String,Object> attributes) throws sailpoint.tools.GeneralException
Gets the list of objects to prune- Specified by:
getObjectIteratorin classAbstractThreadedTask<sailpoint.object.Reference>- Parameters:
context- The top-level task Sailpoint contextattributes- The task arguments- Returns:
- An iterator containing the objects to be iterated over
- Throws:
sailpoint.tools.GeneralException- if any failures occur
-
threadExecute
public Object threadExecute(sailpoint.api.SailPointContext threadContext, Map<String,Object> parameters, sailpoint.object.Reference ref) throws sailpoint.tools.GeneralException
Deletes the input- Specified by:
threadExecutein interfacePrivateContextObjectConsumer<sailpoint.object.Reference>- Specified by:
threadExecutein classAbstractThreadedTask<sailpoint.object.Reference>- Parameters:
threadContext- A private IIQ context for the current JVM threadparameters- A set of default parameters suitable for a Rule or Script. In the default implementation, the object will be in this map as ‘object’.ref- The object to terminate in this thread- Returns:
- always null
- Throws:
sailpoint.tools.GeneralException- if a failure occurs deleting the object
-
-