|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static void buildManualTransitions(StateMachine.Builder builder) { |
|
|
private static void buildManualTransitions(StateMachine.Builder builder) { |
|
|
builder |
|
|
builder |
|
|
|
|
|
// confirm |
|
|
.transition(Transition.builder(DefaultTransitions.CONFIRM) |
|
|
.transition(Transition.builder(DefaultTransitions.CONFIRM) |
|
|
.from(STATUS_OPEN).to(STATUS_CONFIRMED) |
|
|
.from(STATUS_OPEN).to(STATUS_CONFIRMED) |
|
|
.conditions(IsNotHotspotNorManualVulnerability.INSTANCE) |
|
|
.conditions(IsNotHotspotNorManualVulnerability.INSTANCE) |
|
|
|
|
|
|
|
|
.conditions(IsNotHotspotNorManualVulnerability.INSTANCE) |
|
|
.conditions(IsNotHotspotNorManualVulnerability.INSTANCE) |
|
|
.functions(new SetResolution(null)) |
|
|
.functions(new SetResolution(null)) |
|
|
.build()) |
|
|
.build()) |
|
|
.transition(Transition.builder(DefaultTransitions.UNCONFIRM) |
|
|
|
|
|
.from(STATUS_CONFIRMED).to(STATUS_REOPENED) |
|
|
|
|
|
.conditions(IsNotHotspotNorManualVulnerability.INSTANCE) |
|
|
|
|
|
.functions(new SetResolution(null)) |
|
|
|
|
|
.build()) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// resolve as fixed |
|
|
.transition(Transition.builder(DefaultTransitions.RESOLVE) |
|
|
.transition(Transition.builder(DefaultTransitions.RESOLVE) |
|
|
.from(STATUS_OPEN).to(STATUS_RESOLVED) |
|
|
.from(STATUS_OPEN).to(STATUS_RESOLVED) |
|
|
.conditions(IsNotHotspotNorManualVulnerability.INSTANCE) |
|
|
.conditions(IsNotHotspotNorManualVulnerability.INSTANCE) |
|
|
.functions(new SetResolution(RESOLUTION_FIXED)) |
|
|
.functions(new SetResolution(RESOLUTION_FIXED)) |
|
|
|
|
|
.requiredProjectPermission(UserRole.ISSUE_ADMIN) |
|
|
.build()) |
|
|
.build()) |
|
|
.transition(Transition.builder(DefaultTransitions.RESOLVE) |
|
|
.transition(Transition.builder(DefaultTransitions.RESOLVE) |
|
|
.from(STATUS_REOPENED).to(STATUS_RESOLVED) |
|
|
.from(STATUS_REOPENED).to(STATUS_RESOLVED) |
|
|
.conditions(IsNotHotspotNorManualVulnerability.INSTANCE) |
|
|
.conditions(IsNotHotspotNorManualVulnerability.INSTANCE) |
|
|
.functions(new SetResolution(RESOLUTION_FIXED)) |
|
|
.functions(new SetResolution(RESOLUTION_FIXED)) |
|
|
|
|
|
.requiredProjectPermission(UserRole.ISSUE_ADMIN) |
|
|
.build()) |
|
|
.build()) |
|
|
.transition(Transition.builder(DefaultTransitions.RESOLVE) |
|
|
.transition(Transition.builder(DefaultTransitions.RESOLVE) |
|
|
.from(STATUS_CONFIRMED).to(STATUS_RESOLVED) |
|
|
.from(STATUS_CONFIRMED).to(STATUS_RESOLVED) |
|
|
.conditions(IsNotHotspotNorManualVulnerability.INSTANCE) |
|
|
.conditions(IsNotHotspotNorManualVulnerability.INSTANCE) |
|
|
.functions(new SetResolution(RESOLUTION_FIXED)) |
|
|
.functions(new SetResolution(RESOLUTION_FIXED)) |
|
|
|
|
|
.requiredProjectPermission(UserRole.ISSUE_ADMIN) |
|
|
|
|
|
.build()) |
|
|
|
|
|
|
|
|
|
|
|
// reopen |
|
|
|
|
|
.transition(Transition.builder(DefaultTransitions.UNCONFIRM) |
|
|
|
|
|
.from(STATUS_CONFIRMED).to(STATUS_REOPENED) |
|
|
|
|
|
.conditions(IsNotHotspotNorManualVulnerability.INSTANCE) |
|
|
|
|
|
.functions(new SetResolution(null)) |
|
|
.build()) |
|
|
.build()) |
|
|
.transition(Transition.builder(DefaultTransitions.REOPEN) |
|
|
.transition(Transition.builder(DefaultTransitions.REOPEN) |
|
|
.from(STATUS_RESOLVED).to(STATUS_REOPENED) |
|
|
.from(STATUS_RESOLVED).to(STATUS_REOPENED) |