aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-core/src/main
diff options
context:
space:
mode:
authorTeryk Bellahsene <teryk.bellahsene@sonarsource.com>2014-12-03 17:34:21 +0100
committerTeryk Bellahsene <teryk.bellahsene@sonarsource.com>2014-12-03 18:51:45 +0100
commit1c6c5ac69aed0f7dd35f5007105ed9ac6f1f568d (patch)
tree236386654e5787d1d04c4a714ef3ac78ff7c1fdb /sonar-core/src/main
parentc1388e9acd68a7ea0544eaab7ece033c8715ef6c (diff)
downloadsonarqube-1c6c5ac69aed0f7dd35f5007105ed9ac6f1f568d.tar.gz
sonarqube-1c6c5ac69aed0f7dd35f5007105ed9ac6f1f568d.zip
compute engine – move ProjectPurgeTask on the server side
Diffstat (limited to 'sonar-core/src/main')
-rw-r--r--sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/ProjectPurgeTask.java84
-rw-r--r--sonar-core/src/main/java/org/sonar/core/config/CorePropertyDefinitions.java2
-rw-r--r--sonar-core/src/main/java/org/sonar/core/purge/PurgeConfiguration.java2
-rw-r--r--sonar-core/src/main/java/org/sonar/plugins/dbcleaner/api/DbCleanerConstants.java2
-rw-r--r--sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/DataCleanerProperties.java (renamed from sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/DataCleanerProperties.java)2
-rw-r--r--sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/DbCleanerConstants.java (renamed from sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/DbCleanerConstants.java)2
-rw-r--r--sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/DefaultPurgeTask.java (renamed from sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/DefaultPurgeTask.java)4
-rw-r--r--sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/package-info.java (renamed from sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/package-info.java)2
-rw-r--r--sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/DefaultPeriodCleaner.java (renamed from sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/DefaultPeriodCleaner.java)2
-rw-r--r--sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/DeleteAllFilter.java (renamed from sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/DeleteAllFilter.java)2
-rw-r--r--sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/Filter.java (renamed from sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/Filter.java)2
-rw-r--r--sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/Filters.java (renamed from sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/Filters.java)4
-rw-r--r--sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/Interval.java (renamed from sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/Interval.java)2
-rw-r--r--sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/KeepOneFilter.java (renamed from sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/KeepOneFilter.java)2
-rw-r--r--sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/package-info.java (renamed from sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/package-info.java)2
15 files changed, 16 insertions, 100 deletions
diff --git a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/ProjectPurgeTask.java b/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/ProjectPurgeTask.java
deleted file mode 100644
index 931a746b620..00000000000
--- a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/ProjectPurgeTask.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * SonarQube, open source software quality management tool.
- * Copyright (C) 2008-2014 SonarSource
- * mailto:contact AT sonarsource DOT com
- *
- * SonarQube is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * SonarQube is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-package org.sonar.core.computation.dbcleaner;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.sonar.api.CoreProperties;
-import org.sonar.api.ServerComponent;
-import org.sonar.api.config.Settings;
-import org.sonar.api.utils.TimeUtils;
-import org.sonar.core.computation.dbcleaner.period.DefaultPeriodCleaner;
-import org.sonar.core.persistence.DbSession;
-import org.sonar.core.purge.PurgeConfiguration;
-import org.sonar.core.purge.PurgeDao;
-import org.sonar.core.purge.PurgeProfiler;
-
-import java.util.List;
-
-public class ProjectPurgeTask implements ServerComponent {
- private static final Logger LOG = LoggerFactory.getLogger(ProjectPurgeTask.class);
- private final PurgeProfiler profiler;
- private final PurgeDao purgeDao;
- private final DefaultPeriodCleaner periodCleaner;
-
- public ProjectPurgeTask(PurgeDao purgeDao, DefaultPeriodCleaner periodCleaner, PurgeProfiler profiler) {
- this.purgeDao = purgeDao;
- this.periodCleaner = periodCleaner;
- this.profiler = profiler;
- }
-
- public ProjectPurgeTask purge(DbSession session, PurgeConfiguration configuration, Settings settings) {
- long start = System.currentTimeMillis();
- profiler.reset();
- cleanHistoricalData(session, configuration.rootProjectId(), settings);
- doPurge(session, configuration);
- if (settings.getBoolean(CoreProperties.PROFILING_LOG_PROPERTY)) {
- long duration = System.currentTimeMillis() - start;
- LOG.info("\n -------- Profiling for purge: " + TimeUtils.formatDuration(duration) + " --------\n");
- profiler.dump(duration, LOG);
- LOG.info("\n -------- End of profiling for purge --------\n");
- }
- return this;
- }
-
- private void cleanHistoricalData(DbSession session, long resourceId, Settings settings) {
- try {
- periodCleaner.clean(session, resourceId, settings);
- } catch (Exception e) {
- // purge errors must no fail the batch
- LOG.error("Fail to clean historical data [id=" + resourceId + "]", e);
- }
- }
-
- private void doPurge(DbSession session, PurgeConfiguration configuration) {
- try {
- purgeDao.purge(session, configuration);
- } catch (Exception e) {
- // purge errors must no fail the report analysis
- LOG.error("Fail to purge data [id=" + configuration.rootProjectId() + "]", e);
- }
- }
-
- public List<String> findUuidsToDisable(DbSession session, Long projectId) {
- return purgeDao.selectPurgeableFiles(session, projectId);
- }
-}
diff --git a/sonar-core/src/main/java/org/sonar/core/config/CorePropertyDefinitions.java b/sonar-core/src/main/java/org/sonar/core/config/CorePropertyDefinitions.java
index d10afcf4cf9..0bb4bb69e0a 100644
--- a/sonar-core/src/main/java/org/sonar/core/config/CorePropertyDefinitions.java
+++ b/sonar-core/src/main/java/org/sonar/core/config/CorePropertyDefinitions.java
@@ -24,7 +24,7 @@ import com.google.common.collect.Lists;
import org.sonar.api.CoreProperties;
import org.sonar.api.config.PropertyDefinition;
import org.sonar.api.resources.Qualifiers;
-import org.sonar.core.computation.dbcleaner.DataCleanerProperties;
+import org.sonar.server.computation.dbcleaner.DataCleanerProperties;
import java.util.List;
diff --git a/sonar-core/src/main/java/org/sonar/core/purge/PurgeConfiguration.java b/sonar-core/src/main/java/org/sonar/core/purge/PurgeConfiguration.java
index d3fc9c1c4bd..37886b30732 100644
--- a/sonar-core/src/main/java/org/sonar/core/purge/PurgeConfiguration.java
+++ b/sonar-core/src/main/java/org/sonar/core/purge/PurgeConfiguration.java
@@ -24,7 +24,7 @@ import org.apache.commons.lang.time.DateUtils;
import org.sonar.api.config.Settings;
import org.sonar.api.resources.Scopes;
import org.sonar.api.utils.System2;
-import org.sonar.core.computation.dbcleaner.DbCleanerConstants;
+import org.sonar.server.computation.dbcleaner.DbCleanerConstants;
import javax.annotation.CheckForNull;
diff --git a/sonar-core/src/main/java/org/sonar/plugins/dbcleaner/api/DbCleanerConstants.java b/sonar-core/src/main/java/org/sonar/plugins/dbcleaner/api/DbCleanerConstants.java
index 8cad98c10c5..53fc44ede3a 100644
--- a/sonar-core/src/main/java/org/sonar/plugins/dbcleaner/api/DbCleanerConstants.java
+++ b/sonar-core/src/main/java/org/sonar/plugins/dbcleaner/api/DbCleanerConstants.java
@@ -23,5 +23,5 @@ package org.sonar.plugins.dbcleaner.api;
* @deprecated (is used by the plugin views only. Will rely on the implementation when views analysis views moved on the server side)
*/
@Deprecated
-public interface DbCleanerConstants extends org.sonar.core.computation.dbcleaner.DbCleanerConstants {
+public interface DbCleanerConstants extends org.sonar.server.computation.dbcleaner.DbCleanerConstants {
}
diff --git a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/DataCleanerProperties.java b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/DataCleanerProperties.java
index f4bc98dea9a..902a36350a3 100644
--- a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/DataCleanerProperties.java
+++ b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/DataCleanerProperties.java
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-package org.sonar.core.computation.dbcleaner;
+package org.sonar.server.computation.dbcleaner;
import org.sonar.api.CoreProperties;
import org.sonar.api.PropertyType;
diff --git a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/DbCleanerConstants.java b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/DbCleanerConstants.java
index a577f632608..fbd853e00bf 100644
--- a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/DbCleanerConstants.java
+++ b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/DbCleanerConstants.java
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-package org.sonar.core.computation.dbcleaner;
+package org.sonar.server.computation.dbcleaner;
public interface DbCleanerConstants {
diff --git a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/DefaultPurgeTask.java b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/DefaultPurgeTask.java
index 2e0f073571e..188164e55fc 100644
--- a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/DefaultPurgeTask.java
+++ b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/DefaultPurgeTask.java
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-package org.sonar.core.computation.dbcleaner;
+package org.sonar.server.computation.dbcleaner;
import com.google.common.annotations.VisibleForTesting;
import org.slf4j.Logger;
@@ -27,7 +27,7 @@ import org.sonar.api.CoreProperties;
import org.sonar.api.config.Settings;
import org.sonar.api.resources.Qualifiers;
import org.sonar.api.utils.TimeUtils;
-import org.sonar.core.computation.dbcleaner.period.DefaultPeriodCleaner;
+import org.sonar.server.computation.dbcleaner.period.DefaultPeriodCleaner;
import org.sonar.core.purge.IdUuidPair;
import org.sonar.core.purge.PurgeConfiguration;
import org.sonar.core.purge.PurgeDao;
diff --git a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/package-info.java b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/package-info.java
index 8a7156fd308..f3a8c77da99 100644
--- a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/package-info.java
+++ b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/package-info.java
@@ -19,6 +19,6 @@
*/
@ParametersAreNonnullByDefault
-package org.sonar.core.computation.dbcleaner;
+package org.sonar.server.computation.dbcleaner;
import javax.annotation.ParametersAreNonnullByDefault;
diff --git a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/DefaultPeriodCleaner.java b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/DefaultPeriodCleaner.java
index e87214d4e0e..0fcf5236ebf 100644
--- a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/DefaultPeriodCleaner.java
+++ b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/DefaultPeriodCleaner.java
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-package org.sonar.core.computation.dbcleaner.period;
+package org.sonar.server.computation.dbcleaner.period;
import com.google.common.annotations.VisibleForTesting;
import org.slf4j.Logger;
diff --git a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/DeleteAllFilter.java b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/DeleteAllFilter.java
index 25dcb409ea1..83c8a9edf4b 100644
--- a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/DeleteAllFilter.java
+++ b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/DeleteAllFilter.java
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-package org.sonar.core.computation.dbcleaner.period;
+package org.sonar.server.computation.dbcleaner.period;
import com.google.common.collect.Lists;
import org.slf4j.LoggerFactory;
diff --git a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/Filter.java b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/Filter.java
index ef4a3753242..c4bf00a1bd6 100644
--- a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/Filter.java
+++ b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/Filter.java
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-package org.sonar.core.computation.dbcleaner.period;
+package org.sonar.server.computation.dbcleaner.period;
import org.sonar.core.purge.PurgeableSnapshotDto;
diff --git a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/Filters.java b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/Filters.java
index 8e59596212c..929316c0a2b 100644
--- a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/Filters.java
+++ b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/Filters.java
@@ -18,12 +18,12 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-package org.sonar.core.computation.dbcleaner.period;
+package org.sonar.server.computation.dbcleaner.period;
import com.google.common.collect.Lists;
import org.apache.commons.lang.time.DateUtils;
import org.sonar.api.config.Settings;
-import org.sonar.core.computation.dbcleaner.DbCleanerConstants;
+import org.sonar.server.computation.dbcleaner.DbCleanerConstants;
import java.util.Calendar;
import java.util.Date;
diff --git a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/Interval.java b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/Interval.java
index 5676a858495..a4ef804274b 100644
--- a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/Interval.java
+++ b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/Interval.java
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-package org.sonar.core.computation.dbcleaner.period;
+package org.sonar.server.computation.dbcleaner.period;
import com.google.common.collect.Lists;
import org.apache.commons.lang.time.DateUtils;
diff --git a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/KeepOneFilter.java b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/KeepOneFilter.java
index 419add8383f..32bda2cca08 100644
--- a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/KeepOneFilter.java
+++ b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/KeepOneFilter.java
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-package org.sonar.core.computation.dbcleaner.period;
+package org.sonar.server.computation.dbcleaner.period;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.Lists;
diff --git a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/package-info.java b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/package-info.java
index 283ef7fa912..1f547e88740 100644
--- a/sonar-core/src/main/java/org/sonar/core/computation/dbcleaner/period/package-info.java
+++ b/sonar-core/src/main/java/org/sonar/server/computation/dbcleaner/period/package-info.java
@@ -19,6 +19,6 @@
*/
@ParametersAreNonnullByDefault
-package org.sonar.core.computation.dbcleaner.period;
+package org.sonar.server.computation.dbcleaner.period;
import javax.annotation.ParametersAreNonnullByDefault;