Class Aspects14

java.lang.Object
org.aspectj.lang.Aspects14

public class Aspects14 extends Object
For users working on a level of Java prior to Java5, Aspects14 handles generic aspectOf methods when they are not available in the aspects but added later on through load time weaving. Users on Java5 should use the class Aspects instead. Aspects14.aspectOf(..) is doing reflective calls to the aspect aspectOf, so for better performance consider using ajc compilation of the aspects and using them as a binary dependancies in your project.
  • Constructor Details

    • Aspects14

      public Aspects14()
  • Method Details

    • aspectOf

      public static Object aspectOf(Class aspectClass) throws NoAspectBoundException
      Returns the singleton aspect or the percflow / percflowbelow associated with the current thread
      Parameters:
      aspectClass - aspect class for which to discover the aspect instance
      Returns:
      an aspect instance
      Throws:
      NoAspectBoundException - if no such aspect
    • aspectOf

      public static Object aspectOf(Class aspectClass, Object perObject) throws NoAspectBoundException
      Returns the perthis / pertarget aspect
      Parameters:
      aspectClass - aspect class for which to discover the aspect instance
      perObject - object for which to discover the aspect instance
      Returns:
      an aspect instance
      Throws:
      NoAspectBoundException - if no such aspect, or no aspect bound
    • aspectOf

      public static Object aspectOf(Class aspectClass, Class perTypeWithin) throws NoAspectBoundException
      Returns the pertypewithin aspect
      Parameters:
      aspectClass - aspect class for which to discover the aspect instance
      perTypeWithin - class
      Returns:
      the aspect instance
      Throws:
      NoAspectBoundException - if no such aspect, or no aspect bound
    • hasAspect

      public static boolean hasAspect(Class aspectClass) throws NoAspectBoundException
      Returns true if singleton aspect or percflow / percflowbelow aspect is bound
      Parameters:
      aspectClass - aspect class for which to check the aspect instance
      Returns:
      true if an aspect instance is bound
      Throws:
      NoAspectBoundException - if not bound
    • hasAspect

      public static boolean hasAspect(Class aspectClass, Object perObject) throws NoAspectBoundException
      Returns true if the perthis / pertarget aspect is bound
      Parameters:
      aspectClass - aspect class for which to check the aspect instance
      perObject - the this/target for which to check for an aspect
      Returns:
      true if aspect instance exists for the class/object combination
      Throws:
      NoAspectBoundException - if not bound
    • hasAspect

      public static boolean hasAspect(Class aspectClass, Class perTypeWithin) throws NoAspectBoundException
      Returns true if the pertypewithin aspect is bound
      Parameters:
      aspectClass - aspect class for which to check the aspect instance
      perTypeWithin - class
      Returns:
      true if aspect instance exists for this aspect class/pertypewithin class combination
      Throws:
      NoAspectBoundException - if not bound