/* * 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.api.idp.auth.data; import java.util.Date; import java.util.Map; import java.util.Map.Entry; import java.util.stream.Stream; import at.gv.egiz.eaaf.core.exceptions.EaafStorageException; public interface IAuthProcessDataContainer { /** * Returns the issuing time of the AUTH-Block SAML assertion. * * @return The issuing time of the AUTH-Block SAML assertion. */ Date getIssueInstant(); /** * Returns the issuing time of the AUTH-Block SAML assertion. * *
{@link String} representation uses pattern:
* yyyy-MM-dd'T'HH:mm:ss'Z'
yyyy-MM-dd'T'HH:mm:ss'Z'
to set.
*/
void setIssueInstant(String issueInstant);
/**
* Sets the issuing time of the AUTH-Block SAML assertion.
*
* @param issueInstant The issueInstant to set.
*/
void setIssueInstant(Date issueInstant);
/**
* Indicate if the authentication process is finished.
*
* @return
*/
boolean isAuthenticated();
/**
* Mark the authentication as authenticated, which means that the authenication
* process is completed.
*
* @param authenticated If true, the authentication-process is marked as finished
*/
void setAuthenticated(boolean authenticated);
/**
* Returns the identityLink.
*
* @return IdentityLink
*/
@Deprecated
IIdentityLink getIdentityLink();
/**
* Sets the identityLink.
*
* @param identityLink The identityLink to set
*/
@Deprecated
void setIdentityLink(IIdentityLink identityLink);
/**
* Flag marks the authentication process as new E-ID process.
*
* @return true if E-ID process, otherwise false
*/
boolean isEidProcess();
/**
* Set the flag to make the process as new E-ID process.
*
* @param value true if new E-ID process, otherwise false
*/
void setEidProcess(boolean value);
/**
* Indicate that mandates was used in this auth. process
*
* @return
*/
boolean isMandateUsed();
/**
* Mark that mandates was used in this auth. process
*
* @param useMandates true, if mandates are used
*/
void setUseMandates(boolean useMandates);
/**
* Indicate that the auth. process was performed by a foreigner
*
* @return
*/
boolean isForeigner();
/**
* Mark that the auth. process was done by a foreigner
*
* @param isForeigner true, if citizenn is a foreigner
*/
void setForeigner(boolean isForeigner);
/**
* Indicate that the auth. process was performed by an official representatives
*
* @return is official representatives
*/
boolean isOW();
/**
* Mark that the auth. process was done by an official representatives
*
* @param isOW Mark this data as Organwalter
*
*/
void setOW(boolean isOW);
/**
* eIDAS QAA level.
*
* @return the qAALevel
*/
String getQaaLevel();
/**
* set QAA level in eIDAS form.
*
* @param qaaLevel the qAALevel to set
*/
void setQaaLevel(String qaaLevel);
/**
* Get Timestamp when session was created.
*
* @return the sessionCreated
*/
Date getSessionCreated();
/**
* Get all generic data from session.
*
* @return {@link Map} of generic data in key/value format
*/
Map