From a27d5efd0aa3ce834ee20bccd5044c3c36a3467a Mon Sep 17 00:00:00 2001 From: Julien Lancelot Date: Tue, 19 May 2015 14:02:45 +0200 Subject: SONAR-6259 Persist components in db --- .../org/sonar/core/component/ComponentDto.java | 11 ++++ .../sonar/core/component/db/ComponentMapper.java | 11 +++- .../sonar/core/component/db/ComponentMapper.xml | 68 ++++++++++++++++------ .../org/sonar/core/component/ComponentDtoTest.java | 2 + 4 files changed, 71 insertions(+), 21 deletions(-) (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 5c934b98490..93a2feb82ee 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 @@ -49,6 +49,7 @@ public class ComponentDto implements Component { private String name; private String longName; private String language; + private String description; private boolean enabled = true; private Date createdAt; @@ -185,6 +186,16 @@ public class ComponentDto implements Component { return this; } + @CheckForNull + public String description() { + return description; + } + + public ComponentDto setDescription(@Nullable String description) { + this.description = description; + return this; + } + @CheckForNull public Long parentProjectId() { return parentProjectId; 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 643c34ddc19..be3f2b12412 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 @@ -93,6 +93,11 @@ public interface ComponentMapper { */ List selectUuidsForQualifiers(@Param("qualifiers") String... qualifiers); + /** + * Return all components of a project + */ + List selectComponentsFromProjectUuid(@Param("projectUuid") String projectUuid); + /** * Return technical projects from a view or a sub-view */ @@ -100,8 +105,6 @@ public interface ComponentMapper { long countById(long id); - void insert(ComponentDto rule); - List selectProvisionedProjects(Map parameters, RowBounds rowBounds); int countProvisionedProjects(Map parameters); @@ -109,4 +112,8 @@ public interface ComponentMapper { List selectGhostProjects(Map parameters, RowBounds rowBounds); long countGhostProjects(Map parameters); + + void insert(ComponentDto componentDto); + + void update(ComponentDto componentDto); } 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 54e3ffd9754..f7690f358a0 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 @@ -12,6 +12,7 @@ p.deprecated_kee as deprecatedKey, p.name as name, p.long_name as longName, + p.description as description, p.qualifier as qualifier, p.scope as scope, p.language as language, @@ -212,16 +213,14 @@ - - (kee, deprecated_kee, uuid, project_uuid, module_uuid, module_uuid_path, name, long_name, qualifier, scope, language, root_id, path, copy_resource_id, enabled, - created_at, authorization_updated_at) - - - - insert into projects - values (#{kee}, #{deprecatedKey}, #{uuid}, #{projectUuid}, #{moduleUuid}, #{moduleUuidPath}, #{name}, #{longName}, #{qualifier}, #{scope}, - #{language}, #{parentProjectId}, #{path}, #{copyResourceId}, #{enabled}, #{createdAt}, #{authorizationUpdatedAt}) - +