org.springframework.aop.aspectj

## Class AspectJMethodBeforeAdvice

- java.lang.Object
- - org.springframework.aop.aspectj.AbstractAspectJAdvice
  - - org.springframework.aop.aspectj.AspectJMethodBeforeAdvice

- All Implemented Interfaces:
    Serializable, Advice, AspectJPrecedenceInformation, BeforeAdvice, MethodBeforeAdvice, Ordered

      public class AspectJMethodBeforeAdvice
      extends AbstractAspectJAdvice
      implements MethodBeforeAdvice, Serializable

  Spring AOP advice that wraps an AspectJ before method.
  Since:
    2.0
  Author:
    Rod Johnson, Adrian Colyer
  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from class org.springframework.aop.aspectj.AbstractAspectJAdvice

      `aspectJAdviceMethod, JOIN_POINT_KEY`

    - ### Fields inherited from interface org.springframework.core.Ordered

      `HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AspectJMethodBeforeAdvice(Method aspectJBeforeAdviceMethod, AspectJExpressionPointcut pointcut, AspectInstanceFactory aif)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `before(Method method, Object[] args, Object target)` Callback before a given method is invoked.
    `boolean` | `isAfterAdvice()` Return whether this is an after advice.
    `boolean` | `isBeforeAdvice()` Return whether this is a before advice.

    - ### Methods inherited from class org.springframework.aop.aspectj.AbstractAspectJAdvice

      `argBinding, buildSafePointcut, calculateArgumentBindings, createParameterNameDiscoverer, currentJoinPoint, getAspectClassLoader, getAspectInstanceFactory, getAspectJAdviceMethod, getAspectName, getDeclarationOrder, getDiscoveredReturningGenericType, getDiscoveredReturningType, getDiscoveredThrowingType, getJoinPoint, getJoinPointMatch, getJoinPointMatch, getOrder, getPointcut, invokeAdviceMethod, invokeAdviceMethod, invokeAdviceMethodWithGivenArgs, setArgumentNames, setArgumentNamesFromStringArray, setAspectName, setDeclarationOrder, setReturningName, setReturningNameNoCheck, setThrowingName, setThrowingNameNoCheck, supportsProceedingJoinPoint, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### AspectJMethodBeforeAdvice

          public AspectJMethodBeforeAdvice(Method aspectJBeforeAdviceMethod,
                                           AspectJExpressionPointcut pointcut,
                                           AspectInstanceFactory aif)

  - ### Method Detail

    - #### before

          public void before(Method method,
                             Object[] args,
                             @Nullable
                             Object target)
                      throws Throwable

      Description copied from interface: `MethodBeforeAdvice`
      Callback before a given method is invoked.
      Specified by:
        `before` in interface `MethodBeforeAdvice`
      Parameters:
        `method` - the method being invoked
        `args` - the arguments to the method
        `target` - the target of the method invocation. May be `null`.
      Throws:
        `Throwable` - if this object wishes to abort the call. Any exception thrown will be returned to the caller if it's allowed by the method signature. Otherwise the exception will be wrapped as a runtime exception.

    - #### isBeforeAdvice

          public boolean isBeforeAdvice()

      Description copied from interface: `AspectJPrecedenceInformation`
      Return whether this is a before advice.
      Specified by:
        `isBeforeAdvice` in interface `AspectJPrecedenceInformation`

    - #### isAfterAdvice

          public boolean isAfterAdvice()

      Description copied from interface: `AspectJPrecedenceInformation`
      Return whether this is an after advice.
      Specified by:
        `isAfterAdvice` in interface `AspectJPrecedenceInformation`