@PublicSpi
public interface ProjectTypeUpdatedHandler
Implementations of this class need to be registered through ProjectTypeUpdatedRegistrar.register(ProjectTypeUpdatedHandler)
for the notifications to be triggered.
Modifier and Type | Method and Description |
---|---|
String |
getHandlerId()
Returns a unique identifier for the handler.
|
ProjectTypeUpdatedOutcome |
onProjectTypeUpdated(ApplicationUser user,
Project project,
ProjectTypeKey oldProjectTypeKey,
ProjectTypeKey newProjectTypeKey)
Method called every time the type of a project is updated.
|
void |
onProjectTypeUpdateRolledBack(ApplicationUser user,
Project project,
ProjectTypeKey oldProjectTypeKey,
ProjectTypeKey newProjectTypeKey,
ProjectTypeUpdatedOutcome outcome)
This method will only be called if the update to the project type is rolled back.
|
String getHandlerId()
ProjectTypeUpdatedOutcome onProjectTypeUpdated(ApplicationUser user, Project project, ProjectTypeKey oldProjectTypeKey, ProjectTypeKey newProjectTypeKey)
user
- The user performing the update.project
- The project for which the type has been updated.oldProjectTypeKey
- The old project type key.newProjectTypeKey
- The new project type key.ProjectTypeUpdatedOutcome
indicating whether the operation succeeded or failed .void onProjectTypeUpdateRolledBack(ApplicationUser user, Project project, ProjectTypeKey oldProjectTypeKey, ProjectTypeKey newProjectTypeKey, ProjectTypeUpdatedOutcome outcome)
That could happen if one of the ProjectTypeUpdatedHandler
returns an error on #projectTypeUpdated(Project, ProjectType, ProjectType)
.
On this method, the handler should undo all of the changes made by it when #projectTypeUpdated(Project, ProjectType, ProjectType)
was called.
The parameters passed to this method will be exactly the same as the ones when #projectTypeUpdated(Project, ProjectType, ProjectType)
was called,
with the addition of the ProjectTypeUpdatedOutcome
returned from that call.
user
- The user performing the update.project
- The project type for which the project type was updated.oldProjectTypeKey
- The old project type key.newProjectTypeKey
- The new project type key.outcome
- the ProjectTypeUpdatedOutcome
returned from the update operation.Copyright © 2002-2019 Atlassian. All Rights Reserved.