package at.gv.egovernment.moa.spss.api.impl;
import java.security.cert.X509Certificate;
import at.gv.egovernment.moa.spss.api.common.SignerInfo;
/**
 * 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;
  /**
  * 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 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;
  }
}