KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jfox > ejb > SessionBucket


1 /* JFox, the OpenSource J2EE Application Server
2  *
3  * Distributable under GNU LGPL license by gun.org
4  * more details please visit http://www.huihoo.org/jfox
5  */

6
7 package org.jfox.ejb;
8
9 import java.rmi.RemoteException JavaDoc;
10 import javax.ejb.EJBContext JavaDoc;
11 import javax.ejb.EJBException JavaDoc;
12 import javax.ejb.EnterpriseBean JavaDoc;
13 import javax.ejb.Handle JavaDoc;
14 import javax.ejb.RemoveException JavaDoc;
15 import javax.ejb.SessionBean JavaDoc;
16 import javax.ejb.SessionContext JavaDoc;
17
18 /**
19  * 实现对于 SessionBean 统一的方法
20  *
21  * @author <a HREF="mailto:young_yy@hotmail.com">Young Yang</a>
22  */

23
24 public abstract class SessionBucket extends BucketSupport {
25
26     public SessionBucket() {
27
28     }
29
30     public Object JavaDoc getPrimaryKey(EnterpriseBean JavaDoc obj) throws RemoteException JavaDoc {
31         throw new RemoteException JavaDoc("getPrimaryKey(EJBObject obj) can not be called on an session bean");
32     }
33
34     public Handle JavaDoc getHandle(EnterpriseBean JavaDoc obj) throws RemoteException JavaDoc {
35         // 因为在客户端实现,所以这里不用实现,见 JRMPContainerInvoker
36
return null;
37     }
38
39     public void ejbActivate(EnterpriseBean JavaDoc bean) throws EJBException JavaDoc, RemoteException JavaDoc {
40         logger.debug(bean + " activate");
41         ((SessionBean JavaDoc)bean).ejbActivate();
42     }
43
44     public void ejbPassivate(EnterpriseBean JavaDoc bean) throws EJBException JavaDoc, RemoteException JavaDoc {
45         logger.debug(bean + " passivate");
46         ((SessionBean JavaDoc)bean).ejbPassivate();
47     }
48
49     public void ejbRemove(EnterpriseBean JavaDoc bean) throws EJBException JavaDoc, RemoteException JavaDoc {
50         logger.debug(bean + " remove");
51         ((SessionBean JavaDoc)bean).ejbRemove();
52     }
53
54     public void setContext(EnterpriseBean JavaDoc bean, EJBContext JavaDoc ctx) throws EJBException JavaDoc, RemoteException JavaDoc {
55         logger.debug(bean + " setSessionContext");
56         ((SessionBean JavaDoc)bean).setSessionContext((SessionContext JavaDoc)ctx);
57     }
58
59     // removeByPrimaryKey 这个方法因为已经在 JRMPContainerInvoker 客户端执行,所以从不会调用
60
public void remove(Object JavaDoc parimaryKey) throws RemoteException JavaDoc, RemoveException JavaDoc {
61         throw new RemoteException JavaDoc("remove(java.lang.Object primaryKey) can not be used for a session bean");
62     }
63 }
Popular Tags