org.jfox.ejb
Class BucketSupport

java.lang.Object
  extended byorg.jfox.ejb.BucketSupport
All Implemented Interfaces:
Bucket, EJBOperation
Direct Known Subclasses:
SessionBucket

public abstract class BucketSupport
extends java.lang.Object
implements Bucket

提供 bucket 的公共方法


Field Summary
protected  java.util.Map beanMethods
          EJBObject 接口中定义的方法 methodHashCode => Method Object
protected  BucketMetaData bucketMeta
           
protected  java.lang.String homeClassName
           
protected  java.util.Map homeMethods
           
protected  java.util.List interceptors
           
protected  Logger logger
           
protected  OIDGenerator oidGenerator
           
 
Constructor Summary
BucketSupport(BucketMetaData meta)
           
 
Method Summary
 void ejbCreate(javax.ejb.EnterpriseBean bean, java.lang.String createMethod, java.lang.Object[] args)
           
 java.lang.reflect.Method getBeanMethod(Invocation invocation)
           
 EJBClassLoader getEJBClassLoader()
          得到该 ejb 的 classLoader
 javax.ejb.EJBHome getEJBHome()
           
 javax.ejb.EJBMetaData getEJBMetaData()
          Obtain the EJBMetaData interface for the enterprise Bean.
 javax.ejb.HomeHandle getHomeHandle()
          Obtain a handle for the remote home object.
 java.lang.reflect.Method getHomeMethod(Invocation invocation)
           
protected  java.util.Map introspectorBeanMethods(java.lang.Class beanClass, java.lang.Class remoteInterface)
          缓存在 EnterpriseBean 类中定义的对象 这些方法应该都是已经在 EJBObject 接口中已经定义的
protected  java.util.Map introspectorInterfMethods(java.lang.Class classObj)
          缓存在 EJBHome,EJBObject 接口中定义的对象
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jfox.ejb.Bucket
invokeBean, invokeHome
 
Methods inherited from interface org.jfox.ejb.EJBOperation
getHandle, getPrimaryKey, isIdentical, remove, remove, remove
 

Field Detail

logger

protected Logger logger

bucketMeta

protected BucketMetaData bucketMeta

homeClassName

protected java.lang.String homeClassName

beanMethods

protected java.util.Map beanMethods
EJBObject 接口中定义的方法 methodHashCode => Method Object


homeMethods

protected java.util.Map homeMethods

oidGenerator

protected OIDGenerator oidGenerator

interceptors

protected java.util.List interceptors
Constructor Detail

BucketSupport

public BucketSupport(BucketMetaData meta)
Method Detail

getEJBClassLoader

public EJBClassLoader getEJBClassLoader()
Description copied from interface: Bucket
得到该 ejb 的 classLoader

Specified by:
getEJBClassLoader in interface Bucket

getEJBMetaData

public javax.ejb.EJBMetaData getEJBMetaData()
                                     throws java.rmi.RemoteException
Description copied from interface: EJBOperation
Obtain the EJBMetaData interface for the enterprise Bean. The EJBMetaData interface allows the client to obtain information about the enterprise Bean.

The information obtainable via the EJBMetaData interface is intended to be used by tools.

Specified by:
getEJBMetaData in interface EJBOperation
Returns:
The enterprise Bean's EJBMetaData interface.
Throws:
java.rmi.RemoteException - Thrown when the method failed due to a system-level failure.

getEJBHome

public javax.ejb.EJBHome getEJBHome()
                             throws java.rmi.RemoteException
Specified by:
getEJBHome in interface EJBOperation
Throws:
java.rmi.RemoteException

getHomeHandle

public javax.ejb.HomeHandle getHomeHandle()
                                   throws java.rmi.RemoteException
Description copied from interface: EJBOperation
Obtain a handle for the remote home object. The handle can be used at later time to re-obtain a reference to the remote home object, possibly in a different Java Virtual Machine.

Specified by:
getHomeHandle in interface EJBOperation
Returns:
A handle for the remote home object.
Throws:
java.rmi.RemoteException - Thrown when the method failed due to a system-level failure.

ejbCreate

public void ejbCreate(javax.ejb.EnterpriseBean bean,
                      java.lang.String createMethod,
                      java.lang.Object[] args)
               throws java.rmi.RemoteException
Specified by:
ejbCreate in interface EJBOperation
Throws:
java.rmi.RemoteException

introspectorInterfMethods

protected java.util.Map introspectorInterfMethods(java.lang.Class classObj)
缓存在 EJBHome,EJBObject 接口中定义的对象

Parameters:
classObj -
Returns:

introspectorBeanMethods

protected java.util.Map introspectorBeanMethods(java.lang.Class beanClass,
                                                java.lang.Class remoteInterface)
缓存在 EnterpriseBean 类中定义的对象 这些方法应该都是已经在 EJBObject 接口中已经定义的

Parameters:
beanClass -
Returns:

getHomeMethod

public java.lang.reflect.Method getHomeMethod(Invocation invocation)
                                       throws java.lang.NoSuchMethodException
Specified by:
getHomeMethod in interface Bucket
Throws:
java.lang.NoSuchMethodException

getBeanMethod

public java.lang.reflect.Method getBeanMethod(Invocation invocation)
                                       throws java.lang.NoSuchMethodException
Specified by:
getBeanMethod in interface Bucket
Throws:
java.lang.NoSuchMethodException