Save This Page
Home » jboss-5.0.0.CR1-src » org » jboss » ejb » plugins » [javadoc | source]
org.jboss.ejb.plugins
public class: EntityInstanceInterceptor [javadoc | source]
java.lang.Object
   org.jboss.ejb.plugins.AbstractInterceptor
      org.jboss.ejb.plugins.EntityInstanceInterceptor

All Implemented Interfaces:
    Interceptor

The instance interceptors role is to acquire a context representing the target object from the cache.

This particular container interceptor implements pessimistic locking on the transaction that is associated with the retrieved instance. If there is a transaction associated with the target component and it is different from the transaction associated with the Invocation coming in then the policy is to wait for transactional commit.

We also implement serialization of calls in here (this is a spec requirement). This is a fine grained notify, notifyAll mechanism. We notify on ctx serialization locks and notifyAll on global transactional locks.

WARNING: critical code, get approval from senior developers before changing.

Field Summary
protected  EntityContainer container     
protected static final  Method ejbTimeout    A reference to javax.ejb.TimedObject#ejbTimeout
Fields inherited from org.jboss.ejb.plugins.AbstractInterceptor:
nextInterceptor,  log,  container
Method from org.jboss.ejb.plugins.EntityInstanceInterceptor Summary:
getContainer,   invoke,   invokeHome,   setContainer
Methods from org.jboss.ejb.plugins.AbstractInterceptor:
create,   destroy,   getContainer,   getNext,   invoke,   invokeHome,   isAppException,   setContainer,   setNext,   start,   stop
Methods from java.lang.Object:
equals,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from org.jboss.ejb.plugins.EntityInstanceInterceptor Detail:
 public Container getContainer() 
 public Object invoke(Invocation mi) throws Exception 
 public Object invokeHome(Invocation mi) throws Exception 
 public  void setContainer(Container container)