public class ReferenceUserKeyChangeHandler extends Object implements UserKeyChangeHandler
Constructor and Description |
---|
ReferenceUserKeyChangeHandler(JiraAuthenticationContext jiraAuthenticationContext) |
Modifier and Type | Method and Description |
---|---|
Collection<AffectedEntity> |
getAffectedEntities(UserPropertyChangeParameter userPropertyChangeParameter)
Used to display in the UI a list of entities that are affected by anonymization process, without actually performing
the operation yet.
|
int |
getNumberOfTasks(UserPropertyChangeParameter userPropertyChangeParameter)
Returns number of tasks/stages to be executed as part of this handler execution.
|
ServiceResult |
update(UserPropertyChangeParameter userPropertyChangeParameter)
Performs the update operations related to the affected entities.
|
public ReferenceUserKeyChangeHandler(JiraAuthenticationContext jiraAuthenticationContext)
@Nonnull public Collection<AffectedEntity> getAffectedEntities(@Nonnull UserPropertyChangeParameter userPropertyChangeParameter)
AnonymizationHandler
This method should return results as fast as possible, as it is affecting the UI.
getAffectedEntities
in interface AnonymizationHandler<UserPropertyChangeParameter>
userPropertyChangeParameter
- Parameter@Nonnull public ServiceResult update(@Nonnull UserPropertyChangeParameter userPropertyChangeParameter)
AnonymizationHandler
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.
update
in interface AnonymizationHandler<UserPropertyChangeParameter>
userPropertyChangeParameter
- Parameterpublic int getNumberOfTasks(@Nonnull UserPropertyChangeParameter userPropertyChangeParameter)
AnonymizationHandler
AnonymizationHandler.update(Object)
.
It's used to calculate task progress. Eg. handler returning 1000 from this method is responsible to execute 1000
calls to Context.start(object);
and Context.Task.complete();
in AnonymizationHandler.update(Object)
.
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).
getNumberOfTasks
in interface AnonymizationHandler<UserPropertyChangeParameter>
Copyright © 2002-2021 Atlassian. All Rights Reserved.