net.sf.jzeno.aop
Class AbstractAspect

java.lang.Object
  extended by net.sf.jzeno.aop.AbstractAspect
All Implemented Interfaces:
Aspect
Direct Known Subclasses:
AutoSyncAspect, CallByValueAspect, DelegationAspect, EvictTrapAspect, LoggingAspect, MonitoringAspect, OriginalValuesAspect, RetryDeadlockAspect, SecurityAspect, TransactionAspect

public abstract class AbstractAspect
extends java.lang.Object
implements Aspect


Field Summary
protected  java.lang.Throwable afterException
           
protected  java.lang.Throwable beforeException
           
protected  HeapInspectorSupport his
           
protected  Aspect nextAspect
           
protected  java.lang.Throwable primaryException
           
 
Constructor Summary
AbstractAspect(Aspect nextAspect)
           
 
Method Summary
 Aspect getNextAspect()
           
 java.lang.Object invoke(java.lang.reflect.Method method, java.lang.Object[] arguments)
           
 void postProcess(java.lang.reflect.Method method, java.lang.Object[] arguments)
           
 void preProcess(java.lang.reflect.Method method, java.lang.Object[] arguments)
           
 java.lang.Object process(java.lang.reflect.Method method, java.lang.Object[] arguments)
           
 void setNextAspect(Aspect nextAspect)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

nextAspect

protected Aspect nextAspect

beforeException

protected java.lang.Throwable beforeException

primaryException

protected java.lang.Throwable primaryException

afterException

protected java.lang.Throwable afterException

his

protected transient HeapInspectorSupport his
Constructor Detail

AbstractAspect

public AbstractAspect(Aspect nextAspect)
Method Detail

invoke

public java.lang.Object invoke(java.lang.reflect.Method method,
                               java.lang.Object[] arguments)
                        throws java.lang.Throwable
Specified by:
invoke in interface Aspect
Throws:
java.lang.Throwable

preProcess

public void preProcess(java.lang.reflect.Method method,
                       java.lang.Object[] arguments)
                throws java.lang.Exception
Throws:
java.lang.Exception

postProcess

public void postProcess(java.lang.reflect.Method method,
                        java.lang.Object[] arguments)
                 throws java.lang.Exception
Throws:
java.lang.Exception

process

public java.lang.Object process(java.lang.reflect.Method method,
                                java.lang.Object[] arguments)
                         throws java.lang.Throwable
Throws:
java.lang.Throwable

getNextAspect

public Aspect getNextAspect()
Specified by:
getNextAspect in interface Aspect

setNextAspect

public void setNextAspect(Aspect nextAspect)
Specified by:
setNextAspect in interface Aspect