Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.jboss.ejb.plugins
Class EntityLockInterceptor

    java.lang.Object
      org.jboss.ejb.plugins.AbstractInterceptor
          org.jboss.ejb.plugins.EntityLockInterceptor

All Implemented Interfaces:
  AllowedOperationsFlags, ContainerPlugin, Interceptor, org.jboss.system.Service

public class EntityLockInterceptor
extends AbstractInterceptor

The lock interceptors role is to schedule thread wanting to invoke method on a target bean

The policies for implementing scheduling (pessimistic locking etc) is implemented by pluggable locks

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.

Version:
  $Revision: 1.14 $

  Revisions:

  2001/07/30: marcf

  1. Initial revision
  2. Factorization of the lock out of the context in cache
  3. The new locking is implement as "scheduling" in the lock which allows for pluggable locks

  2001/08/07: billb

  1. Removed while loop and moved it to SimplePessimisticEJBLock where it belongs.
Author:
  Marc Fleury, Bill Burke

Field Summary

Fields inherited from class org.jboss.ejb.plugins.AbstractInterceptor
`container, log, nextInterceptor`

Fields inherited from interface org.jboss.ejb.AllowedOperationsFlags
`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
`EntityLockInterceptor()`

Method Summary
`Object` | `invoke(Invocation mi)` ???
`Object` | `invokeHome(Invocation mi)` ???

Methods inherited from class org.jboss.ejb.plugins.AbstractInterceptor
`create, destroy, getContainer, getNext, setContainer, setNext, start, stop`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### EntityLockInterceptor

    public EntityLockInterceptor()

Method Detail

### invokeHome

    public Object invokeHome(Invocation mi)
                      throws Exception

  Description copied from interface: `Interceptor`
  ???

  Specified by:
    `invokeHome` in interface `Interceptor`
  Overrides:
    `invokeHome` in class `AbstractInterceptor`
  Throws:
    `Exception`

### invoke

    public Object invoke(Invocation mi)
                  throws Exception

  Description copied from interface: `Interceptor`
  ???

  Specified by:
    `invoke` in interface `Interceptor`
  Overrides:
    `invoke` in class `AbstractInterceptor`
  Throws:
    `Exception`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2002 JBoss Group, LLC. All Rights Reserved.