org.jboss.ejb.plugins
Class EntityMultiInstanceSynchronizationInterceptor

java.lang.Object
  extended byorg.jboss.ejb.plugins.AbstractInterceptor (src) 
      extended byorg.jboss.ejb.plugins.EntitySynchronizationInterceptor (src) 
          extended byorg.jboss.ejb.plugins.EntityMultiInstanceSynchronizationInterceptor
All Implemented Interfaces:
AllowedOperationsFlags (src) , ContainerPlugin (src) , Interceptor (src) , Service (src)

Deprecated. this interceptor was used with Instance Per Transaction containers which do not use a global cache but cache instances per transaction and always passivate instances at commit time (commit option C). The only difference from the EntityInstanceInterceptor is that it uses specific instance Synchronization implementation which always passivates the instance at commit time which is equivalent to commit option C in standard container. Now, the differences between IPT and standard container are: (alex@jboss.org) The role of this interceptor is to synchronize the state of the cache with the underlying storage. It does this with the ejbLoad and ejbStore semantics of the EJB specification. In the presence of a transaction this is triggered by transaction demarcation. It registers a callback with the underlying transaction monitor through the JTA interfaces. If there is no transaction the policy is to store state upon returning from invocation. The synchronization polices A,B,C of the specification are taken care of here.

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

public class EntityMultiInstanceSynchronizationInterceptor
extends EntitySynchronizationInterceptor (src)


Nested Class Summary
protected  class EntityMultiInstanceSynchronizationInterceptor.MultiInstanceSynchronization (src)
          Deprecated.  
 
Nested classes inherited from class org.jboss.ejb.plugins.EntitySynchronizationInterceptor (src)
EntitySynchronizationInterceptor.InstanceSynchronization (src)
 
Field Summary
 
Fields inherited from class org.jboss.ejb.plugins.EntitySynchronizationInterceptor (src)
commitOption, container, optionDRefreshRate
 
Fields inherited from class org.jboss.ejb.plugins.AbstractInterceptor (src)
log, nextInterceptor
 
Fields inherited from interface org.jboss.ejb.AllowedOperationsFlags (src)
IN_AFTER_BEGIN, IN_AFTER_COMPLETION, IN_BEFORE_COMPLETION, IN_BUSINESS_METHOD, IN_EJB_ACTIVATE, IN_EJB_CREATE, IN_EJB_FIND, IN_EJB_HOME, IN_EJB_LOAD, IN_EJB_PASSIVATE, IN_EJB_POST_CREATE, IN_EJB_REMOVE, IN_EJB_STORE, IN_EJB_TIMEOUT, IN_INTERCEPTOR_METHOD, IN_SERVICE_ENDPOINT_METHOD, IN_SET_ENTITY_CONTEXT, IN_SET_MESSAGE_DRIVEN_CONTEXT, IN_SET_SESSION_CONTEXT, IN_UNSET_ENTITY_CONTEXT, NOT_ALLOWED
 
Constructor Summary
EntityMultiInstanceSynchronizationInterceptor()
          Deprecated.  
 
Method Summary
 void create()
          Deprecated. create the service, do expensive operations etc
protected  Synchronization (src) createSynchronization(Transaction (src)  tx, EntityEnterpriseContext (src)  ctx)
          Deprecated.  
 void start()
          Deprecated. start the service, create is already called
 
Methods inherited from class org.jboss.ejb.plugins.EntitySynchronizationInterceptor (src)
getContainer, invoke, invokeHome, register, setContainer, stop
 
Methods inherited from class org.jboss.ejb.plugins.AbstractInterceptor (src)
destroy, getNext, setNext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EntityMultiInstanceSynchronizationInterceptor

public EntityMultiInstanceSynchronizationInterceptor()
Deprecated. 
Method Detail

create

public void create()
            throws java.lang.Exception
Deprecated. 
Description copied from interface: Service (src)
create the service, do expensive operations etc

Specified by:
create in interface Service (src)
Overrides:
create in class EntitySynchronizationInterceptor (src)
Throws:
java.lang.Exception

start

public void start()
Deprecated. 
Description copied from interface: Service (src)
start the service, create is already called

Specified by:
start in interface Service (src)
Overrides:
start in class EntitySynchronizationInterceptor (src)

createSynchronization

protected Synchronization (src)  createSynchronization(Transaction (src)  tx,
                                                EntityEnterpriseContext (src)  ctx)
Deprecated. 
Overrides:
createSynchronization in class EntitySynchronizationInterceptor (src)