summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJon Marius Venstad <venstad@gmail.com>2019-10-01 15:04:28 +0200
committerJon Marius Venstad <venstad@gmail.com>2019-10-01 15:04:28 +0200
commit25812c62c9528122c44abdc369d9355aa090e36c (patch)
treee7f9a2881bf5bdeba7186ae46c5573eee5b3727a
parentd426ec174d9c57a62b68017fe4121f1d7ad7bc79 (diff)
Add untracked files
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/SimplePrincipal.java42
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/user/responses/tenant-with-keys.json27
2 files changed, 69 insertions, 0 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/SimplePrincipal.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/SimplePrincipal.java
new file mode 100644
index 00000000000..11e4552fcb5
--- /dev/null
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/SimplePrincipal.java
@@ -0,0 +1,42 @@
+package com.yahoo.vespa.hosted.controller.api.role;
+
+import java.security.Principal;
+
+/**
+ * A principal wrapper of a single String entry.
+ *
+ * @author jonmv
+ */
+public class SimplePrincipal implements Principal {
+
+ private final String name;
+
+ public SimplePrincipal(String name) {
+ if (name.isBlank())
+ throw new IllegalArgumentException("Name cannot be blank");
+ this.name = name;
+ }
+
+ @Override
+ public String getName() {
+ return name;
+ }
+
+ @Override
+ public String toString() {
+ return name;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ return name.equals(((SimplePrincipal) o).name);
+ }
+
+ @Override
+ public int hashCode() {
+ return name.hashCode();
+ }
+
+}
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/user/responses/tenant-with-keys.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/user/responses/tenant-with-keys.json
new file mode 100644
index 00000000000..5aaa900c3f0
--- /dev/null
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/user/responses/tenant-with-keys.json
@@ -0,0 +1,27 @@
+{
+ "tenant": "my-tenant",
+ "type": "CLOUD",
+ "pemDeployKeys": [
+ {
+ "key": "-----BEGIN PUBLIC KEY-----\n∠( ᐛ 」∠)_\n-----END PUBLIC KEY-----",
+ "application": "my-app"
+ }
+ ],
+ "pemDeveloperKeys": [
+ {
+ "key": "-----BEGIN PUBLIC KEY-----\n∠( ᐛ 」∠)_\n-----END PUBLIC KEY-----",
+ "user": "joe@dev"
+ },
+ {
+ "key": "-----BEGIN PUBLIC KEY-----\nƪ(`▿▿▿▿´ƪ)\n-----END PUBLIC KEY-----",
+ "user": "operator@tenant"
+ }],
+ "applications": [
+ {
+ "tenant":"my-tenant",
+ "application":"my-app",
+ "instance":"default",
+ "url":"http://localhost:8080/application/v4/tenant/my-tenant/application/my-app/instance/default"
+ }
+ ]
+}