Package br.net.woodstock.rockframework.security.cert.impl

Source Code of br.net.woodstock.rockframework.security.cert.impl.BouncyCastleOCSPRequest

package br.net.woodstock.rockframework.security.cert.impl;

import java.io.Serializable;
import java.security.PrivateKey;
import java.security.cert.Certificate;
import java.security.cert.X509Certificate;

import org.bouncycastle.asn1.x500.X500Name;

import br.net.woodstock.rockframework.security.Identity;
import br.net.woodstock.rockframework.security.cert.OCSPRequest;
import br.net.woodstock.rockframework.security.sign.SignatureType;
import br.net.woodstock.rockframework.security.util.BouncyCastleProviderHelper;
import br.net.woodstock.rockframework.utils.ConditionUtils;

public class BouncyCastleOCSPRequest implements Serializable {

  private static final long  serialVersionUID  = -8614467737858481463L;

  private Identity      issuer;

  private SignatureType    signType;

  private byte[]        request;

  public BouncyCastleOCSPRequest(final OCSPRequest request) {
    super();
    this.issuer = request.getIssuer();
    this.signType = request.getSignType();
    this.request = request.getRequest();
  }

  public Identity getIssuer() {
    return this.issuer;
  }

  public void setIssuer(final Identity issuer) {
    this.issuer = issuer;
  }

  public SignatureType getSignType() {
    return this.signType;
  }

  public void setSignType(final SignatureType signType) {
    this.signType = signType;
  }

  public byte[] getRequest() {
    return this.request;
  }

  public void setRequest(final byte[] request) {
    this.request = request;
  }

  // Aux
  public String getSignAlgorithm() {
    return this.getSignType().getAlgorithm();
  }

  public PrivateKey getIssuerPrivateKey() {
    Identity identity = this.getIssuer();
    if (identity != null) {
      return identity.getPrivateKey();
    }
    return null;
  }

  public X509Certificate getIssuerCertificate() {
    Identity identity = this.getIssuer();
    if (identity != null) {
      Certificate[] chain = identity.getChain();
      if (ConditionUtils.isNotEmpty(chain)) {
        return (X509Certificate) chain[0];
      }
    }
    return null;
  }

  public X500Name getIssuerX500Name() {
    Identity identity = this.getIssuer();
    if (identity != null) {
      Certificate[] chain = identity.getChain();
      if (ConditionUtils.isNotEmpty(chain)) {
        X509Certificate certificate = (X509Certificate) chain[0];
        return BouncyCastleProviderHelper.toX500Name(certificate.getIssuerX500Principal());
      }
    }
    return null;
  }

}
TOP

Related Classes of br.net.woodstock.rockframework.security.cert.impl.BouncyCastleOCSPRequest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.