aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-core
diff options
context:
space:
mode:
authorSimon Brandhof <simon.brandhof@sonarsource.com>2014-05-21 23:59:41 +0200
committerSimon Brandhof <simon.brandhof@sonarsource.com>2014-05-22 00:00:42 +0200
commita1d8f73fe3262ddd8cd72def5f6f85acdce1f8dd (patch)
treed2b9bcda37517e2412d9e2261193bddbceb86842 /sonar-core
parent4dc80ca807bf33029dac81e6d5175f762f6da3ca (diff)
downloadsonarqube-a1d8f73fe3262ddd8cd72def5f6f85acdce1f8dd.tar.gz
sonarqube-a1d8f73fe3262ddd8cd72def5f6f85acdce1f8dd.zip
SONAR-5007 remove old ES indices for rules, active rules and rule tags
Diffstat (limited to 'sonar-core')
-rw-r--r--sonar-core/src/main/java/org/sonar/core/technicaldebt/db/CharacteristicMapper.java1
-rw-r--r--sonar-core/src/main/java/org/sonar/core/technicaldebt/db/RequirementDao.java20
-rw-r--r--sonar-core/src/main/java/org/sonar/core/technicaldebt/db/RequirementDto.java2
-rw-r--r--sonar-core/src/main/resources/org/sonar/core/technicaldebt/db/CharacteristicMapper.xml3
-rw-r--r--sonar-core/src/main/resources/org/sonar/core/technicaldebt/db/RequirementMapper.xml7
-rw-r--r--sonar-core/src/test/java/org/sonar/core/persistence/TestDatabase.java4
-rw-r--r--sonar-core/src/test/java/org/sonar/core/technicaldebt/db/RequirementDaoTest.java18
7 files changed, 22 insertions, 33 deletions
diff --git a/sonar-core/src/main/java/org/sonar/core/technicaldebt/db/CharacteristicMapper.java b/sonar-core/src/main/java/org/sonar/core/technicaldebt/db/CharacteristicMapper.java
index 10b02b8faed..d515b43e108 100644
--- a/sonar-core/src/main/java/org/sonar/core/technicaldebt/db/CharacteristicMapper.java
+++ b/sonar-core/src/main/java/org/sonar/core/technicaldebt/db/CharacteristicMapper.java
@@ -48,4 +48,5 @@ public interface CharacteristicMapper {
int update(CharacteristicDto characteristic);
+ void deleteRequirementsFromCharacteristicsTable();
}
diff --git a/sonar-core/src/main/java/org/sonar/core/technicaldebt/db/RequirementDao.java b/sonar-core/src/main/java/org/sonar/core/technicaldebt/db/RequirementDao.java
index 89b3e2d746f..2669c0415c1 100644
--- a/sonar-core/src/main/java/org/sonar/core/technicaldebt/db/RequirementDao.java
+++ b/sonar-core/src/main/java/org/sonar/core/technicaldebt/db/RequirementDao.java
@@ -21,31 +21,15 @@ package org.sonar.core.technicaldebt.db;
import org.apache.ibatis.session.SqlSession;
import org.sonar.api.ServerComponent;
-import org.sonar.core.persistence.MyBatis;
+import org.sonar.core.persistence.DaoComponent;
import java.util.List;
-public class RequirementDao implements ServerComponent {
-
- private final MyBatis mybatis;
-
- public RequirementDao(MyBatis mybatis) {
- this.mybatis = mybatis;
- }
-
- public List<RequirementDto> selectRequirements() {
- SqlSession session = mybatis.openSession(false);
- try {
- return selectRequirements(session);
- } finally {
- MyBatis.closeQuietly(session);
- }
- }
+public class RequirementDao implements DaoComponent, ServerComponent {
public List<RequirementDto> selectRequirements(SqlSession session) {
return session.getMapper(RequirementMapper.class).selectRequirements();
}
-
}
diff --git a/sonar-core/src/main/java/org/sonar/core/technicaldebt/db/RequirementDto.java b/sonar-core/src/main/java/org/sonar/core/technicaldebt/db/RequirementDto.java
index 3cd3a8f9fff..7c664fa538d 100644
--- a/sonar-core/src/main/java/org/sonar/core/technicaldebt/db/RequirementDto.java
+++ b/sonar-core/src/main/java/org/sonar/core/technicaldebt/db/RequirementDto.java
@@ -26,7 +26,7 @@ import java.io.Serializable;
import java.util.Date;
/**
- * Only used in {@link org.sonar.server.startup.CopyRequirementsFromCharacteristicsToRules}
+ * Only used in CopyRequirementsFromCharacteristicsToRules
*/
public class RequirementDto implements Serializable {
diff --git a/sonar-core/src/main/resources/org/sonar/core/technicaldebt/db/CharacteristicMapper.xml b/sonar-core/src/main/resources/org/sonar/core/technicaldebt/db/CharacteristicMapper.xml
index 91d7cb70021..a7470d07c62 100644
--- a/sonar-core/src/main/resources/org/sonar/core/technicaldebt/db/CharacteristicMapper.xml
+++ b/sonar-core/src/main/resources/org/sonar/core/technicaldebt/db/CharacteristicMapper.xml
@@ -107,5 +107,8 @@
where id=#{id}
</update>
+ <delete id="deleteRequirementsFromCharacteristicsTable">
+ DELETE FROM characteristics WHERE rule_id IS NOT NULL
+ </delete>
</mapper>
diff --git a/sonar-core/src/main/resources/org/sonar/core/technicaldebt/db/RequirementMapper.xml b/sonar-core/src/main/resources/org/sonar/core/technicaldebt/db/RequirementMapper.xml
index 9ef11bbd4e0..aa030656340 100644
--- a/sonar-core/src/main/resources/org/sonar/core/technicaldebt/db/RequirementMapper.xml
+++ b/sonar-core/src/main/resources/org/sonar/core/technicaldebt/db/RequirementMapper.xml
@@ -19,11 +19,10 @@
</sql>
<select id="selectRequirements" parameterType="map" resultType="Requirement">
- select <include refid="requirementsColumns"/>
+ select
+ <include refid="requirementsColumns"/>
from characteristics c
- <where>
- and c.rule_id IS NOT NULL
- </where>
+ where c.rule_id IS NOT NULL
</select>
</mapper>
diff --git a/sonar-core/src/test/java/org/sonar/core/persistence/TestDatabase.java b/sonar-core/src/test/java/org/sonar/core/persistence/TestDatabase.java
index 5d0ad07a3b0..198b7def501 100644
--- a/sonar-core/src/test/java/org/sonar/core/persistence/TestDatabase.java
+++ b/sonar-core/src/test/java/org/sonar/core/persistence/TestDatabase.java
@@ -67,7 +67,8 @@ import java.util.Properties;
import static org.junit.Assert.fail;
/**
- * This class should be call using @ClassRule in order to create the schema once (ft @Rule is used the schema will be recreated before each test).
+ * This class should be call using @ClassRule in order to create the schema once (ft @Rule is used
+ * the schema will be recreated before each test).
* Data will be truncated each time you call prepareDbUnit().
*/
public class TestDatabase extends ExternalResource {
@@ -224,6 +225,7 @@ public class TestDatabase extends ExternalResource {
IDatabaseConnection connection = null;
try {
connection = dbUnitConnection();
+
IDataSet dataSet = connection.createDataSet();
String path = "/" + testClass.getName().replace('.', '/') + "/" + filename;
IDataSet expectedDataSet = dbUnitDataSet(testClass.getResourceAsStream(path));
diff --git a/sonar-core/src/test/java/org/sonar/core/technicaldebt/db/RequirementDaoTest.java b/sonar-core/src/test/java/org/sonar/core/technicaldebt/db/RequirementDaoTest.java
index 4d589151296..66d9f1362e8 100644
--- a/sonar-core/src/test/java/org/sonar/core/technicaldebt/db/RequirementDaoTest.java
+++ b/sonar-core/src/test/java/org/sonar/core/technicaldebt/db/RequirementDaoTest.java
@@ -22,6 +22,7 @@ package org.sonar.core.technicaldebt.db;
import org.junit.Before;
import org.junit.Test;
import org.sonar.core.persistence.AbstractDaoTestCase;
+import org.sonar.core.persistence.DbSession;
import java.util.List;
@@ -31,25 +32,22 @@ public class RequirementDaoTest extends AbstractDaoTestCase {
private static final String[] EXCLUDED_COLUMNS = new String[]{"id", "created_at", "updated_at"};
- RequirementDao dao;
-
- @Before
- public void createDao() {
- dao = new RequirementDao(getMyBatis());
- }
+ RequirementDao dao = new RequirementDao();
@Test
public void select_requirements() {
setupData("shared");
-
- assertThat(dao.selectRequirements()).hasSize(2);
+ DbSession session = getMyBatis().openSession(false);
+ assertThat(dao.selectRequirements(session)).hasSize(2);
+ session.close();
}
@Test
public void select_requirement() {
setupData("select_requirement");
- List<RequirementDto> dtos = dao.selectRequirements();
+ DbSession session = getMyBatis().openSession(false);
+ List<RequirementDto> dtos = dao.selectRequirements(session);
assertThat(dtos).hasSize(1);
RequirementDto dto = dtos.get(0);
@@ -64,6 +62,8 @@ public class RequirementDaoTest extends AbstractDaoTestCase {
assertThat(dto.isEnabled()).isTrue();
assertThat(dto.getCreatedAt()).isNotNull();
assertThat(dto.getUpdatedAt()).isNull();
+
+ session.close();
}
}