public CA(HashMap data){ loadData(data); extendedcaservicemap = new HashMap();
public CA(CAInfo cainfo){ data = new HashMap();  this.cainfo = cainfo;  data.put(VALIDITY, new Integer(cainfo.getValidity())); data.put(SIGNEDBY, new Integer(cainfo.getSignedBy())); data.put(DESCRIPTION, cainfo.getDescription()); data.put(REVOKATIONREASON, new Integer(-1)); data.put(CERTIFICATEPROFILEID, new Integer(cainfo.getCertificateProfileId())); setCRLPeriod(cainfo.getCRLPeriod()); setCRLIssueInterval(cainfo.getCRLIssueInterval()); setCRLOverlapTime(cainfo.getCRLOverlapTime()); setCRLPublishers(cainfo.getCRLPublishers()); setFinishUser(cainfo.getFinishUser());   Iterator iter = cainfo.getExtendedCAServiceInfos().iterator(); ArrayList extendedservicetypes = new ArrayList(); while(iter.hasNext()){ ExtendedCAServiceInfo next = (ExtendedCAServiceInfo) iter.next(); if(next instanceof OCSPCAServiceInfo){ setExtendedCAService(new OCSPCAService(next)); extendedservicetypes.add(new Integer(ExtendedCAServiceInfo.TYPE_OCSPEXTENDEDSERVICE)); } if(next instanceof XKMSCAServiceInfo){ setExtendedCAService(new XKMSCAService(next)); extendedservicetypes.add(new Integer(ExtendedCAServiceInfo.TYPE_XKMSEXTENDEDSERVICE)); } if(next instanceof CmsCAServiceInfo){ setExtendedCAService(new CmsCAService(next)); extendedservicetypes.add(new Integer(ExtendedCAServiceInfo.TYPE_CMSEXTENDEDSERVICE)); } } data.put(EXTENDEDCASERVICES, extendedservicetypes); setApprovalSettings(cainfo.getApprovalSettings()); setNumOfRequiredApprovals(cainfo.getNumOfReqApprovals());
    public CA(HashMap data){      loadData(data);      extendedcaservicemap = new HashMap();    }