/* * 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.security.cert.X509Certificate; import java.util.Date; import at.gv.egovernment.moa.spss.api.common.SignerInfo; import at.gv.egovernment.moa.spss.api.common.TslInfos; /** * Default implementation of SignerInfo. * * @author Fatemeh Philippi * @version $Id$ */ public class SignerInfoImpl implements SignerInfo { /** The signer certificate. */ private X509Certificate signerCertificate; /** Determines, whether signerCertificate is a qualified * certificate. */ private boolean qualifiedCertificate; /** Determines, whether signerCertificate is from a public * authority. */ private boolean publicAuthority; /** The public authority ID of the signerCertificate. */ private String publicAuthorityID; /** Determines, whether the signature is based on an SSCD */ private boolean sscd; /** Determines, if the SSCD check bases upon on TSL */ private boolean sscdSourceTSL; /** Determines, if the QC check bases upon on TSL */ private boolean qcSourceTSL; /** The certificate issuer country code */ private String issuerCountryCode; private Date signingTime; private TslInfos tslInfos; /** * Sets the signer certificate. * * @param signerCertificate The signer certificate. */ public void setSignerCertificate(X509Certificate signerCertificate) { this.signerCertificate = signerCertificate; } public X509Certificate getSignerCertificate() { return signerCertificate; } /** * Sets, whether the certificate contained in this object is qualified or not. * * @param qualifiedCertificate Is true, if the certificate is * qualified, otherwise false. */ public void setQualifiedCertificate(boolean qualifiedCertificate) { this.qualifiedCertificate = qualifiedCertificate; } public boolean isQualifiedCertificate() { return qualifiedCertificate; } /** * Sets, whether the signature is based on an SSCS or not. * * @param sscd Is true, if the signature is * based on an SSCD, otherwise false. */ public void setSSCD(boolean sscd) { this.sscd = sscd; } public boolean isSSCD() { return sscd; } public void setSSCDSourceTSL(boolean sscdSourceTSL) { this.sscdSourceTSL = sscdSourceTSL; } public String getSSCDSource() { if (sscdSourceTSL) return "TSL"; else return "Certificate"; } public Date getSigningTime() { return signingTime; } public void setSigningTime(Date signingTime) { this.signingTime = signingTime; } public void setQCSourceTSL(boolean qcSourceTSL) { this.qcSourceTSL = qcSourceTSL; } public String getQCSource() { if (this.qcSourceTSL) return "TSL"; else return "Certificate"; } public void setIssuerCountryCode(String issuerCountryCode) { this.issuerCountryCode = issuerCountryCode; } public String getIssuerCountryCode() { return issuerCountryCode; } /** * Sets, whether the certificate contained in this object is an * e-government certificate or not. * * @param publicAuthority Is true, if the certificate is * public authority certificate, otherwise false. */ public void setPublicAuthority(boolean publicAuthority) { this.publicAuthority = publicAuthority; } public boolean isPublicAuthority() { return publicAuthority; } /** * Sets the public authority ID of the signer certificate. * * @param publicAuhtorityID The public authority ID of the signer certificate. */ public void setPublicAuhtorityID(String publicAuhtorityID) { this.publicAuthorityID = publicAuhtorityID; } public String getPublicAuhtorityID() { return publicAuthorityID; } @Override public TslInfos getTslInfos() { return this.tslInfos; } public void setTslInfos(TslInfos tslInfos) { this.tslInfos = tslInfos; } }