/* * Copyright 2003 Federal Chancellery Austria * MOA-SPSS 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.spss.api.impl; import java.util.ArrayList; import java.util.Collections; import java.util.Date; import java.util.List; import at.gv.egovernment.moa.spss.api.xmlverify.SignatureManifestCheckParams; import at.gv.egovernment.moa.spss.api.xmlverify.VerifySignatureInfo; import at.gv.egovernment.moa.spss.api.xmlverify.VerifyXMLSignatureRequest; /** * Default implementation of VerifyXMLSignatureRequest. * * @author Fatemeh Philippi * @version $Id$ */ public class VerifyXMLSignatureRequestImpl implements VerifyXMLSignatureRequest { /** Date and time for signature verification. */ private Date dateTime; /** The signature to be verified. */ private VerifySignatureInfo verifySignatureInfo; /** Supplemental information about the singature. */ private List supplementProfiles; /** Additional parameters for checking the signature manifest. */ private SignatureManifestCheckParams signatureManifestCheckParams; /** Whether to return the hash input data. */ private boolean returnHashInputData; private boolean extendedValidation; /** * The profile ID of the trust profile containing the trusted certificates. */ private String trustProfileId; /** * Sets the date and time for signature verification. * * @param dateTime * The date and time for signature verification. */ public void setDateTime(Date dateTime) { this.dateTime = dateTime; } public Date getDateTime() { return dateTime; } /** * Sets the signature to be verified. * * @param signatureInfo * The signature to be verified. */ public void setSignatureInfo(VerifySignatureInfo signatureInfo) { this.verifySignatureInfo = signatureInfo; } public VerifySignatureInfo getSignatureInfo() { return verifySignatureInfo; } /** * Sets supplemental information about the singature. * * @param supplementProfiles */ public void setSupplementProfiles(List supplementProfiles) { this.supplementProfiles = supplementProfiles != null ? Collections.unmodifiableList(new ArrayList(supplementProfiles)) : null; } public List getSupplementProfiles() { return supplementProfiles; } /** * Sets supplemental information about the singature. * * @param params * Supplemental information about the singature. */ public void setSignatureManifestCheckParams(SignatureManifestCheckParams params) { this.signatureManifestCheckParams = params; } public SignatureManifestCheckParams getSignatureManifestCheckParams() { return signatureManifestCheckParams; } /** * Sets whether to return hash input data. * * @param returnSignedData * Whether to return hash input data. */ public void setReturnHashInputData(boolean returnSignedData) { this.returnHashInputData = returnSignedData; } public boolean getReturnHashInputData() { return returnHashInputData; } /** * Sets the profile ID of trusted certificates. * * @param trustProfileId * The profile ID of trusted certificates. */ public void setTrustProfileId(String trustProfileId) { this.trustProfileId = trustProfileId; } public String getTrustProfileId() { return trustProfileId; } public synchronized void setExtendedValidation(boolean extendedValidation) { this.extendedValidation = extendedValidation; } @Override public boolean getExtendedValidaiton() { return extendedValidation; } }