summaryrefslogtreecommitdiffstats
path: root/controller-api
diff options
context:
space:
mode:
authorArnstein Ressem <aressem@gmail.com>2017-09-12 21:03:12 +0200
committerGitHub <noreply@github.com>2017-09-12 21:03:12 +0200
commit0f32c7c004e32a98d3b24047edefb017aa4e83fd (patch)
tree86c1837db892d98a6404ebee63dac8107f06d5f4 /controller-api
parent3ca4ca6f6f745f4824f371c2096e298689be31d3 (diff)
Revert "Remove ZMS/Athens client without principal"
Diffstat (limited to 'controller-api')
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/Athens.java1
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/UnauthorizedZmsClient.java23
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/ZmsClientFactory.java2
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/mock/AthensMock.java8
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/mock/ZmsClientFactoryMock.java6
5 files changed, 40 insertions, 0 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/Athens.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/Athens.java
index 0635fb850b7..c1f72fa4370 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/Athens.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/Athens.java
@@ -17,6 +17,7 @@ public interface Athens {
AthensPrincipal principalFrom(UserId userId);
NTokenValidator validator();
NToken nTokenFrom(String rawToken);
+ UnauthorizedZmsClient unauthorizedZmsClient();
ZmsClientFactory zmsClientFactory();
AthensDomain screwdriverDomain();
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/UnauthorizedZmsClient.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/UnauthorizedZmsClient.java
new file mode 100644
index 00000000000..d1996bdbd45
--- /dev/null
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/UnauthorizedZmsClient.java
@@ -0,0 +1,23 @@
+// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+package com.yahoo.vespa.hosted.controller.api.integration.athens;
+
+import com.yahoo.vespa.hosted.controller.api.identifiers.AthensDomain;
+
+import java.util.List;
+
+/**
+ * @author gv
+ */
+public class UnauthorizedZmsClient {
+
+ private final ZmsClient client;
+
+ public UnauthorizedZmsClient(ZmsClientFactory zmsClientFactory) {
+ client = zmsClientFactory.createClientWithoutPrincipal();
+ }
+
+ public List<AthensDomain> getDomainList(String prefix) {
+ return client.getDomainList(prefix);
+ }
+
+}
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/ZmsClientFactory.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/ZmsClientFactory.java
index e00f3ce2f64..24a2d67ebf6 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/ZmsClientFactory.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/ZmsClientFactory.java
@@ -8,4 +8,6 @@ public interface ZmsClientFactory {
ZmsClient createClientWithServicePrincipal();
ZmsClient createClientWithAuthorizedServiceToken(NToken authorizedServiceToken);
+
+ ZmsClient createClientWithoutPrincipal();
}
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/mock/AthensMock.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/mock/AthensMock.java
index 8bed95bfcd4..a993c6e3da3 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/mock/AthensMock.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/mock/AthensMock.java
@@ -11,6 +11,7 @@ import com.yahoo.vespa.hosted.controller.api.integration.athens.AthensPrincipal;
import com.yahoo.vespa.hosted.controller.api.integration.athens.InvalidTokenException;
import com.yahoo.vespa.hosted.controller.api.integration.athens.NToken;
import com.yahoo.vespa.hosted.controller.api.integration.athens.NTokenValidator;
+import com.yahoo.vespa.hosted.controller.api.integration.athens.UnauthorizedZmsClient;
import com.yahoo.vespa.hosted.controller.api.integration.athens.ZmsClientFactory;
/**
@@ -22,10 +23,12 @@ public class AthensMock extends AbstractComponent implements Athens {
private static final AthensDomain screwdriverDomain = new AthensDomain("screwdriver-domain");
private final ZmsClientFactory zmsClientFactory;
+ private final UnauthorizedZmsClient unauthorizedZmsClient;
private final NTokenValidator nTokenValidator;
public AthensMock(AthensDbMock athensDb, NTokenValidator nTokenValidator) {
this.zmsClientFactory = new ZmsClientFactoryMock(athensDb);
+ this.unauthorizedZmsClient = new UnauthorizedZmsClient(zmsClientFactory);
this.nTokenValidator = nTokenValidator;
}
@@ -64,6 +67,11 @@ public class AthensMock extends AbstractComponent implements Athens {
}
@Override
+ public UnauthorizedZmsClient unauthorizedZmsClient() {
+ return unauthorizedZmsClient;
+ }
+
+ @Override
public ZmsClientFactory zmsClientFactory() {
return zmsClientFactory;
}
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/mock/ZmsClientFactoryMock.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/mock/ZmsClientFactoryMock.java
index 8bc8b29fb4c..73d971a27fe 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/mock/ZmsClientFactoryMock.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athens/mock/ZmsClientFactoryMock.java
@@ -42,6 +42,12 @@ public class ZmsClientFactoryMock extends AbstractComponent implements ZmsClient
return new ZmsClientMock(athens);
}
+ @Override
+ public ZmsClient createClientWithoutPrincipal() {
+ log("createClientWithoutPrincipal()");
+ return new ZmsClientMock(athens);
+ }
+
private static void log(String format, Object... args) {
log.log(Level.INFO, String.format(format, args));
}