summaryrefslogtreecommitdiff
path: root/eaaf_core/src/main/java/at/gv/egiz/eaaf/core/impl/data/SloInformationImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'eaaf_core/src/main/java/at/gv/egiz/eaaf/core/impl/data/SloInformationImpl.java')
-rw-r--r--eaaf_core/src/main/java/at/gv/egiz/eaaf/core/impl/data/SloInformationImpl.java232
1 files changed, 232 insertions, 0 deletions
diff --git a/eaaf_core/src/main/java/at/gv/egiz/eaaf/core/impl/data/SloInformationImpl.java b/eaaf_core/src/main/java/at/gv/egiz/eaaf/core/impl/data/SloInformationImpl.java
new file mode 100644
index 00000000..71a2c849
--- /dev/null
+++ b/eaaf_core/src/main/java/at/gv/egiz/eaaf/core/impl/data/SloInformationImpl.java
@@ -0,0 +1,232 @@
+/*
+ * Copyright 2017 Graz University of Technology EAAF-Core Components has been developed in a
+ * cooperation between EGIZ, A-SIT Plus, A-SIT, and Graz University of Technology.
+ *
+ * Licensed under the EUPL, Version 1.2 or - as soon they will be approved by the European
+ * Commission - subsequent versions of the EUPL (the "Licence"); You may not use this work except in
+ * compliance with the Licence. You may obtain a copy of the Licence at:
+ * https://joinup.ec.europa.eu/news/understanding-eupl-v12
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the Licence
+ * is distributed on an "AS IS" basis, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the Licence for the specific language governing permissions and limitations under
+ * the Licence.
+ *
+ * This product combines work with different licenses. See the "NOTICE" text file for details on the
+ * various modules and licenses. The "NOTICE" text file is part of the distribution. Any derivative
+ * works that you distribute must include a readable copy of the "NOTICE" text file.
+*/
+
+package at.gv.egiz.eaaf.core.impl.data;
+
+import java.io.Serializable;
+
+import at.gv.egiz.eaaf.core.api.idp.slo.SloInformationInterface;
+
+/**
+ * Single Log-Out container DAO.
+ *
+ * @author tlenz
+ *
+ */
+public class SloInformationImpl implements SloInformationInterface, Serializable {
+
+ private static final long serialVersionUID = 295577931870512387L;
+ private String sessionIndex = null;
+ private String nameID = null;
+ private String protocolType = null;
+ private String nameIdFormat = null;
+ private String binding = null;
+ private String serviceUrl = null;
+ private String authUrl = null;
+ private String spEntityID = null;
+
+ /**
+ * Create a SLO container.
+ *
+ * @param authUrl IDP EntityId
+ * @param spEntityId SP EntityId
+ * @param sessionId SessionId on protocol-level
+ * @param nameId User's nameId
+ * @param nameIdFormat NameId format
+ * @param protocolType Type of the Auth. protocol
+ */
+ public SloInformationImpl(final String authUrl, final String spEntityId, final String sessionId,
+ final String nameId, final String nameIdFormat, final String protocolType) {
+ this(authUrl, spEntityId, sessionId, nameId, nameIdFormat, protocolType, null,
+ null);
+
+ }
+
+ /**
+ * Create a SLO container.
+ *
+ * @param authUrl IDP EntityId
+ * @param spEntityId SP EntityId
+ * @param sessionId SessionId on protocol-level
+ * @param nameId User's nameId
+ * @param nameIdFormat NameId format
+ * @param protocolType Type of the Auth. protocol
+ * @param sloBinding SLO protocol binding
+ * @param sloLocationUrl SLO end-point on SP
+ */
+ public SloInformationImpl(final String authUrl, final String spEntityId, final String sessionId,
+ final String nameId, final String nameIdFormat, final String protocolType,
+ final String sloBinding, final String sloLocationUrl) {
+ this.sessionIndex = sessionId;
+ this.nameID = nameId;
+ this.nameIdFormat = nameIdFormat;
+ this.protocolType = protocolType;
+ this.spEntityID = spEntityId;
+
+ if (authUrl.endsWith("/")) {
+ this.authUrl = authUrl.substring(0, authUrl.length() - 1);
+ } else {
+ this.authUrl = authUrl;
+ }
+
+ this.binding = sloBinding;
+ this.serviceUrl = sloLocationUrl;
+
+ }
+
+ /**
+ * Get empty SLOContainer DAO.
+ */
+ public SloInformationImpl() {
+
+ }
+
+ /**
+ * Get Service-Provider Id.
+ *
+ * @return the spEntityID
+ */
+ @Override
+ public String getSpEntityID() {
+ return spEntityID;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see at.gv.egovernment.moa.id.data.SLOInformationInterface#getSessionIndex()
+ */
+ @Override
+ public String getSessionIndex() {
+ return sessionIndex;
+
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * at.gv.egovernment.moa.id.data.SLOInformationInterface#getUserNameIdentifier()
+ */
+ @Override
+ public String getUserNameIdentifier() {
+ return nameID;
+
+ }
+
+ /**
+ * Get SessionId.
+ *
+ * @param sessionIndex the sessionIndex to set
+ */
+ @Override
+ public void setSessionIndex(final String sessionIndex) {
+ this.sessionIndex = sessionIndex;
+ }
+
+ /**
+ * Get User's NameId.
+ *
+ * @param nameID the nameID to set
+ */
+ @Override
+ public void setUserNameIdentifier(final String nameID) {
+ this.nameID = nameID;
+ }
+
+ /**
+ * Get authentication protocol identifier.
+ *
+ * @param protocolType the protocolType to set
+ */
+ public void setProtocolType(final String protocolType) {
+ this.protocolType = protocolType;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see at.gv.egovernment.moa.id.data.SLOInformationInterface#getProtocolType()
+ */
+ @Override
+ public String getProtocolType() {
+ return protocolType;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * at.gv.egovernment.moa.id.data.SLOInformationInterface#getUserNameIDFormat()
+ */
+ @Override
+ public String getUserNameIdFormat() {
+ return this.nameIdFormat;
+ }
+
+ /**
+ * Get Format of the NameId.
+ *
+ * @param nameIdFormat the nameIDFormat to set
+ */
+ @Override
+ public void setNameIdFormat(final String nameIdFormat) {
+ this.nameIdFormat = nameIdFormat;
+ }
+
+ /**
+ * Get SLO protocol binding.
+ *
+ * @return the binding
+ */
+ @Override
+ public String getBinding() {
+ return binding;
+ }
+
+ /**
+ * Get SLO service URL.
+ *
+ * @return the serviceURL
+ */
+ @Override
+ public String getServiceUrl() {
+ return serviceUrl;
+ }
+
+ /**
+ * Get the IDP EntityId.
+ *
+ * @return the authURL from requested IDP without ending /
+ */
+ @Override
+ public String getAuthUrl() {
+ return authUrl;
+ }
+
+ /**
+ * Set the SP EntityId.
+ *
+ * @param spEntityID the spEntityID to set
+ */
+ public void setSpEntityID(final String spEntityID) {
+ this.spEntityID = spEntityID;
+ }
+
+}