@ExperimentalApi public interface AnonymizationHandler<T>
|Modifier and Type||Method and Description|
Used to display in the UI a list of entities that are affected by anonymization process, without actually performing the operation yet.
Returns number of tasks/stages to be executed as part of this handler execution.
Performs the update operations related to the affected entities.
@Nonnull Collection<AffectedEntity> getAffectedEntities(@Nonnull T parameter)
This method should return results as fast as possible, as it is affecting the UI.
@Nonnull ServiceResult update(@Nonnull T parameter)
This method is executed in a background task and thus its accuracy is more important than performance.
This method should be idempotent - multiple invocations of this method should lead to the same result. In other words when method fails we can call it again and finish operation.
During execution, the implementation class will update the progress by typically calling
Context.start(object); on the context passed in
parameter, and subsequently call
Context.Task.complete(); on the the task object to indicate task has finished.
Implementation can also call
Context.setName("Name of current step") to describe the task that is currently processed.
It's used to calculate task progress. Eg. handler returning 1000 from this method is responsible to execute 1000
Default implementation returns 1000 tasks which means that each handle by default will have 1000 steps to complete, it's up to handler to decide how progress is reported eg. complete all 1000 steps at once or in some chunks.
When visualizing progress each handler has progress bar part that has length proportional to the number returned by this method. If you know that your handler will execute swiftly you can return lower number here eg. 100 (progress bar part for this handler will be 10 times shorter than those that return 1000).
Copyright © 2002-2021 Atlassian. All Rights Reserved.