summaryrefslogtreecommitdiffstats
path: root/vespa-athenz
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@oath.com>2018-06-20 13:08:35 +0200
committerBjørn Christian Seime <bjorncs@oath.com>2018-06-20 13:15:11 +0200
commitbf74c1a064739c123921a2e85e9427bae7019290 (patch)
tree64e3672f8551e2d81c37fba45014fd91ea60a2d0 /vespa-athenz
parentf262a027cbe5c49974dd13675bbe41d987947460 (diff)
Add roles to AthenzPrincipal
Diffstat (limited to 'vespa-athenz')
-rw-r--r--vespa-athenz/src/main/java/com/yahoo/vespa/athenz/api/AthenzPrincipal.java22
1 files changed, 19 insertions, 3 deletions
diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/api/AthenzPrincipal.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/api/AthenzPrincipal.java
index e96f5bd72d4..2330b1e439f 100644
--- a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/api/AthenzPrincipal.java
+++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/api/AthenzPrincipal.java
@@ -2,9 +2,12 @@
package com.yahoo.vespa.athenz.api;
import java.security.Principal;
+import java.util.List;
import java.util.Objects;
import java.util.Optional;
+import static java.util.Collections.emptyList;
+
/**
* @author bjorncs
*/
@@ -12,15 +15,24 @@ public class AthenzPrincipal implements Principal {
private final AthenzIdentity athenzIdentity;
private final NToken nToken;
+ private final List<AthenzRole> roles;
public AthenzPrincipal(AthenzIdentity athenzIdentity) {
- this(athenzIdentity, null);
+ this(athenzIdentity, null, emptyList());
+ }
+
+ public AthenzPrincipal(AthenzIdentity athenzIdentity, NToken nToken) {
+ this(athenzIdentity, nToken, emptyList());
}
- public AthenzPrincipal(AthenzIdentity athenzIdentity,
- NToken nToken) {
+ public AthenzPrincipal(AthenzIdentity identity, List<AthenzRole> roles) {
+ this(identity, null, roles);
+ }
+
+ private AthenzPrincipal(AthenzIdentity athenzIdentity, NToken nToken, List<AthenzRole> roles) {
this.athenzIdentity = athenzIdentity;
this.nToken = nToken;
+ this.roles = roles;
}
public AthenzIdentity getIdentity() {
@@ -40,6 +52,10 @@ public class AthenzPrincipal implements Principal {
return Optional.ofNullable(nToken);
}
+ public List<AthenzRole> getRoles() {
+ return roles;
+ }
+
@Override
public String toString() {
return "AthenzPrincipal{" +