org.springframework.aop.aspectj.annotation

Class AspectMetadata

  • java.lang.Object
    • org.springframework.aop.aspectj.annotation.AspectMetadata
  • All Implemented Interfaces:
    java.io.Serializable


    public class AspectMetadata
    extends java.lang.Object
    implements java.io.Serializable
    Metadata for an AspectJ aspect class, with an additional Spring AOP pointcut for the per clause.

    Uses AspectJ 5 AJType reflection API, enabling us to work with different AspectJ instantiation models such as "singleton", "pertarget" and "perthis".

    Since:
    2.0
    Author:
    Rod Johnson, Juergen Hoeller
    See Also:
    AspectJExpressionPointcut, Serialized Form
    • Constructor Summary

      Constructors 
      Constructor and Description
      AspectMetadata(java.lang.Class<?> aspectClass, java.lang.String aspectName)
      Create a new AspectMetadata instance for the given aspect class.
    • Constructor Detail

      • AspectMetadata

        public AspectMetadata(java.lang.Class<?> aspectClass,
                              java.lang.String aspectName)
        Create a new AspectMetadata instance for the given aspect class.
        Parameters:
        aspectClass - the aspect class
        aspectName - the name of the aspect
    • Method Detail

      • getAjType

        public AjType<?> getAjType()
        Return AspectJ reflection information.
      • getAspectClass

        public java.lang.Class<?> getAspectClass()
        Return the aspect class.
      • getAspectName

        public java.lang.String getAspectName()
        Return the aspect name.
      • getPerClausePointcut

        public Pointcut getPerClausePointcut()
        Return a Spring pointcut expression for a singleton aspect. (e.g. Pointcut.TRUE if it's a singleton).
      • isPerThisOrPerTarget

        public boolean isPerThisOrPerTarget()
        Return whether the aspect is defined as "perthis" or "pertarget".
      • isPerTypeWithin

        public boolean isPerTypeWithin()
        Return whether the aspect is defined as "pertypewithin".
      • isLazilyInstantiated

        public boolean isLazilyInstantiated()
        Return whether the aspect needs to be lazily instantiated.