⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 certificatedatabean.java

📁 一个免费的CA,基于EJB平台的,老师叫我们测试,现把之共享出来让大家参考
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
    public abstract int getType();    /**     * What type of user the certificate belongs to, ex SecConst.USER_ENDUSER     *     * @param type type     * @ejb.interface-method     */    public abstract void setType(int type);    /**     * Serialnumber formated as BigInteger.toString()     *     * @return serial number     * @ejb.persistence column-name="serialNumber"     * @ejb.interface-method     */    public abstract String getSerialNumber();    /**     * Serialnumber formated as BigInteger.toString()     *     * @param serialNumber serial number     * @ejb.interface-method     */    public abstract void setSerialNumber(String serialNumber);    /**     * Date formated as seconds since 1970 (== Date.getTime())     *     * @return expire date     * @ejb.persistence column-name="expireDate"     * @ejb.interface-method     */    public abstract long getExpireDate();    /**     * Date formated as seconds since 1970 (== Date.getTime())     *     * @param expireDate expire date     * @ejb.interface-method     */    public abstract void setExpireDate(long expireDate);    /**     * Set to date when revocation occured if status== CERT_REVOKED. Format == Date.getTime()     *     * @return revocation date     * @ejb.persistence column-name="revocationDate"     * @ejb.interface-method     */    public abstract long getRevocationDate();    /**     * Set to date when revocation occured if status== CERT_REVOKED. Format == Date.getTime()     *     * @param revocationDate revocation date     * @ejb.interface-method     */    public abstract void setRevocationDate(long revocationDate);    /**     * Set to revocation reason if status== CERT_REVOKED     *     * @return revocation reason     * @ejb.persistence column-name="revocationReason"     * @ejb.interface-method     */    public abstract int getRevocationReason();    /**     * Set to revocation reason if status== CERT_REVOKED     *     * @param revocationReason revocation reason     * @ejb.interface-method     */    public abstract void setRevocationReason(int revocationReason);    /**     * certificate itself     *     * @return base64 encoded certificate     * @ejb.persistence jdbc-type="LONGVARCHAR" column-name="base64Cert"     * @ejb.interface-method     */    public abstract String getBase64Cert();    /**     * certificate itself     *     * @param base64Cert base64 encoded certificate     * @ejb.interface-method     */    public abstract void setBase64Cert(String base64Cert);    /**     * username in database     *     * @return username     * @ejb.persistence column-name="username"     * @ejb.interface-method     */    public abstract String getUsername();    /**     * username must be called 'striped' using StringTools.strip()     *     * @param username username     *     * @see org.ejbca.util.StringTools     * @ejb.interface-method     */    public abstract void setUsername(String username);    //    // Public business methods used to help us manage certificates    //    /**     * certificate itself     *     * @return certificate     * @ejb.interface-method     */    public Certificate getCertificate() {        X509Certificate cert = null;        try {            cert = CertTools.getCertfromByteArray(Base64.decode(getBase64Cert().getBytes()));        } catch (CertificateException ce) {            log.error("Can't decode certificate.", ce);            return null;        }        return cert;    }    /**     * certificate itself     *     * @param incert certificate     * @ejb.interface-method     */    public void setCertificate(Certificate incert) {        try {            String b64Cert = new String(Base64.encode(incert.getEncoded()));            setBase64Cert(b64Cert);            X509Certificate tmpcert = (X509Certificate) incert;            String fp = CertTools.getFingerprintAsString(tmpcert);            setFingerprint(fp);            setSubjectDN(CertTools.getSubjectDN(tmpcert));            setIssuerDN(CertTools.getIssuerDN(tmpcert));            setSerialNumber(tmpcert.getSerialNumber().toString());        } catch (CertificateEncodingException cee) {            log.error("Can't extract DER encoded certificate information.", cee);        }    }    /**     * DN of issuer of certificate     *     * @param dn issuer dn     * @ejb.interface-method     */    public void setIssuer(String dn) {        setIssuerDN(CertTools.stringToBCDNString(dn));    }    /**     * DN of subject in certificate     *     * @param dn subject dn     * @ejb.interface-method     */    public void setSubject(String dn) {        setSubjectDN(CertTools.stringToBCDNString(dn));    }    /**     * expire date of certificate     *     * @param expireDate expire date     * @ejb.interface-method     */    public void setExpireDate(Date expireDate) {        if (expireDate == null) {            setExpireDate(-1L);        } else {            setExpireDate(expireDate.getTime());        }    }    /**     * date the certificate was revoked     *     * @param revocationDate revocation date     * @ejb.interface-method     */    public void setRevocationDate(Date revocationDate) {        if (revocationDate == null) {            setRevocationDate(-1L);        } else {            setRevocationDate(revocationDate.getTime());        }    }    //    // Fields required by Container    //    /**     * Entity Bean holding info about a certficate. Create by sending in the certificate, which     * extracts (from the cert) fingerprint (primary key), subjectDN, issuerDN, serial number,     * expiration date. Status, Type, CAFingerprint, revocationDate and revocationReason are set     * to default values (CERT_UNASSIGNED, USER_INVALID, null, null and     * REVOKATION_REASON_UNSPECIFIED) and should be set using the respective set-methods.     *     * @param incert the (X509)Certificate to be stored in the database.     *     * @return primary key     * @ejb.create-method     */    public CertificateDataPK ejbCreate(Certificate incert)        throws CreateException {        // Exctract all fields to store with the certificate.        X509Certificate tmpcert;        try {            String b64Cert = new String(Base64.encode(incert.getEncoded()));            setBase64Cert(b64Cert);            tmpcert = (X509Certificate) incert;            String fp = CertTools.getFingerprintAsString(tmpcert);            setFingerprint(fp);            // Make sure names are always looking the same            setSubjectDN(CertTools.getSubjectDN(tmpcert));            setIssuerDN(CertTools.getIssuerDN(tmpcert));            log.debug("Creating certdata, subject=" + getSubjectDN() + ", issuer=" + getIssuerDN());            setSerialNumber(tmpcert.getSerialNumber().toString());            // Default values for status and type            setStatus(CERT_UNASSIGNED);            setType(SecConst.USER_INVALID);            setCaFingerprint(null);            setExpireDate(tmpcert.getNotAfter());            setRevocationDate(-1L);            setRevocationReason(RevokedCertInfo.NOT_REVOKED);        } catch (CertificateEncodingException cee) {            log.error("Can't extract DER encoded certificate information.", cee);            // TODO should throw an exception        }        return null;    }    /**     * required method, does nothing     *     * @param incert certificate     */    public void ejbPostCreate(Certificate incert) {        // Do nothing. Required.    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -