aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-batch
diff options
context:
space:
mode:
Diffstat (limited to 'sonar-batch')
-rw-r--r--sonar-batch/src/main/java/org/sonar/batch/bootstrap/BatchPluginRepository.java9
-rw-r--r--sonar-batch/src/main/java/org/sonar/batch/bootstrapper/EnvironmentInformation.java54
-rw-r--r--sonar-batch/src/main/java/org/sonar/batch/bootstrapper/ProjectDefinition.java7
-rw-r--r--sonar-batch/src/main/java/org/sonar/batch/bootstrapper/Reactor.java4
-rw-r--r--sonar-batch/src/main/java/org/sonar/batch/bootstrapper/package-info.java25
5 files changed, 88 insertions, 11 deletions
diff --git a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/BatchPluginRepository.java b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/BatchPluginRepository.java
index af4d177edb3..5ec8ac920ae 100644
--- a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/BatchPluginRepository.java
+++ b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/BatchPluginRepository.java
@@ -37,11 +37,11 @@ import org.sonar.api.Plugin;
import org.sonar.api.batch.AbstractCoverageExtension;
import org.sonar.api.batch.CoverageExtension;
import org.sonar.api.batch.SupportedEnvironment;
-import org.sonar.api.platform.Environment;
import org.sonar.api.resources.Java;
import org.sonar.api.resources.Project;
import org.sonar.api.utils.AnnotationUtils;
import org.sonar.api.utils.SonarException;
+import org.sonar.batch.bootstrapper.EnvironmentInformation;
import org.sonar.core.classloaders.ClassLoadersCollection;
import org.sonar.core.plugin.AbstractPluginRepository;
import org.sonar.core.plugin.JpaPlugin;
@@ -56,12 +56,13 @@ public class BatchPluginRepository extends AbstractPluginRepository {
private ClassLoadersCollection classLoaders;
private ExtensionDownloader extensionDownloader;
- private Environment environment;
+ private EnvironmentInformation environment;
- public BatchPluginRepository(JpaPluginDao dao, ExtensionDownloader extensionDownloader, Environment environment) {
+ public BatchPluginRepository(JpaPluginDao dao, ExtensionDownloader extensionDownloader, EnvironmentInformation environment) {
this.dao = dao;
this.extensionDownloader = extensionDownloader;
this.environment = environment;
+ LOG.info("Execution environment: {} {}", environment.getKey(), environment.getVersion());
}
/**
@@ -133,7 +134,7 @@ public class BatchPluginRepository extends AbstractPluginRepository {
return true;
}
for (String supported : env.value()) {
- if (StringUtils.equalsIgnoreCase(environment.toString(), supported)) {
+ if (StringUtils.equalsIgnoreCase(environment.getKey(), supported)) {
return true;
}
}
diff --git a/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/EnvironmentInformation.java b/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/EnvironmentInformation.java
new file mode 100644
index 00000000000..c3325e1ea96
--- /dev/null
+++ b/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/EnvironmentInformation.java
@@ -0,0 +1,54 @@
+/*
+ * Sonar, open source software quality management tool.
+ * Copyright (C) 2008-2011 SonarSource
+ * mailto:contact AT sonarsource DOT com
+ *
+ * Sonar 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.
+ *
+ * Sonar 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 Sonar; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02
+ */
+package org.sonar.batch.bootstrapper;
+
+import org.sonar.api.BatchComponent;
+
+/**
+ * Describes execution environment.
+ *
+ * @since 2.6
+ */
+public class EnvironmentInformation implements BatchComponent {
+
+ private String key;
+ private String version;
+
+ public EnvironmentInformation(String key, String version) {
+ this.key = key;
+ this.version = version;
+ }
+
+ /**
+ * @return unique key of environment, for example - "maven", "ant"
+ */
+ public String getKey() {
+ return key;
+ }
+
+ /**
+ * @return version of environment, for example Maven can have "2.2.1" or "3.0.2",
+ * but there is no guarantees about format - it's just a string.
+ */
+ public String getVersion() {
+ return version;
+ }
+
+}
diff --git a/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/ProjectDefinition.java b/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/ProjectDefinition.java
index f660f7a83e2..b632feb60ac 100644
--- a/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/ProjectDefinition.java
+++ b/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/ProjectDefinition.java
@@ -19,16 +19,15 @@
*/
package org.sonar.batch.bootstrapper;
-import com.google.common.collect.Lists;
-
import java.io.File;
import java.util.List;
import java.util.Properties;
+import com.google.common.collect.Lists;
+
/**
- * Defines project in a form suitable to bootstrap Sonar batch.
+ * Describes project in a form suitable to bootstrap Sonar batch.
* We assume that project is just a set of configuration properties and directories.
- * This is a part of bootstrap process, so we should take care about backward compatibility.
*
* @since 2.6
*/
diff --git a/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/Reactor.java b/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/Reactor.java
index c2e4472be33..2df674053f9 100644
--- a/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/Reactor.java
+++ b/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/Reactor.java
@@ -19,13 +19,11 @@
*/
package org.sonar.batch.bootstrapper;
-
import java.util.Collections;
import java.util.List;
/**
- * Defines order of projects.
- * This is a part of bootstrap process, so we should take care about backward compatibility.
+ * Describes order of projects.
*
* @since 2.6
*/
diff --git a/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/package-info.java b/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/package-info.java
new file mode 100644
index 00000000000..d9a22ffcdf0
--- /dev/null
+++ b/sonar-batch/src/main/java/org/sonar/batch/bootstrapper/package-info.java
@@ -0,0 +1,25 @@
+/*
+ * Sonar, open source software quality management tool.
+ * Copyright (C) 2008-2011 SonarSource
+ * mailto:contact AT sonarsource DOT com
+ *
+ * Sonar 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.
+ *
+ * Sonar 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 Sonar; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02
+ */
+
+/**
+ * This package is a part of bootstrap process, so we should take care about backward compatibility.
+ */
+package org.sonar.batch.bootstrapper;
+