aboutsummaryrefslogtreecommitdiffstats
path: root/configserver
diff options
context:
space:
mode:
authorHarald Musum <musum@verizonmedia.com>2020-07-08 11:08:44 +0200
committerHarald Musum <musum@verizonmedia.com>2020-07-08 11:08:44 +0200
commit60a1a5b026714c114d8bd37e1821981bb9b966d8 (patch)
treed095bb90c876c59af60bb0549b83549abcb4d41c /configserver
parent2382c0b85d828457ecad27856f71839a0d615372 (diff)
Use a switch statement and cover all statuses
Diffstat (limited to 'configserver')
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java5
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionStateWatcher.java36
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/tenant/TenantRepository.java2
3 files changed, 25 insertions, 18 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java
index 8c3ab795f02..fb2bbf29033 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java
@@ -349,6 +349,11 @@ public class SessionRepository {
remoteSession.deactivate();
}
+ public void delete(RemoteSession remoteSession, Optional<LocalSession> localSession) {
+ localSession.ifPresent(this::deleteLocalSession);
+ remoteSession.deactivate();
+ }
+
void prepare(RemoteSession session) {
session.prepare();
}
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionStateWatcher.java b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionStateWatcher.java
index d7c8928a6eb..57d9f027447 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionStateWatcher.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionStateWatcher.java
@@ -49,22 +49,26 @@ public class SessionStateWatcher {
private void sessionStatusChanged(Status newStatus) {
long sessionId = remoteSession.getSessionId();
-
- if (newStatus.equals(Status.PREPARE)) {
- createLocalSession(sessionId);
- log.log(Level.FINE, remoteSession.logPre() + "Preparing session: " + sessionId);
- sessionRepository.prepare(remoteSession);
- } else if (newStatus.equals(Status.ACTIVATE)) {
- createLocalSession(sessionId);
- sessionRepository.activate(remoteSession);
- } else if (newStatus.equals(Status.DEACTIVATE)) {
- sessionRepository.deactivate(remoteSession);
- } else if (newStatus.equals(Status.DELETE)) {
- sessionRepository.deactivate(remoteSession);
- localSession.ifPresent(session -> {
- log.log(Level.FINE, session.logPre() + "Deleting session " + sessionId);
- sessionRepository.deleteLocalSession(session);
- });
+ switch (newStatus) {
+ case NEW:
+ case NONE:
+ break;
+ case PREPARE:
+ createLocalSession(sessionId);
+ sessionRepository.prepare(remoteSession);
+ break;
+ case ACTIVATE:
+ createLocalSession(sessionId);
+ sessionRepository.activate(remoteSession);
+ break;
+ case DEACTIVATE:
+ sessionRepository.deactivate(remoteSession);
+ break;
+ case DELETE:
+ sessionRepository.delete(remoteSession, localSession);
+ break;
+ default:
+ throw new IllegalStateException("Unknown status " + newStatus);
}
}
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/TenantRepository.java b/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/TenantRepository.java
index e7888f2663b..d6e3c6905fb 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/TenantRepository.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/TenantRepository.java
@@ -123,10 +123,8 @@ public class TenantRepository {
} else {
this.directoryCache = Optional.empty();
}
- log.log(Level.FINE, "Creating all tenants");
bootstrapTenants();
notifyTenantsLoaded();
- log.log(Level.FINE, "All tenants created");
checkForRemovedApplicationsService.scheduleWithFixedDelay(this::removeUnusedApplications,
checkForRemovedApplicationsInterval.getSeconds(),
checkForRemovedApplicationsInterval.getSeconds(),