aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-server/src/main/java/org/sonar/server/issue/IssueBulkChangeService.java
diff options
context:
space:
mode:
Diffstat (limited to 'sonar-server/src/main/java/org/sonar/server/issue/IssueBulkChangeService.java')
-rw-r--r--sonar-server/src/main/java/org/sonar/server/issue/IssueBulkChangeService.java9
1 files changed, 6 insertions, 3 deletions
diff --git a/sonar-server/src/main/java/org/sonar/server/issue/IssueBulkChangeService.java b/sonar-server/src/main/java/org/sonar/server/issue/IssueBulkChangeService.java
index 586280b143e..cc23710a2c6 100644
--- a/sonar-server/src/main/java/org/sonar/server/issue/IssueBulkChangeService.java
+++ b/sonar-server/src/main/java/org/sonar/server/issue/IssueBulkChangeService.java
@@ -35,6 +35,7 @@ import org.sonar.core.issue.db.IssueStorage;
import org.sonar.server.user.UserSession;
import javax.annotation.CheckForNull;
+
import java.util.Date;
import java.util.List;
@@ -75,12 +76,10 @@ public class IssueBulkChangeService {
IssueChangeContext issueChangeContext = IssueChangeContext.createUser(new Date(), userSession.login());
for (Issue issue : issues) {
+ ActionContext actionContext = new ActionContext(issue, issueChangeContext);
for (Action action : bulkActions) {
try {
- ActionContext actionContext = new ActionContext(issue, issueChangeContext);
if (action.supports(issue) && action.execute(issueBulkChangeQuery.properties(action.key()), actionContext)) {
- issueStorage.save((DefaultIssue) issue);
- issueNotifications.sendChanges((DefaultIssue) issue, issueChangeContext, issueQueryResult);
result.addIssueChanged(issue);
} else {
result.addIssueNotChanged(issue);
@@ -90,6 +89,10 @@ public class IssueBulkChangeService {
LOG.info("An error occur when trying to apply the action : "+ action.key() + " on issue : "+ issue.key() + ". This issue has been ignored.", e);
}
}
+ if (result.issuesChanged().contains(issue)) {
+ issueStorage.save((DefaultIssue) issue);
+ issueNotifications.sendChanges((DefaultIssue) issue, issueChangeContext, issueQueryResult);
+ }
}
return result;
}