From 4e3996e3bdd48f3a3cd7bff1439f86c033a681c0 Mon Sep 17 00:00:00 2001 From: Simon Brandhof Date: Thu, 16 Apr 2015 17:51:29 +0200 Subject: [PATCH] Remove coupling of sonar-plugin-api on Guava 10 in order to prepare upgrade to Guava 18 in core codebase --- .../server/platform/ServerComponents.java | 4 +- .../server/plugins/PluginDownloader.java | 2 +- .../batch/bootstrap/GlobalContainer.java | 4 +- .../sonar/batch/bootstrap/ServerClient.java | 7 +- .../qualitygate/QualityGateProvider.java | 2 +- .../repository/DefaultServerIssuesLoader.java | 2 +- .../DefaultServerLineHashesLoaderTest.java | 2 +- .../qualitygate/QualityGateProviderTest.java | 2 +- sonar-core/pom.xml | 7 + .../core/util/DefaultHttpDownloader.java | 343 ++++++++++++++++++ .../java/org/sonar/core/util}/HttpsTrust.java | 2 +- .../core/util/DefaultHttpDownloaderTest.java | 31 +- .../org/sonar/core/util}/HttpsTrustTest.java | 2 +- sonar-plugin-api/pom.xml | 6 - .../sonar/api/batch/DefaultFormulaData.java | 4 +- .../org/sonar/api/batch/ProjectClasspath.java | 6 +- .../org/sonar/api/batch/TimeMachineQuery.java | 16 +- .../batch/bootstrap/ProjectDefinition.java | 7 +- .../java/org/sonar/api/batch/rule/Checks.java | 6 +- .../rule/internal/ActiveRulesBuilder.java | 4 +- .../java/org/sonar/api/config/License.java | 3 +- .../sonar/api/config/PropertyDefinition.java | 13 +- .../sonar/api/config/PropertyDefinitions.java | 9 +- .../api/config/PropertyFieldDefinition.java | 21 +- .../java/org/sonar/api/config/Settings.java | 8 +- .../org/sonar/api/issue/action/Actions.java | 9 +- .../api/issue/internal/DefaultIssue.java | 6 +- .../org/sonar/api/measures/CoreMetrics.java | 4 +- .../api/measures/CoverageMeasuresBuilder.java | 4 +- .../org/sonar/api/profiles/RulesProfile.java | 12 +- .../sonar/api/resources/InputFileUtils.java | 5 +- .../sonar/api/resources/ResourceTypeTree.java | 4 +- .../api/scan/filesystem/FileExclusions.java | 4 +- .../api/scan/filesystem/PathResolver.java | 8 +- .../java/org/sonar/api/server/ws/Request.java | 3 +- .../server/ws/internal/ValidatingRequest.java | 3 +- .../java/org/sonar/api/utils/FieldUtils2.java | 6 +- .../org/sonar/api/utils/HttpDownloader.java | 311 +--------------- .../java/org/sonar/api/utils/UriReader.java | 16 +- .../org/sonar/api/utils/command/Command.java | 6 +- .../api/utils/dag/DirectAcyclicGraph.java | 2 +- .../main/java/org/sonar/api/web/Filter.java | 9 +- .../org/sonar/api/utils/DateUtilsTest.java | 4 +- 43 files changed, 485 insertions(+), 444 deletions(-) create mode 100644 sonar-core/src/main/java/org/sonar/core/util/DefaultHttpDownloader.java rename {sonar-plugin-api/src/main/java/org/sonar/api/utils => sonar-core/src/main/java/org/sonar/core/util}/HttpsTrust.java (99%) rename sonar-plugin-api/src/test/java/org/sonar/api/utils/HttpDownloaderTest.java => sonar-core/src/test/java/org/sonar/core/util/DefaultHttpDownloaderTest.java (81%) rename {sonar-plugin-api/src/test/java/org/sonar/api/utils => sonar-core/src/test/java/org/sonar/core/util}/HttpsTrustTest.java (99%) diff --git a/server/sonar-server/src/main/java/org/sonar/server/platform/ServerComponents.java b/server/sonar-server/src/main/java/org/sonar/server/platform/ServerComponents.java index 7085d2a46a2..796372498fd 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/platform/ServerComponents.java +++ b/server/sonar-server/src/main/java/org/sonar/server/platform/ServerComponents.java @@ -32,7 +32,7 @@ import org.sonar.api.rules.AnnotationRuleParser; import org.sonar.api.rules.XMLRuleParser; import org.sonar.api.server.rule.RulesDefinitionXmlLoader; import org.sonar.api.utils.Durations; -import org.sonar.api.utils.HttpDownloader; +import org.sonar.core.util.DefaultHttpDownloader; import org.sonar.api.utils.System2; import org.sonar.api.utils.UriReader; import org.sonar.api.utils.internal.TempFolderCleaner; @@ -331,7 +331,7 @@ class ServerComponents { ThreadLocalDatabaseSessionFactory.class, new DatabaseSessionProvider(), ServerMetadataPersister.class, - HttpDownloader.class, + DefaultHttpDownloader.class, UriReader.class, ServerIdGenerator.class ); diff --git a/server/sonar-server/src/main/java/org/sonar/server/plugins/PluginDownloader.java b/server/sonar-server/src/main/java/org/sonar/server/plugins/PluginDownloader.java index 18de6b9e09c..295a58a916a 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/plugins/PluginDownloader.java +++ b/server/sonar-server/src/main/java/org/sonar/server/plugins/PluginDownloader.java @@ -22,10 +22,10 @@ package org.sonar.server.plugins; import org.apache.commons.io.FileUtils; import org.apache.commons.lang.StringUtils; import org.picocontainer.Startable; -import org.sonar.api.utils.HttpDownloader; import org.sonar.api.utils.SonarException; import org.sonar.api.utils.log.Logger; import org.sonar.api.utils.log.Loggers; +import org.sonar.api.utils.HttpDownloader; import org.sonar.server.platform.DefaultServerFileSystem; import org.sonar.updatecenter.common.Release; import org.sonar.updatecenter.common.Version; diff --git a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/GlobalContainer.java b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/GlobalContainer.java index bffee518e54..7aaf0f6be32 100644 --- a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/GlobalContainer.java +++ b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/GlobalContainer.java @@ -24,7 +24,7 @@ import org.sonar.api.config.EmailSettings; import org.sonar.api.platform.ComponentContainer; import org.sonar.api.platform.PluginMetadata; import org.sonar.api.utils.Durations; -import org.sonar.api.utils.HttpDownloader; +import org.sonar.core.util.DefaultHttpDownloader; import org.sonar.api.utils.System2; import org.sonar.api.utils.UriReader; import org.sonar.api.utils.internal.TempFolderCleaner; @@ -88,7 +88,7 @@ public class GlobalContainer extends ComponentContainer { DefaultServer.class, new TempFolderProvider(), TempFolderCleaner.class, - HttpDownloader.class, + DefaultHttpDownloader.class, UriReader.class, new FileCacheProvider(), System2.INSTANCE, diff --git a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ServerClient.java b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ServerClient.java index faeef8385d8..91eac2e7ebe 100644 --- a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ServerClient.java +++ b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ServerClient.java @@ -33,8 +33,9 @@ import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.lang.StringUtils; import org.sonar.api.BatchComponent; import org.sonar.api.CoreProperties; -import org.sonar.api.utils.HttpDownloader; +import org.sonar.core.util.DefaultHttpDownloader; import org.sonar.batch.bootstrapper.EnvironmentInformation; +import org.sonar.api.utils.HttpDownloader; import javax.annotation.Nullable; @@ -57,11 +58,11 @@ public class ServerClient implements BatchComponent { private static final String GET = "GET"; private BootstrapProperties props; - private HttpDownloader.BaseHttpDownloader downloader; + private DefaultHttpDownloader.BaseHttpDownloader downloader; public ServerClient(BootstrapProperties settings, EnvironmentInformation env) { this.props = settings; - this.downloader = new HttpDownloader.BaseHttpDownloader(settings.properties(), env.toString()); + this.downloader = new DefaultHttpDownloader.BaseHttpDownloader(settings.properties(), env.toString()); } public String getURL() { diff --git a/sonar-batch/src/main/java/org/sonar/batch/qualitygate/QualityGateProvider.java b/sonar-batch/src/main/java/org/sonar/batch/qualitygate/QualityGateProvider.java index 4ede40d4ed9..83be230b314 100644 --- a/sonar-batch/src/main/java/org/sonar/batch/qualitygate/QualityGateProvider.java +++ b/sonar-batch/src/main/java/org/sonar/batch/qualitygate/QualityGateProvider.java @@ -28,9 +28,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.sonar.api.config.Settings; import org.sonar.api.measures.MetricFinder; -import org.sonar.api.utils.HttpDownloader; import org.sonar.api.utils.MessageException; import org.sonar.batch.bootstrap.ServerClient; +import org.sonar.api.utils.HttpDownloader; import java.net.HttpURLConnection; diff --git a/sonar-batch/src/main/java/org/sonar/batch/repository/DefaultServerIssuesLoader.java b/sonar-batch/src/main/java/org/sonar/batch/repository/DefaultServerIssuesLoader.java index 8f32995522a..8193d3a3ebe 100644 --- a/sonar-batch/src/main/java/org/sonar/batch/repository/DefaultServerIssuesLoader.java +++ b/sonar-batch/src/main/java/org/sonar/batch/repository/DefaultServerIssuesLoader.java @@ -21,9 +21,9 @@ package org.sonar.batch.repository; import com.google.common.base.Function; import com.google.common.io.InputSupplier; -import org.sonar.api.utils.HttpDownloader; import org.sonar.batch.bootstrap.ServerClient; import org.sonar.batch.protocol.input.BatchInput.ServerIssue; +import org.sonar.api.utils.HttpDownloader; import java.io.IOException; import java.io.InputStream; diff --git a/sonar-batch/src/test/java/org/sonar/batch/issue/tracking/DefaultServerLineHashesLoaderTest.java b/sonar-batch/src/test/java/org/sonar/batch/issue/tracking/DefaultServerLineHashesLoaderTest.java index 28d9b251ec9..2986564bbb0 100644 --- a/sonar-batch/src/test/java/org/sonar/batch/issue/tracking/DefaultServerLineHashesLoaderTest.java +++ b/sonar-batch/src/test/java/org/sonar/batch/issue/tracking/DefaultServerLineHashesLoaderTest.java @@ -23,8 +23,8 @@ import org.junit.Before; import org.junit.Rule; import org.junit.Test; import org.junit.rules.ExpectedException; -import org.sonar.api.utils.HttpDownloader; import org.sonar.batch.bootstrap.ServerClient; +import org.sonar.api.utils.HttpDownloader; import java.net.URI; import java.net.URISyntaxException; diff --git a/sonar-batch/src/test/java/org/sonar/batch/qualitygate/QualityGateProviderTest.java b/sonar-batch/src/test/java/org/sonar/batch/qualitygate/QualityGateProviderTest.java index 6c9b252f33d..12a9976207b 100644 --- a/sonar-batch/src/test/java/org/sonar/batch/qualitygate/QualityGateProviderTest.java +++ b/sonar-batch/src/test/java/org/sonar/batch/qualitygate/QualityGateProviderTest.java @@ -26,9 +26,9 @@ import org.mockito.runners.MockitoJUnitRunner; import org.slf4j.Logger; import org.sonar.api.config.Settings; import org.sonar.api.measures.MetricFinder; -import org.sonar.api.utils.HttpDownloader; import org.sonar.api.utils.MessageException; import org.sonar.batch.bootstrap.ServerClient; +import org.sonar.api.utils.HttpDownloader; import java.net.HttpURLConnection; import java.net.URI; diff --git a/sonar-core/pom.xml b/sonar-core/pom.xml index 98cc5cb0017..41ae4b71bff 100644 --- a/sonar-core/pom.xml +++ b/sonar-core/pom.xml @@ -159,6 +159,13 @@ bean-matchers test + + org.simpleframework + simple + 4.1.21 + test + +