From 9c1417ee34fcf0f4da7553baa6f9d6a1657d7157 Mon Sep 17 00:00:00 2001 From: Simon Brandhof Date: Wed, 27 May 2015 12:11:02 +0200 Subject: [PATCH] SONAR-6370 move the remaining extensions out of core plugin --- .../org/sonar/plugins/core/CorePlugin.java | 15 ++------- .../notifications/alerts/package-info.java | 23 -------------- .../plugins/core/sensors/package-info.java | 21 ------------- .../sonar/plugins/core/CorePluginTest.java | 31 ------------------- .../org/sonar/server/event}/NewAlerts.java | 2 +- .../org/sonar/server/event}/package-info.java | 3 +- .../server/metric/CoreCustomMetrics.java | 4 +-- .../sonar/server/metric}/package-info.java | 3 +- .../platformlevel/PlatformLevel4.java | 6 ++++ .../sonar/server/event}/NewAlertsTest.java | 2 +- .../server/metric/CoreCustomMetricsTest.java | 8 ++--- .../batch/bootstrap/BatchComponents.java | 6 ++-- .../core/resource}/DefaultResourceTypes.java | 6 ++-- .../resource}/DefaultResourceTypesTest.java | 5 ++- 14 files changed, 29 insertions(+), 106 deletions(-) delete mode 100644 plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/notifications/alerts/package-info.java delete mode 100644 plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/sensors/package-info.java delete mode 100644 plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/CorePluginTest.java rename {plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/notifications/alerts => server/sonar-server/src/main/java/org/sonar/server/event}/NewAlerts.java (98%) rename {plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/issue => server/sonar-server/src/main/java/org/sonar/server/event}/package-info.java (96%) rename plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/UserManagedMetrics.java => server/sonar-server/src/main/java/org/sonar/server/metric/CoreCustomMetrics.java (95%) rename {plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/security => server/sonar-server/src/main/java/org/sonar/server/metric}/package-info.java (95%) rename {plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/notifications/alerts => server/sonar-server/src/test/java/org/sonar/server/event}/NewAlertsTest.java (98%) rename plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/UserManagedMetricsTest.java => server/sonar-server/src/test/java/org/sonar/server/metric/CoreCustomMetricsTest.java (86%) rename {plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core => sonar-core/src/main/java/org/sonar/core/resource}/DefaultResourceTypes.java (98%) rename {plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core => sonar-core/src/test/java/org/sonar/core/resource}/DefaultResourceTypesTest.java (98%) diff --git a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/CorePlugin.java b/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/CorePlugin.java index cd0b8687a3c..289cb0a9ccd 100644 --- a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/CorePlugin.java +++ b/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/CorePlugin.java @@ -19,14 +19,13 @@ */ package org.sonar.plugins.core; -import com.google.common.collect.ImmutableList; +import java.util.Collections; import java.util.List; import org.sonar.api.CoreProperties; import org.sonar.api.Properties; import org.sonar.api.Property; import org.sonar.api.PropertyType; import org.sonar.api.SonarPlugin; -import org.sonar.plugins.core.notifications.alerts.NewAlerts; @Properties({ @Property( @@ -190,17 +189,7 @@ public final class CorePlugin extends SonarPlugin { @SuppressWarnings("rawtypes") @Override public List getExtensions() { - ImmutableList.Builder extensions = ImmutableList.builder(); - - extensions.add( - DefaultResourceTypes.class, - UserManagedMetrics.class, - - // Notify alerts on my favourite projects - NewAlerts.class, - NewAlerts.newMetadata()); - - return extensions.build(); + return Collections.emptyList(); } } diff --git a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/notifications/alerts/package-info.java b/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/notifications/alerts/package-info.java deleted file mode 100644 index 5e28de8ee2c..00000000000 --- a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/notifications/alerts/package-info.java +++ /dev/null @@ -1,23 +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. - */ -@ParametersAreNonnullByDefault -package org.sonar.plugins.core.notifications.alerts; - -import javax.annotation.ParametersAreNonnullByDefault; diff --git a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/sensors/package-info.java b/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/sensors/package-info.java deleted file mode 100644 index 145b58bdc95..00000000000 --- a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/sensors/package-info.java +++ /dev/null @@ -1,21 +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. - */ -@javax.annotation.ParametersAreNonnullByDefault -package org.sonar.plugins.core.sensors; diff --git a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/CorePluginTest.java b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/CorePluginTest.java deleted file mode 100644 index f21fb3bbaca..00000000000 --- a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/CorePluginTest.java +++ /dev/null @@ -1,31 +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.plugins.core; - -import org.junit.Test; - -import static org.assertj.core.api.Assertions.assertThat; - -public class CorePluginTest { - @Test - public void should_define_extensions() { - assertThat(new CorePlugin().getExtensions().size()).isGreaterThan(2); - } -} diff --git a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/notifications/alerts/NewAlerts.java b/server/sonar-server/src/main/java/org/sonar/server/event/NewAlerts.java similarity index 98% rename from plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/notifications/alerts/NewAlerts.java rename to server/sonar-server/src/main/java/org/sonar/server/event/NewAlerts.java index b6c4bd93d1a..cf4c219e848 100644 --- a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/notifications/alerts/NewAlerts.java +++ b/server/sonar-server/src/main/java/org/sonar/server/event/NewAlerts.java @@ -17,7 +17,7 @@ * 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.plugins.core.notifications.alerts; +package org.sonar.server.event; import com.google.common.collect.Multimap; import org.sonar.api.notifications.*; diff --git a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/issue/package-info.java b/server/sonar-server/src/main/java/org/sonar/server/event/package-info.java similarity index 96% rename from plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/issue/package-info.java rename to server/sonar-server/src/main/java/org/sonar/server/event/package-info.java index 3fd527aef96..0bc35a2f8f5 100644 --- a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/issue/package-info.java +++ b/server/sonar-server/src/main/java/org/sonar/server/event/package-info.java @@ -17,7 +17,8 @@ * along with this program; if not, write to the Free Software Foundation, * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + @ParametersAreNonnullByDefault -package org.sonar.plugins.core.issue; +package org.sonar.server.event; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/UserManagedMetrics.java b/server/sonar-server/src/main/java/org/sonar/server/metric/CoreCustomMetrics.java similarity index 95% rename from plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/UserManagedMetrics.java rename to server/sonar-server/src/main/java/org/sonar/server/metric/CoreCustomMetrics.java index 4014e515c44..8d600ea8583 100644 --- a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/UserManagedMetrics.java +++ b/server/sonar-server/src/main/java/org/sonar/server/metric/CoreCustomMetrics.java @@ -17,7 +17,7 @@ * 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.plugins.core; +package org.sonar.server.metric; import com.google.common.collect.ImmutableList; import org.sonar.api.measures.Metric; @@ -25,7 +25,7 @@ import org.sonar.api.measures.Metrics; import java.util.List; -public final class UserManagedMetrics implements Metrics { +public final class CoreCustomMetrics implements Metrics { private static final String DOMAIN = "Management"; @Override diff --git a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/security/package-info.java b/server/sonar-server/src/main/java/org/sonar/server/metric/package-info.java similarity index 95% rename from plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/security/package-info.java rename to server/sonar-server/src/main/java/org/sonar/server/metric/package-info.java index df9ccea5073..820edea547b 100644 --- a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/security/package-info.java +++ b/server/sonar-server/src/main/java/org/sonar/server/metric/package-info.java @@ -17,7 +17,8 @@ * along with this program; if not, write to the Free Software Foundation, * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + @ParametersAreNonnullByDefault -package org.sonar.plugins.core.security; +package org.sonar.server.metric; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel4.java b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel4.java index 59f0cc900fc..847b5234a22 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel4.java +++ b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel4.java @@ -44,6 +44,7 @@ import org.sonar.core.qualitygate.db.ProjectQgateAssociationDao; import org.sonar.core.qualitygate.db.QualityGateConditionDao; import org.sonar.core.qualitygate.db.QualityGateDao; import org.sonar.core.resource.DefaultResourcePermissions; +import org.sonar.core.resource.DefaultResourceTypes; import org.sonar.core.timemachine.Periods; import org.sonar.core.user.DefaultUserFinder; import org.sonar.core.user.HibernateUserFinder; @@ -122,6 +123,7 @@ import org.sonar.server.duplication.ws.DuplicationsParser; import org.sonar.server.duplication.ws.DuplicationsWs; import org.sonar.server.es.IndexCreator; import org.sonar.server.es.IndexDefinitions; +import org.sonar.server.event.NewAlerts; import org.sonar.server.issue.ActionService; import org.sonar.server.issue.AddTagsAction; import org.sonar.server.issue.AssignAction; @@ -166,6 +168,7 @@ import org.sonar.server.measure.template.MyFavouritesFilter; import org.sonar.server.measure.template.ProjectFilter; import org.sonar.server.measure.ws.ManualMeasuresWs; import org.sonar.server.measure.ws.TimeMachineWs; +import org.sonar.server.metric.CoreCustomMetrics; import org.sonar.server.metric.ws.MetricsWs; import org.sonar.server.notifications.NotificationCenter; import org.sonar.server.notifications.NotificationService; @@ -340,6 +343,7 @@ public class PlatformLevel4 extends PlatformLevel { DistributionAreaChart.class, Views.class, ResourceTypes.class, + DefaultResourceTypes.class, SettingsChangeNotifier.class, PageDecorations.class, DefaultResourcePermissions.class, @@ -488,6 +492,7 @@ public class PlatformLevel4 extends PlatformLevel { MeasureFilterEngine.class, ProjectFilter.class, MyFavouritesFilter.class, + CoreCustomMetrics.class, DefaultMetricFinder.class, ServerLifecycleNotifier.class, TimeMachineWs.class, @@ -579,6 +584,7 @@ public class PlatformLevel4 extends PlatformLevel { org.sonar.server.component.ws.AppAction.class, org.sonar.server.component.ws.SearchAction.class, EventsWs.class, + NewAlerts.class, ComponentCleanerService.class, ProvisionedAction.class, GhostsAction.class, diff --git a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/notifications/alerts/NewAlertsTest.java b/server/sonar-server/src/test/java/org/sonar/server/event/NewAlertsTest.java similarity index 98% rename from plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/notifications/alerts/NewAlertsTest.java rename to server/sonar-server/src/test/java/org/sonar/server/event/NewAlertsTest.java index 6a65353af0a..49bb6f7e6f0 100644 --- a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/notifications/alerts/NewAlertsTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/event/NewAlertsTest.java @@ -17,7 +17,7 @@ * 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.plugins.core.notifications.alerts; +package org.sonar.server.event; import com.google.common.collect.HashMultimap; import com.google.common.collect.Multimap; diff --git a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/UserManagedMetricsTest.java b/server/sonar-server/src/test/java/org/sonar/server/metric/CoreCustomMetricsTest.java similarity index 86% rename from plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/UserManagedMetricsTest.java rename to server/sonar-server/src/test/java/org/sonar/server/metric/CoreCustomMetricsTest.java index 97a9e218b74..9871f918b33 100644 --- a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/UserManagedMetricsTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/metric/CoreCustomMetricsTest.java @@ -17,7 +17,7 @@ * 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.plugins.core; +package org.sonar.server.metric; import org.junit.Test; import org.sonar.api.measures.Metric; @@ -26,12 +26,12 @@ import java.util.List; import static org.assertj.core.api.Assertions.assertThat; -public class UserManagedMetricsTest { +public class CoreCustomMetricsTest { @Test public void checkDefinitions() { - UserManagedMetrics userManagedMetrics = new UserManagedMetrics(); - List metrics = userManagedMetrics.getMetrics(); + CoreCustomMetrics coreCustomMetrics = new CoreCustomMetrics(); + List metrics = coreCustomMetrics.getMetrics(); assertThat(metrics.size()).isGreaterThan(2); for (Metric metric : metrics) { assertThat(metric.getUserManaged()).isTrue(); diff --git a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/BatchComponents.java b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/BatchComponents.java index ba42319b7bd..f679ae3f8ce 100644 --- a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/BatchComponents.java +++ b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/BatchComponents.java @@ -75,6 +75,7 @@ import org.sonar.batch.source.CodeColorizerSensor; import org.sonar.batch.source.LinesSensor; import org.sonar.core.config.CorePropertyDefinitions; import org.sonar.core.notification.DefaultNotificationManager; +import org.sonar.core.resource.DefaultResourceTypes; public class BatchComponents { private BatchComponents() { @@ -83,6 +84,8 @@ public class BatchComponents { public static Collection all(DefaultAnalysisMode analysisMode) { List components = Lists.newArrayList( + DefaultResourceTypes.class, + // Maven MavenProjectBootstrapper.class, MavenProjectConverter.class, MavenProjectBuilder.class, @@ -104,8 +107,6 @@ public class BatchComponents { SourceProvider.class, RuleNameProvider.class, - QualityGateVerifier.class, - // language LanguageDistributionDecorator.class, @@ -120,6 +121,7 @@ public class BatchComponents { // Quality Gate GenerateQualityGateEvents.class, + QualityGateVerifier.class, // Issue tracking IssueTrackingDecorator.class, diff --git a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/DefaultResourceTypes.java b/sonar-core/src/main/java/org/sonar/core/resource/DefaultResourceTypes.java similarity index 98% rename from plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/DefaultResourceTypes.java rename to sonar-core/src/main/java/org/sonar/core/resource/DefaultResourceTypes.java index dcb0f91f6e0..76e88053609 100644 --- a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/DefaultResourceTypes.java +++ b/sonar-core/src/main/java/org/sonar/core/resource/DefaultResourceTypes.java @@ -17,15 +17,15 @@ * 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.plugins.core; +package org.sonar.core.resource; -import org.sonar.api.batch.BatchSide; import org.sonar.api.ExtensionProvider; -import org.sonar.api.server.ServerSide; +import org.sonar.api.batch.BatchSide; import org.sonar.api.batch.InstantiationStrategy; import org.sonar.api.resources.Qualifiers; import org.sonar.api.resources.ResourceType; import org.sonar.api.resources.ResourceTypeTree; +import org.sonar.api.server.ServerSide; @BatchSide @ServerSide diff --git a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/DefaultResourceTypesTest.java b/sonar-core/src/test/java/org/sonar/core/resource/DefaultResourceTypesTest.java similarity index 98% rename from plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/DefaultResourceTypesTest.java rename to sonar-core/src/test/java/org/sonar/core/resource/DefaultResourceTypesTest.java index 55817f9baeb..ed418b96709 100644 --- a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/DefaultResourceTypesTest.java +++ b/sonar-core/src/test/java/org/sonar/core/resource/DefaultResourceTypesTest.java @@ -17,12 +17,11 @@ * 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.plugins.core; - -import org.sonar.api.resources.ResourceType; +package org.sonar.core.resource; import org.junit.Test; import org.sonar.api.resources.Qualifiers; +import org.sonar.api.resources.ResourceType; import org.sonar.api.resources.ResourceTypeTree; import static org.assertj.core.api.Assertions.assertThat; -- 2.39.5