From e428070220de707b5cb797ec47d83fa68a18eec3 Mon Sep 17 00:00:00 2001 From: "lucio.lelii" Date: Fri, 25 Nov 2016 14:11:31 +0000 Subject: [PATCH] git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/Common/authorization-common-library@134801 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../gcube/common/authorization/library/ClientType.java | 6 ++++++ .../common/authorization/library/provider/ClientInfo.java | 4 ++++ .../authorization/library/provider/ContainerInfo.java | 7 ++++++- .../library/provider/ExternalServiceInfo.java | 8 +++++++- .../authorization/library/provider/ServiceInfo.java | 6 ++++++ .../common/authorization/library/provider/UserInfo.java | 7 +++++++ 6 files changed, 36 insertions(+), 2 deletions(-) create mode 100644 src/main/java/org/gcube/common/authorization/library/ClientType.java diff --git a/src/main/java/org/gcube/common/authorization/library/ClientType.java b/src/main/java/org/gcube/common/authorization/library/ClientType.java new file mode 100644 index 0000000..88b86fd --- /dev/null +++ b/src/main/java/org/gcube/common/authorization/library/ClientType.java @@ -0,0 +1,6 @@ +package org.gcube.common.authorization.library; + +public enum ClientType { + + USER, SERVICE, EXTERNALSERVICE, CONTAINER +} diff --git a/src/main/java/org/gcube/common/authorization/library/provider/ClientInfo.java b/src/main/java/org/gcube/common/authorization/library/provider/ClientInfo.java index e2eaaff..f3ea523 100644 --- a/src/main/java/org/gcube/common/authorization/library/provider/ClientInfo.java +++ b/src/main/java/org/gcube/common/authorization/library/provider/ClientInfo.java @@ -8,6 +8,8 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlSeeAlso; +import org.gcube.common.authorization.library.ClientType; + @XmlRootElement @XmlAccessorType(XmlAccessType.FIELD) @XmlSeeAlso(value={UserInfo.class, ServiceInfo.class, ExternalServiceInfo.class, ContainerInfo.class}) @@ -22,4 +24,6 @@ public abstract class ClientInfo implements Serializable{ public abstract List getRoles(); + public abstract ClientType getType(); + } diff --git a/src/main/java/org/gcube/common/authorization/library/provider/ContainerInfo.java b/src/main/java/org/gcube/common/authorization/library/provider/ContainerInfo.java index 6dd1e63..047f0df 100644 --- a/src/main/java/org/gcube/common/authorization/library/provider/ContainerInfo.java +++ b/src/main/java/org/gcube/common/authorization/library/provider/ContainerInfo.java @@ -7,6 +7,8 @@ import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlRootElement; +import org.gcube.common.authorization.library.ClientType; + @XmlRootElement @XmlAccessorType(XmlAccessType.FIELD) public class ContainerInfo extends ClientInfo{ @@ -50,6 +52,9 @@ public class ContainerInfo extends ClientInfo{ return "ContainerInfo [host=" + host + ", port=" + port + "]"; } - + @Override + public ClientType getType() { + return ClientType.CONTAINER; + } } diff --git a/src/main/java/org/gcube/common/authorization/library/provider/ExternalServiceInfo.java b/src/main/java/org/gcube/common/authorization/library/provider/ExternalServiceInfo.java index d2cdb5f..47c1b44 100644 --- a/src/main/java/org/gcube/common/authorization/library/provider/ExternalServiceInfo.java +++ b/src/main/java/org/gcube/common/authorization/library/provider/ExternalServiceInfo.java @@ -7,6 +7,8 @@ import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlRootElement; +import org.gcube.common.authorization.library.ClientType; + @XmlRootElement @XmlAccessorType(XmlAccessType.FIELD) public class ExternalServiceInfo extends ClientInfo{ @@ -43,5 +45,9 @@ public class ExternalServiceInfo extends ClientInfo{ public List getRoles() { return Collections.emptyList(); } - + + @Override + public ClientType getType() { + return ClientType.EXTERNALSERVICE; + } } diff --git a/src/main/java/org/gcube/common/authorization/library/provider/ServiceInfo.java b/src/main/java/org/gcube/common/authorization/library/provider/ServiceInfo.java index aff2847..d157464 100644 --- a/src/main/java/org/gcube/common/authorization/library/provider/ServiceInfo.java +++ b/src/main/java/org/gcube/common/authorization/library/provider/ServiceInfo.java @@ -7,6 +7,8 @@ import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlRootElement; +import org.gcube.common.authorization.library.ClientType; + @XmlRootElement @XmlAccessorType(XmlAccessType.FIELD) public class ServiceInfo extends ClientInfo{ @@ -71,4 +73,8 @@ public class ServiceInfo extends ClientInfo{ return "ServiceInfo [serviceIdentifier=" + serviceIdentifier + "]"; } + @Override + public ClientType getType() { + return ClientType.SERVICE; + } } diff --git a/src/main/java/org/gcube/common/authorization/library/provider/UserInfo.java b/src/main/java/org/gcube/common/authorization/library/provider/UserInfo.java index 180b8e3..aad06a2 100644 --- a/src/main/java/org/gcube/common/authorization/library/provider/UserInfo.java +++ b/src/main/java/org/gcube/common/authorization/library/provider/UserInfo.java @@ -7,6 +7,8 @@ import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlRootElement; +import org.gcube.common.authorization.library.ClientType; + @XmlRootElement @XmlAccessorType(XmlAccessType.FIELD) @@ -75,5 +77,10 @@ public class UserInfo extends ClientInfo { public String toString() { return "UserInfo [clientId=" + clientId + ", roles=" + roles + "]"; } + + @Override + public ClientType getType() { + return ClientType.USER; + } }