📄 cainfoview.java
字号:
/************************************************************************* * * * EJBCA: The OpenSource Certificate Authority * * * * This software is free software; you can redistribute it and/or * * modify it under the terms of the GNU Lesser General Public * * License as published by the Free Software Foundation; either * * version 2.1 of the License, or any later version. * * * * See terms of license at gnu.org. * * * *************************************************************************/ package se.anatom.ejbca.webdist.cainterface;import java.util.Collection;import java.util.Iterator;import java.util.HashMap;import java.security.cert.X509Certificate;import se.anatom.ejbca.SecConst;import se.anatom.ejbca.ca.caadmin.CAInfo;import se.anatom.ejbca.ca.caadmin.X509CAInfo;import se.anatom.ejbca.ca.caadmin.extendedcaservices.ExtendedCAServiceInfo;import se.anatom.ejbca.ca.caadmin.extendedcaservices.OCSPCAServiceInfo;import se.anatom.ejbca.webdist.rainterface.RevokedInfoView;import se.anatom.ejbca.webdist.webconfiguration.EjbcaWebBean;/** * A class representing a view of a CA Information view.. * * @version $Id: CAInfoView.java,v 1.8 2004/05/10 04:32:00 herrvendil Exp $ */public class CAInfoView implements java.io.Serializable, Cloneable { // Public constants. public static int NAME = 0; public static int SUBJECTDN = 1; public static int SUBJECTALTNAME = 2; public static int CATYPE = 3; public static int EXPIRETIME = 5; public static int STATUS = 6; public static int DESCRIPTION = 7; public static int CRLPERIOD = 9; public static int CRLPUBLISHERS = 10; public static int OCSP = 12; public static String[] X509CA_CAINFODATATEXTS = {"NAME","SUBJECTDN","SUBJECTALTNAME","CATYPE","", "EXPIRES","STATUS","DESCRIPTION","", "CRLPERIOD", "CRLPUBLISHERS", "", "OCSPSERVICE"}; private String[] cainfodata = null; private String[] cainfodatatexts = null; private CAInfo cainfo = null; private X509Certificate ocspcert = null; public CAInfoView(CAInfo cainfo, EjbcaWebBean ejbcawebbean, HashMap publishersidtonamemap){ this.cainfo = cainfo; if(cainfo instanceof X509CAInfo){ cainfodatatexts = new String[X509CA_CAINFODATATEXTS.length]; cainfodata = new String[X509CA_CAINFODATATEXTS.length]; for(int i=0; i < X509CA_CAINFODATATEXTS.length; i++){ if(X509CA_CAINFODATATEXTS[i].equals("")) cainfodatatexts[i]=" "; else cainfodatatexts[i] = ejbcawebbean.getText(X509CA_CAINFODATATEXTS[i]); } cainfodata[SUBJECTDN] = cainfo.getSubjectDN(); cainfodata[SUBJECTALTNAME] = ((X509CAInfo) cainfo).getSubjectAltName(); cainfodata[NAME] = cainfo.getName(); cainfodata[CATYPE] = ejbcawebbean.getText("X509"); cainfodata[4] = " "; // blank line if(cainfo.getExpireTime() == null) cainfodata[EXPIRETIME] = ""; else cainfodata[EXPIRETIME] = ejbcawebbean.printDateTime(cainfo.getExpireTime()); switch(cainfo.getStatus()){ case SecConst.CA_ACTIVE : cainfodata[STATUS] = ejbcawebbean.getText("ACTIVE"); break; case SecConst.CA_EXPIRED : cainfodata[STATUS] = ejbcawebbean.getText("EXPIRED"); break; case SecConst.CA_OFFLINE : cainfodata[STATUS] = ejbcawebbean.getText("OFFLINE"); break; case SecConst.CA_REVOKED : cainfodata[STATUS] = ejbcawebbean.getText("CAREVOKED") + "<br> " + ejbcawebbean.getText("REASON") + " : <br> " + ejbcawebbean.getText(RevokedInfoView.reasontexts[cainfo.getRevokationReason()]) + "<br> " + ejbcawebbean.getText("REVOKATIONDATE") + "<br> " + ejbcawebbean.printDateTime(cainfo.getRevokationDate()); break; case SecConst.CA_WAITING_CERTIFICATE_RESPONSE : cainfodata[STATUS] = ejbcawebbean.getText("WAITINGFORCERTRESPONSE"); break; } cainfodata[8] = " "; // blank line cainfodata[DESCRIPTION] = cainfo.getDescription(); cainfodata[CRLPERIOD] = Integer.toString(((X509CAInfo) cainfo).getCRLPeriod()); cainfodata[CRLPUBLISHERS] = ""; Iterator iter = ((X509CAInfo) cainfo).getCRLPublishers().iterator(); if(iter.hasNext()) cainfodata[CRLPUBLISHERS] = (String) publishersidtonamemap.get(iter.next()); else cainfodata[CRLPUBLISHERS] = ejbcawebbean.getText("NONE"); while(iter.hasNext()) cainfodata[CRLPUBLISHERS] = cainfodata[CRLPUBLISHERS] + ", " + (String) publishersidtonamemap.get(iter.next()); cainfodata[11] = " "; // blank line boolean active = false; iter = ((X509CAInfo) cainfo).getExtendedCAServiceInfos().iterator(); while(iter.hasNext()){ ExtendedCAServiceInfo next = (ExtendedCAServiceInfo) iter.next(); if(next instanceof OCSPCAServiceInfo){ active = next.getStatus() == ExtendedCAServiceInfo.STATUS_ACTIVE; if(((OCSPCAServiceInfo) next).getOCSPSignerCertificatePath() != null) ocspcert = (X509Certificate) ((OCSPCAServiceInfo) next).getOCSPSignerCertificatePath().get(0); } } if(active){ cainfodata[OCSP] = ejbcawebbean.getText("ACTIVE") + "<br>" + " <a style='cursor:hand;' onClick='viewocspcert()'><u>" + ejbcawebbean.getText("VIEWOCSPCERTIFICATE") + "</u></a>"; }else{ cainfodata[OCSP] = ejbcawebbean.getText("INACTIVE"); } } } public String[] getCAInfoData(){ return cainfodata;} public String[] getCAInfoDataText(){ return cainfodatatexts;} public CAInfo getCAInfo() { return cainfo;} public Collection getCertificateChain() { return cainfo.getCertificateChain(); } public X509Certificate getOCSPSignerCertificate() { return ocspcert;} }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -