diff options
Diffstat (limited to 'vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/bindings/MembershipEntity.java')
-rw-r--r-- | vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/bindings/MembershipEntity.java | 47 |
1 files changed, 38 insertions, 9 deletions
diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/bindings/MembershipEntity.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/bindings/MembershipEntity.java index d0672473776..33acf0e1c90 100644 --- a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/bindings/MembershipEntity.java +++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/bindings/MembershipEntity.java @@ -16,17 +16,14 @@ import com.fasterxml.jackson.annotation.JsonProperty; public class MembershipEntity { public final String memberName; public final boolean isMember; - public final String roleName; public final String expiration; @JsonCreator public MembershipEntity(@JsonProperty("memberName") String memberName, @JsonProperty("isMember") boolean isMember, - @JsonProperty("roleName") String roleName, @JsonProperty("expiration") String expiration) { this.memberName = memberName; this.isMember = isMember; - this.roleName = roleName; this.expiration = expiration; } @@ -40,13 +37,45 @@ public class MembershipEntity { return isMember; } - @JsonGetter("roleName") - public String roleName() { - return roleName; - } - @JsonGetter("expiration") public String expiration() { return expiration; } -} + + public static class RoleMembershipEntity extends MembershipEntity { + public final String roleName; + + @JsonCreator + public RoleMembershipEntity(@JsonProperty("memberName") String memberName, + @JsonProperty("isMember") boolean isMember, + @JsonProperty("roleName") String roleName, + @JsonProperty("expiration") String expiration) { + super(memberName, isMember, expiration); + this.roleName = roleName; + } + + @JsonGetter("roleName") + public String roleName() { + return roleName; + } + + } + + public static class GroupMembershipEntity extends MembershipEntity { + public final String groupName; + + @JsonCreator + public GroupMembershipEntity(@JsonProperty("memberName") String memberName, + @JsonProperty("isMember") boolean isMember, + @JsonProperty("groupName") String groupName, + @JsonProperty("expiration") String expiration) { + super(memberName, isMember, expiration); + this.groupName = groupName; + } + + @JsonGetter("groupName") + public String roleName() { + return groupName; + } + } +}
\ No newline at end of file |