]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-8100 fix handling of DefaultOrganizationCache in safe-mode
authorSébastien Lesaint <sebastien.lesaint@sonarsource.com>
Wed, 28 Sep 2016 16:29:11 +0000 (18:29 +0200)
committerSébastien Lesaint <sebastien.lesaint@sonarsource.com>
Thu, 29 Sep 2016 06:58:21 +0000 (08:58 +0200)
server/sonar-server/src/main/java/org/sonar/server/organization/NoopDefaultOrganizationCache.java [new file with mode: 0644]
server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevelSafeMode.java

diff --git a/server/sonar-server/src/main/java/org/sonar/server/organization/NoopDefaultOrganizationCache.java b/server/sonar-server/src/main/java/org/sonar/server/organization/NoopDefaultOrganizationCache.java
new file mode 100644 (file)
index 0000000..f9abb81
--- /dev/null
@@ -0,0 +1,37 @@
+/*
+ * SonarQube
+ * Copyright (C) 2009-2016 SonarSource SA
+ * mailto:contact AT sonarsource DOT com
+ *
+ * This program 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.
+ *
+ * This program 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.server.organization;
+
+/**
+ * This implementation of {@link DefaultOrganizationCache} has no effect. It is used when SQ is running in safe mode
+ * (ie. when we are expecting a DB upgrade and we can't assume the tables storing default organization information are
+ * available).
+ */
+public class NoopDefaultOrganizationCache implements DefaultOrganizationCache {
+  @Override
+  public void load() {
+    // do nothing
+  }
+
+  @Override
+  public void unload() {
+    // do nothing
+  }
+}
index 69c2d95c00b3884a0b035cdeff44c362d09f92de..c2e5af4c7cc1b6e793eb9b194b5c2afd81c194e1 100644 (file)
@@ -19,6 +19,7 @@
  */
 package org.sonar.server.platform.platformlevel;
 
+import org.sonar.server.organization.NoopDefaultOrganizationCache;
 import org.sonar.server.platform.ServerImpl;
 import org.sonar.server.platform.ws.DbMigrationStatusAction;
 import org.sonar.server.platform.ws.MigrateDbAction;
@@ -48,6 +49,8 @@ public class PlatformLevelSafeMode extends PlatformLevel {
 
       // WS engine
       WebServiceEngine.class,
-      WebServiceFilter.class);
+      WebServiceFilter.class,
+
+      NoopDefaultOrganizationCache.class);
   }
 }