/******************************************************************************* * Copyright 2014 Federal Chancellery Austria * MOA-ID has been developed in a cooperation between BRZ, the Federal * Chancellery Austria - ICT staff unit, and Graz University of Technology. * * Licensed under the EUPL, Version 1.1 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: * http://www.osor.eu/eupl/ * * 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. ******************************************************************************/ /* * Copyright 2003 Federal Chancellery Austria * MOA-ID has been developed in a cooperation between BRZ, the Federal * Chancellery Austria - ICT staff unit, and Graz University of Technology. * * Licensed under the EUPL, Version 1.1 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: * http://www.osor.eu/eupl/ * * 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.egovernment.moa.id.auth.data; import java.security.PublicKey; import java.util.List; import org.w3c.dom.Element; /** * Parameters for validating an infobox. * * This interface is used by MOA-ID to provide parameters to an * {link at.gv.egovernment.moa.id.auth.validator.InfoboxValidator * InfoboxValidator}. * * @author Harald Bratko */ public class InfoboxValidatorParamsImpl implements InfoboxValidatorParams { /** * A list of {@link at.gv.egovernment.moa.id.auth.data.InfoboxToken InfoboxToken} objects. * The first token in this list is the one to be validated. Each further token * maybe needed to validate this first token. */ protected List infoboxTokenList_; /** * The ID of the trust profile used for validating certificates. */ protected String trustProfileID_; /** * The locations of schemas that maybe needed for validating infobox tokens. */ protected List schemaLocations_; /** * The URL of the BKU. */ protected String bkuURL_; /** * Specifies whether the current online application is a business or a public application. */ protected boolean businessApplication_; /** * The target parameter. */ protected String target_; /** * The domain identifier (register and number in the register parameter). */ protected String domainIdentifier_; /** * The family name from the identity link. */ protected String familyName_; /** * The given name from the identity link. */ protected String givenName_; /** * The date of birth from the identity link. */ protected String dateOfBirth_; /** * The date of identification value. */ protected String identificationValue_; /** * The identification type. */ protected String identificationType_; /** * The public keys from the identity link. */ protected PublicKey[] publicKeys_; /** * The identity link. */ protected Element identityLink_; /** * Indicates whether source pins (Stammzahlen) must be hidden or not. */ protected boolean hideStammzahl_; /** * Application specific parameters. */ protected Element applicationSpecificParams_; /** * Empty constructor. */ public InfoboxValidatorParamsImpl() { } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getInfoboxTokenList() */ public List getInfoboxTokenList() { return infoboxTokenList_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getTrustProfileID() */ public String getTrustProfileID() { return trustProfileID_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getSchemaLocations() */ public List getSchemaLocations() { return schemaLocations_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getBkuURL() */ public String getBkuURL() { return bkuURL_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getTarget() */ public String getTarget() { return target_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getDomainIdentifier() */ public String getDomainIdentifier() { return domainIdentifier_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getBusinessApplication() */ public boolean getBusinessApplication() { return businessApplication_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getFamilyName() */ public String getFamilyName() { return familyName_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getGivenName() */ public String getGivenName() { return givenName_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getDateOfBirth() */ public String getDateOfBirth() { return dateOfBirth_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getIdentificationValue() */ public String getIdentificationValue() { return identificationValue_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getIdentificationType() */ public String getIdentificationType() { return identificationType_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getPublicKeys() */ public PublicKey[] getPublicKeys() { return publicKeys_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getIdentityLink() */ public Element getIdentityLink() { return identityLink_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getHideStammzahl() */ public boolean getHideStammzahl() { return hideStammzahl_; } /** * @see at.gv.egovernment.moa.id.auth.data.InfoboxValidatorParams#getApplicationSpecificParams() */ public Element getApplicationSpecificParams() { return applicationSpecificParams_; } /** * Sets the application specific parameters. * * @param applicationSpecificParams The application specific parameters to set. */ public void setApplicationSpecificParams(Element applicationSpecificParams) { applicationSpecificParams_ = applicationSpecificParams; } /** * Sets the bku URL. * * @param bkuURL The bku URL to set. */ public void setBkuURL(String bkuURL) { bkuURL_ = bkuURL; } /** * Sets the business application parameter. * * @param businessApplication The business application parameter to set. * (True if the application is a business * application, otherwies false). */ public void setBusinessApplication(boolean businessApplication) { businessApplication_ = businessApplication; } /** * Sets the date of birth. * * @param dateOfBirth The date of birth. */ public void setDateOfBirth(String dateOfBirth) { dateOfBirth_ = dateOfBirth; } /** * Sets the family name. * * @param familyName The family name. */ public void setFamilyName(String familyName) { familyName_ = familyName; } /** * Sets the given name. * * @param givenName The given name. */ public void setGivenName(String givenName) { givenName_ = givenName; } /** * Sets the identification type. * * @param identificationType The identification type. */ public void setIdentificationType(String identificationType) { identificationType_ = identificationType; } /** * Sets the identification value. * * @param identificationValue The identification value. */ public void setIdentificationValue(String identificationValue) { identificationValue_ = identificationValue; } /** * Sets the identity link. * * @param identityLink The identity link. */ public void setIdentityLink(Element identityLink) { identityLink_ = identityLink; } /** * Sets the infobox token to be validated. * * @param infoboxTokenList A list {@link at.gv.egovernment.moa.id.auth.data.InfoboxToken InfoboxToken} * objects. */ public void setInfoboxTokenList(List infoboxTokenList) { infoboxTokenList_ = infoboxTokenList; } /** * Sets the public Keys. * * @param publicKeys The public keys. */ public void setPublicKeys(PublicKey[] publicKeys) { publicKeys_ = publicKeys; } /** * Sets the schema locations. * * @param schemaLocations The schema locations. A list of * {@link Schema} objects. */ public void setSchemaLocations(List schemaLocations) { schemaLocations_ = schemaLocations; } /** * Sets the target. * * @param target The target. */ public void setTarget(String target) { target_ = target; } /** * Sets the domain identifier (register and number in the register parameter) * * @param domainIdentifier the domainIdentifier to set */ public void setDomainIdentifier(String domainIdentifier) { this.domainIdentifier_ = domainIdentifier; } /** * Sets the ID of the trust profile used for validating certificates. * * @param trustProfileID the ID of the trust profile used for validating certificates. */ public void setTrustProfileID(String trustProfileID) { trustProfileID_ = trustProfileID; } /** * Sets the {@link #hideStammzahl_} parameter. This indicates whether source pins * (Stammzahlen) must be hidden or not. * * @param hideStammzahl True if source pins (Stammzahlen) should * be hidden, otherwise false. */ public void setHideStammzahl(boolean hideStammzahl) { hideStammzahl_ = hideStammzahl; } }