org.jboss.aop.advice
Class PerJoinpointAdvice

java.lang.Object
  extended by org.jboss.aop.advice.AbstractAdvice
      extended by org.jboss.aop.advice.PerJoinpointAdvice
All Implemented Interfaces:
Interceptor, Untransformable

public class PerJoinpointAdvice
extends AbstractAdvice

Comment

Version:
$Revision: 73173 $
Author:
Bill Burke

Field Summary
 
Fields inherited from class org.jboss.aop.advice.AbstractAdvice
adviceName, aspectClass, conCalledByConstructorAdvice, conCalledByMethodAdvice, constructionAdvice, constructorAdvice, fieldAdvice, fieldReadAdvice, fieldWriteAdvice, invocationAdvice, methodAdvice, methodCalledByConstructorAdvice, methodCalledByMethodAdvice
 
Constructor Summary
PerJoinpointAdvice(String adviceName, AspectDefinition a, Advisor advisor, Joinpoint joinpoint)
           
 
Method Summary
static Interceptor createInterceptor(Advisor advisor, Joinpoint joinpoint, AspectDefinition def, String adviceName)
           
 Object getAspectInstance()
           
 Object getAspectInstance(InstanceAdvisor instanceAdvisor)
           
 String getName()
          Returns the name of this interceptor.
 Object invoke(Invocation invocation)
          The single advice contained in the Interceptor.
 
Methods inherited from class org.jboss.aop.advice.AbstractAdvice
findByConstructionInvocation, findByConstructorCalledByConstructorInvocation, findByConstructorCalledByMethodInvocation, findByConstructorInvocation, findByFieldInvocation, findByFieldReadInvocation, findByFieldWriteInvocation, findByInvocation, findByMethodCalledByConstructorInvocation, findByMethodCalledByMethodInvocation, findByMethodInvocation, getAdviceName, init, resolveAdvice
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PerJoinpointAdvice

public PerJoinpointAdvice(String adviceName,
                          AspectDefinition a,
                          Advisor advisor,
                          Joinpoint joinpoint)
Method Detail

createInterceptor

public static Interceptor createInterceptor(Advisor advisor,
                                            Joinpoint joinpoint,
                                            AspectDefinition def,
                                            String adviceName)
                                     throws Exception
Throws:
Exception

getName

public String getName()
Description copied from interface: Interceptor
Returns the name of this interceptor. This name is unique inside the domain.

Returns:
name the name that identifies this interceptor in its domain

invoke

public Object invoke(Invocation invocation)
              throws Throwable
Description copied from interface: Interceptor
The single advice contained in the Interceptor.
To call the next interceptor or advice in the chain, this method must call invocation.invokeNext() method (if there are not elements left to be called in the chain, this method invokes the joinpoint itself). Not doing so means halting the execution of the interceptor chain and, hence, avoiding the execution of the joinpoint. This should be done only when the interceptor must replace the joinpoint execution.

Parameters:
invocation - represents the joinpoint to be intercepted
Returns:
the result value. This value will be returned to the previous interceptor/advice as a result of Invocation.invokeNext(). In case this is the first interceptor in the chain, this value will replace the joinpoint return value in the basis system.
Throws:
Throwable - may throw any exceptions declared by the joinpoint itself. If this exception is not declared and is not a runtime exception, it will be encapsulated in a RuntimeException before being thrown to the basis system.

getAspectInstance

public Object getAspectInstance()
Specified by:
getAspectInstance in class AbstractAdvice

getAspectInstance

public Object getAspectInstance(InstanceAdvisor instanceAdvisor)


Copyright © 2008 JBoss, a division of Red Hat, Inc.. All Rights Reserved.