From e38085cd200784a4ce3898a39c2f085773d9c516 Mon Sep 17 00:00:00 2001 From: Julien Lancelot Date: Fri, 26 Sep 2014 10:40:08 +0200 Subject: SONAR-5531 Return sub projects in components list of issues search ws --- .../org/sonar/core/component/ComponentDto.java | 4 ++- .../sonar/core/component/db/ComponentMapper.java | 10 ++++++ .../java/org/sonar/core/issue/db/IssueMapper.java | 2 ++ .../sonar/core/component/db/ComponentMapper.xml | 41 ++++++++++++++++++++++ .../org/sonar/core/issue/db/IssueMapper.xml | 13 +++++++ 5 files changed, 69 insertions(+), 1 deletion(-) (limited to 'sonar-core') diff --git a/sonar-core/src/main/java/org/sonar/core/component/ComponentDto.java b/sonar-core/src/main/java/org/sonar/core/component/ComponentDto.java index c64127cc8ba..fb22bf18d91 100644 --- a/sonar-core/src/main/java/org/sonar/core/component/ComponentDto.java +++ b/sonar-core/src/main/java/org/sonar/core/component/ComponentDto.java @@ -32,11 +32,13 @@ public class ComponentDto extends AuthorizedComponentDto implements Component { private String name; private String longName; private String language; - private Long projectId; private Long subProjectId; private boolean enabled = true; private Date authorizationUpdatedAt; + // Return by join for the moment + private Long projectId; + public ComponentDto setId(Long id) { super.setId(id); return this; diff --git a/sonar-core/src/main/java/org/sonar/core/component/db/ComponentMapper.java b/sonar-core/src/main/java/org/sonar/core/component/db/ComponentMapper.java index 58cfdba2b5d..9102b8601d5 100644 --- a/sonar-core/src/main/java/org/sonar/core/component/db/ComponentMapper.java +++ b/sonar-core/src/main/java/org/sonar/core/component/db/ComponentMapper.java @@ -25,6 +25,7 @@ import org.sonar.core.component.ComponentDto; import javax.annotation.CheckForNull; +import java.util.Collection; import java.util.List; /** @@ -49,6 +50,15 @@ public interface ComponentMapper { */ List findModulesByProject(@Param("projectKey") String projectKey); + /** + * Return sub project of component keys + */ + List findSubProjectsByComponentKeys(@Param("keys") Collection keys); + + List findByIds(@Param("ids") Collection ids); + + List findByKeys(@Param("keys") Collection keys); + long countById(long id); @CheckForNull diff --git a/sonar-core/src/main/java/org/sonar/core/issue/db/IssueMapper.java b/sonar-core/src/main/java/org/sonar/core/issue/db/IssueMapper.java index e09a68c1669..578df00d41d 100644 --- a/sonar-core/src/main/java/org/sonar/core/issue/db/IssueMapper.java +++ b/sonar-core/src/main/java/org/sonar/core/issue/db/IssueMapper.java @@ -34,6 +34,8 @@ public interface IssueMapper { IssueDto selectByKey(String key); + List selectByKeys(Collection keys); + /** * Return a paginated list of authorized issue ids for a user. * If the role is null, then the authorisation check is disabled. diff --git a/sonar-core/src/main/resources/org/sonar/core/component/db/ComponentMapper.xml b/sonar-core/src/main/resources/org/sonar/core/component/db/ComponentMapper.xml index c910c80e875..a2b4e19ae77 100644 --- a/sonar-core/src/main/resources/org/sonar/core/component/db/ComponentMapper.xml +++ b/sonar-core/src/main/resources/org/sonar/core/component/db/ComponentMapper.xml @@ -86,6 +86,47 @@ + + + + + + + +