Class ShadowCleanupActivityHandler
- java.lang.Object
-
- com.evolveum.midpoint.model.impl.tasks.ModelActivityHandler<WD,SAH>
-
- com.evolveum.midpoint.model.impl.tasks.simple.SimpleActivityHandler<ShadowType,ShadowCleanupActivityHandler.MyWorkDefinition,ShadowCleanupActivityHandler>
-
- com.evolveum.midpoint.model.impl.tasks.ShadowCleanupActivityHandler
-
- All Implemented Interfaces:
ActivityRunSupplier<ShadowCleanupActivityHandler.MyWorkDefinition,ShadowCleanupActivityHandler>
,CandidateIdentifierFormatter
,ActivityHandler<ShadowCleanupActivityHandler.MyWorkDefinition,ShadowCleanupActivityHandler>
@Component public class ShadowCleanupActivityHandler extends SimpleActivityHandler<ShadowType,ShadowCleanupActivityHandler.MyWorkDefinition,ShadowCleanupActivityHandler>
The original idea behind this activity was to treat shadows on (asynchronous) Kafka resources that did not support "read" operation (or did that in a very limited way). So the only way how to know what shadows are really existing was to send regular account update events that would keep "fullSynchronizationTimestamp" up to date. Shadows that were not updated were considered to be dead. However, such an approach is a bit brittle. In particular, if used for a regular resource, it may be possible that such a shadow really exists. Hence, in 4.7 the behavior was changed to call explicit provisioning "getObject" operation instead of simply assuming the shadow is gone. This conflicts with the original use case, and if that should be usable again, the code would need to be improved somehow. TODO Decide on the fate of this activity (MID-8350)- Author:
- skublik
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
ShadowCleanupActivityHandler.MyRun
static class
ShadowCleanupActivityHandler.MyWorkDefinition
-
Nested classes/interfaces inherited from class com.evolveum.midpoint.model.impl.tasks.simple.SimpleActivityHandler
SimpleActivityHandler.ExecutionSupplier<O extends ObjectType,WD extends WorkDefinition,SAH extends SimpleActivityHandler<O,WD,SAH>>
-
-
Field Summary
-
Fields inherited from class com.evolveum.midpoint.model.impl.tasks.simple.SimpleActivityHandler
clock, clockwork, contextFactory, modelController, modelService, prismContext, provisioningService, repositoryService, scriptingService, securityEnforcer, synchronizationService, syncTaskHelper, workDefinitionFactory
-
Fields inherited from class com.evolveum.midpoint.model.impl.tasks.ModelActivityHandler
beans, commonTaskBeans, handlerRegistry
-
-
Constructor Summary
Constructors Constructor Description ShadowCleanupActivityHandler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
getDefaultArchetypeOid()
Returns task archetype OID connected to this activity handler.protected @NotNull SimpleActivityHandler.ExecutionSupplier<ShadowType,ShadowCleanupActivityHandler.MyWorkDefinition,ShadowCleanupActivityHandler>
getExecutionSupplier()
String
getIdentifierPrefix()
protected @NotNull String
getLegacyHandlerUri()
protected @NotNull String
getShortName()
protected @NotNull Class<ShadowCleanupActivityHandler.MyWorkDefinition>
getWorkDefinitionClass()
protected @NotNull WorkDefinitionFactory.WorkDefinitionSupplier
getWorkDefinitionSupplier()
protected @NotNull QName
getWorkDefinitionTypeName()
-
Methods inherited from class com.evolveum.midpoint.model.impl.tasks.simple.SimpleActivityHandler
createActivityRun, register, unregister
-
Methods inherited from class com.evolveum.midpoint.model.impl.tasks.ModelActivityHandler
getModelBeans
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.evolveum.midpoint.repo.common.activity.handlers.ActivityHandler
createChildActivities, formatCandidateIdentifier, getRootActivityStateDefinition
-
-
-
-
Method Detail
-
getWorkDefinitionTypeName
@NotNull protected @NotNull QName getWorkDefinitionTypeName()
-
getWorkDefinitionClass
@NotNull protected @NotNull Class<ShadowCleanupActivityHandler.MyWorkDefinition> getWorkDefinitionClass()
-
getWorkDefinitionSupplier
@NotNull protected @NotNull WorkDefinitionFactory.WorkDefinitionSupplier getWorkDefinitionSupplier()
-
getExecutionSupplier
@NotNull protected @NotNull SimpleActivityHandler.ExecutionSupplier<ShadowType,ShadowCleanupActivityHandler.MyWorkDefinition,ShadowCleanupActivityHandler> getExecutionSupplier()
-
getLegacyHandlerUri
@NotNull protected @NotNull String getLegacyHandlerUri()
-
getDefaultArchetypeOid
public String getDefaultArchetypeOid()
Description copied from interface:ActivityHandler
Returns task archetype OID connected to this activity handler. When a generic task starts, it is given an archetype based on the activity handler for the task's main activity. (If not set before.)
-
getShortName
@NotNull protected @NotNull String getShortName()
- Specified by:
getShortName
in classSimpleActivityHandler<ShadowType,ShadowCleanupActivityHandler.MyWorkDefinition,ShadowCleanupActivityHandler>
-
getIdentifierPrefix
public String getIdentifierPrefix()
-
-