aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-plugin-api
diff options
context:
space:
mode:
authorJean-Baptiste Lievremont <jean-baptiste.lievremont@sonarsource.com>2014-12-11 11:12:56 +0100
committerJean-Baptiste Lievremont <jean-baptiste.lievremont@sonarsource.com>2014-12-11 16:33:45 +0100
commit39687f13cee6a12b1ca0d9bd4b168b07bc58170b (patch)
tree58c66ca110f341f236c3eea69a5eb4687eb55a34 /sonar-plugin-api
parent5f3fc47926a2a2d9226ad004b93c8961615394c1 (diff)
downloadsonarqube-39687f13cee6a12b1ca0d9bd4b168b07bc58170b.tar.gz
sonarqube-39687f13cee6a12b1ca0d9bd4b168b07bc58170b.zip
SONAR-5900 Add api/issues/set_tags WS
Diffstat (limited to 'sonar-plugin-api')
-rw-r--r--sonar-plugin-api/src/main/java/org/sonar/api/issue/Issue.java6
-rw-r--r--sonar-plugin-api/src/main/java/org/sonar/api/issue/internal/DefaultIssue.java23
2 files changed, 28 insertions, 1 deletions
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/issue/Issue.java b/sonar-plugin-api/src/main/java/org/sonar/api/issue/Issue.java
index 55caecffcae..391830e4131 100644
--- a/sonar-plugin-api/src/main/java/org/sonar/api/issue/Issue.java
+++ b/sonar-plugin-api/src/main/java/org/sonar/api/issue/Issue.java
@@ -26,6 +26,7 @@ import org.sonar.api.utils.Duration;
import javax.annotation.CheckForNull;
import java.io.Serializable;
+import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -201,4 +202,9 @@ public interface Issue extends Serializable {
* @since 5.0
*/
String componentUuid();
+
+ /**
+ * @since 5.1
+ */
+ Collection<String> tags();
}
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/issue/internal/DefaultIssue.java b/sonar-plugin-api/src/main/java/org/sonar/api/issue/internal/DefaultIssue.java
index e0f151ac9d0..2542aeb19d5 100644
--- a/sonar-plugin-api/src/main/java/org/sonar/api/issue/internal/DefaultIssue.java
+++ b/sonar-plugin-api/src/main/java/org/sonar/api/issue/internal/DefaultIssue.java
@@ -24,6 +24,7 @@ import com.google.common.base.Preconditions;
import com.google.common.base.Strings;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Maps;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.builder.ToStringBuilder;
@@ -39,7 +40,13 @@ import javax.annotation.CheckForNull;
import javax.annotation.Nullable;
import java.io.Serializable;
-import java.util.*;
+import java.util.Calendar;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
import static com.google.common.collect.Lists.newArrayList;
@@ -79,6 +86,7 @@ public class DefaultIssue implements Issue {
private String authorLogin = null;
private String actionPlanKey;
private List<IssueComment> comments = null;
+ private Set<String> tags = null;
// FUNCTIONAL DATES
private Date creationDate;
@@ -582,4 +590,17 @@ public class DefaultIssue implements Issue {
return ToStringBuilder.reflectionToString(this, ToStringStyle.SHORT_PREFIX_STYLE);
}
+ @Override
+ public Collection<String> tags() {
+ if (tags == null) {
+ return ImmutableSet.of();
+ } else {
+ return ImmutableSet.copyOf(tags);
+ }
+ }
+
+ public DefaultIssue setTags(Collection<String> tags) {
+ this.tags = ImmutableSet.copyOf(tags);
+ return this;
+ }
}