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

📄 hardtokendatabean.java

📁 一个免费的CA,基于EJB平台的,老师叫我们测试,现把之共享出来让大家参考
💻 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 org.ejbca.core.ejb.hardtoken;import javax.ejb.CreateException;import java.util.HashMap;import java.util.Date;import org.apache.log4j.Logger;import org.ejbca.core.ejb.BaseEntityBean;import org.ejbca.core.model.SecConst;import org.ejbca.core.model.hardtoken.types.*;import org.ejbca.util.StringTools;/** * Entity bean should not be used directly, use though Session beans. * * Entity Bean representing a hard token in the ra. * Information stored: * <pre> *  tokenSN (Primary key) *  cTime (createtime) *  username (username) *  mTime (modifytime) *  tokenType  (tokentype) *  significantissuerdn (significantissuerdn), the CA the toke should belong to. *  data (Data saved concerning the hard token) * </pre> * * * @ejb.bean *	 xxxxgenerate="false" *   description="This enterprise bean entity represents a hard token with accompanying data" *   display-name="HardTokenDataEB" *   name="HardTokenData" *   jndi-name="HardTokenData" *   view-type="local" *   type="CMP" *   reentrant="False" *   cmp-version="2.x" *   transaction-type="Container" *   schema="HardTokenDataBean" *   primkey-field="tokenSN" * * @ejb.pk generate="false" *   class="java.lang.String" * * @ejb.persistence table-name = "HardTokenData" *  * @ejb.home *   generate="local" *   local-extends="javax.ejb.EJBLocalHome" *   local-class="org.ejbca.core.ejb.hardtoken.HardTokenDataLocalHome" * * @ejb.interface *   generate="local" *   local-extends="javax.ejb.EJBLocalObject" *   local-class="org.ejbca.core.ejb.hardtoken.HardTokenDataLocal" * * @ejb.finder *   description="findByUsername" *   signature="Collection findByUsername(java.lang.String username)" *   query="SELECT OBJECT(a) from HardTokenDataBean a WHERE a.username=?1" * * @ejb.transaction type="Required" * * @jonas.jdbc-mapping *   jndi-name="${datasource.jndi-name}" */public abstract class HardTokenDataBean extends BaseEntityBean {    private static final Logger log = Logger.getLogger(HardTokenIssuerDataBean.class);    /**     * @ejb.pk-field     * @ejb.persistence column-name="tokenSN"     * @ejb.interface-method view-type="local"     */    public abstract String getTokenSN();    /**     */    public abstract void setTokenSN(String tokensn);    /**     * @ejb.persistence column-name="username"     * @ejb.interface-method view-type="local"     */    public abstract String getUsername();    /**     * username must be called 'striped' using StringTools.strip()     * @see org.ejbca.util.StringTools     * @ejb.interface-method view-type="local"     */    public abstract void setUsername(String username);    /**     * @ejb.persistence column-name="cTime"     */    public abstract long getCtime();    /**     */    public abstract void setCtime(long createtime);    /**     * @ejb.persistence column-name="mTime"     */    public abstract long getMtime();    /**     */    public abstract void setMtime(long modifytime);    /**     * @ejb.persistence column-name="tokenType"     * @ejb.interface-method view-type="local"     */    public abstract int getTokenType();    /**     * @ejb.interface-method view-type="local"     */    public abstract void setTokenType(int tokentype);    /**     * @ejb.persistence column-name="significantIssuerDN"     * @ejb.interface-method view-type="local"     */    public abstract String getSignificantIssuerDN();    /**     * @ejb.interface-method view-type="local"     */    public abstract void setSignificantIssuerDN(String significantissuerdn);    /**     * @ejb.persistence column-name="data"     * @weblogic.ora.columntyp@     */    public abstract HashMap getData();    /**     */    public abstract void setData(HashMap data);    /**     * @ejb.interface-method view-type="local"     */    public Date getCreateTime(){ return new Date(getCtime()); }    /**     * @ejb.interface-method view-type="local"     */    public void setCreateTime(Date createtime){ setCtime(createtime.getTime()); }    /**     * @ejb.interface-method view-type="local"     */    public Date getModifyTime(){ return new Date(getCtime()); }    /**     * @ejb.interface-method view-type="local"     */    public void setModifyTime(Date modifytime){ setMtime(modifytime.getTime()); }    /**     * Method that returns the hard token issuer data and updates it if nessesary.     * @ejb.interface-method view-type="local"     */    public HardToken getHardToken(){      HardToken returnval = null;      HashMap data = getData();      int tokentype = ((Integer) data.get(HardToken.TOKENTYPE)).intValue();      switch(tokentype){          case SecConst.TOKEN_SWEDISHEID :      	     returnval = new SwedishEIDHardToken();      	     break;          case SecConst.TOKEN_ENHANCEDEID :      	     returnval = new EnhancedEIDHardToken();      	     break;          case SecConst.TOKEN_TURKISHEID :       	     returnval = new TurkishEIDHardToken();       	     break;          case SecConst.TOKEN_EID :    // Left for backward compability             returnval = new EIDHardToken();             break;          default:             returnval = new EIDHardToken();             break;      }      returnval.loadData(data);      return returnval;    }    /**     * Method that saves the hard token issuer data to database.     * @ejb.interface-method view-type="local"     */    public void setHardToken(HardToken tokendata){       setData((HashMap) tokendata.saveData());    }    //    // Fields required by Container    //    /**     * Entity Bean holding data of a ahrd token issuer.     *     * @return null     * @ejb.create-method view-type="local"	 */    public String ejbCreate(String tokensn, String username, Date createtime, Date modifytime, int tokentype, String significantissuerdn, HardToken tokendata) throws CreateException {        setTokenSN(tokensn);        setUsername(StringTools.strip(username));        setCtime(createtime.getTime());        setMtime(modifytime.getTime());        setTokenType(tokentype);        setSignificantIssuerDN(significantissuerdn);        setHardToken(tokendata);        log.debug("Created Hard Token "+ tokensn );        return tokensn;    }    public void ejbPostCreate(String tokensn, String username, Date createtime, Date modifytime, int tokentype, String significantissuerdn, HardToken tokendata) {        // Do nothing. Required.    }}

⌨️ 快捷键说明

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