workflowejbhandle.java

来自「公司自己开发的工作流引擎」· Java 代码 · 共 105 行

JAVA
105
字号
package cn.com.iaspec.workflow.helper;

import javax.ejb.*;
import javax.naming.*;
import javax.rmi.*;
import cn.com.iaspec.workflow.engine.ejb.*;
import cn.com.iaspec.workflow.manage.ejb.*;
import cn.com.iaspec.workflow.organize.ejb.*;
import cn.com.iaspec.workflow.privilege.ejb.*;
import cn.com.iaspec.workflow.sysmanage.ejb.SysManageEJBHome;
import cn.com.iaspec.workflow.sysmanage.ejb.SysManageEJB;
import cn.com.iaspec.workflow.extbusiness.task.ejb.TaskEJB;
import cn.com.iaspec.workflow.extbusiness.task.ejb.TaskEJBHome;

/**
 *
 * <p>Title:取得工作流接口 </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2005</p>
 * <p>Company: IASPEC Technologies</p>
 * @author xiesonglin
 * @version 1.0
 */
public class WorkflowEJBHandle{
  private static EngineEJBHome engineHome;
  private static PrivilegeEJBHome privilegeHome;
  private static OrganizationInfoEJBHome organizationInfoEJBHome;
  private static PurviewManageEJBHome purviewManageEJBHome;
  private static SysManageEJBHome sysManageEJBHome;
  private static TaskEJBHome taskEJBHome;

  public WorkflowEJBHandle(){
  }

  public EJBHome getRemoteHome(String jndiHomeName,Class className)
      throws Exception{
    EJBHome home=null;
    //初始化上下文
    Context ctx=new InitialContext();
    Object objref=ctx.lookup(jndiHomeName);
    Object obj=PortableRemoteObject.narrow(objref,className);
    home=(EJBHome)obj;
    return home;
  }

  public EngineEJB getEngineEJB()
      throws Exception{
    if(engineHome==null){
      engineHome=(EngineEJBHome)getRemoteHome("EngineEJB",EngineEJBHome.class);
    }
    EngineEJB ejb=engineHome.create();
    return ejb;
  }

  public PrivilegeEJB getPrivileEJB()
      throws Exception{
    if(privilegeHome==null){
      privilegeHome=(PrivilegeEJBHome)getRemoteHome("PrivilegeEJB",
          PrivilegeEJBHome.class);
    }
    PrivilegeEJB ejb=privilegeHome.create();
    return ejb;
  }

  public OrganizationInfoEJB getOrganizationInfoEJB()
      throws Exception{
    if(organizationInfoEJBHome==null){
      organizationInfoEJBHome=(OrganizationInfoEJBHome)getRemoteHome(
          "OrganizationInfoEJB",OrganizationInfoEJBHome.class);
    }
    OrganizationInfoEJB ejb=organizationInfoEJBHome.create();
    return ejb;
  }

  public PurviewManageEJB getPurviewManageEJB()
      throws Exception{
    if(purviewManageEJBHome==null){
      purviewManageEJBHome=(PurviewManageEJBHome)getRemoteHome(
          "PurviewManageEJB",PurviewManageEJBHome.class);
    }
    PurviewManageEJB ejb=purviewManageEJBHome.create();
    return ejb;
  }

  public SysManageEJB getSysManageEJB()
      throws Exception{
    if(sysManageEJBHome==null){
      sysManageEJBHome=(SysManageEJBHome)getRemoteHome(
          "SysManageEJB",SysManageEJBHome.class);
    }
    SysManageEJB ejb=sysManageEJBHome.create();
    return ejb;
  }

  public TaskEJB getTaskEJB()throws Exception{
    if(taskEJBHome == null){
      taskEJBHome = (TaskEJBHome)getRemoteHome("TaskEJB",TaskEJBHome.class);
    }

    TaskEJB ejb = taskEJBHome.create();
    return ejb;
  }

}

⌨️ 快捷键说明

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