Class ClassLoaderWeavingAdaptor

  • All Implemented Interfaces:
    org.aspectj.bridge.IMessageContext

    public class ClassLoaderWeavingAdaptor
    extends WeavingAdaptor
    Author:
    Alexandre Vasseur, Andy Clement, Abraham Nevado, David Knibb, John Kew
    • Constructor Detail

      • ClassLoaderWeavingAdaptor

        public ClassLoaderWeavingAdaptor()
      • ClassLoaderWeavingAdaptor

        @Deprecated
        public ClassLoaderWeavingAdaptor​(java.lang.ClassLoader deprecatedLoader,
                                         IWeavingContext deprecatedContext)
        Deprecated.
        We don't need a reference to the class loader and using it during construction can cause problems with recursion. It also makes sense to supply the weaving context during initialization to.
    • Method Detail

      • initialize

        public void initialize​(java.lang.ClassLoader classLoader,
                               IWeavingContext context)
      • lint

        protected void lint​(java.lang.String name,
                            java.lang.String[] infos)
      • getContextId

        public java.lang.String getContextId()
        Specified by:
        getContextId in interface org.aspectj.bridge.IMessageContext
        Overrides:
        getContextId in class WeavingAdaptor
      • accept

        protected boolean accept​(java.lang.String className,
                                 byte[] bytes)
        Determine whether a type should be accepted for weaving, by checking it against any includes/excludes.
        Overrides:
        accept in class WeavingAdaptor
        Parameters:
        className - the name of the type to possibly accept
        bytes - the bytecode for the type (in case we need to look inside, eg. annotations)
        Returns:
        true if it should be accepted for weaving
      • shouldDump

        protected boolean shouldDump​(java.lang.String className,
                                     boolean before)
        Overrides:
        shouldDump in class WeavingAdaptor
      • getDumpDir

        protected java.lang.String getDumpDir()
        Overrides:
        getDumpDir in class WeavingAdaptor
        Returns:
        the directory in which to dump - default is _ajdump but it
      • getNamespace

        public java.lang.String getNamespace()
        Returns:
        Returns the key.
      • generatedClassesExistFor

        public boolean generatedClassesExistFor​(java.lang.String className)
        Check to see if any classes are stored in the generated classes cache. Then flush the cache if it is not empty
        Parameters:
        className - TODO
        Returns:
        true if a class has been generated and is stored in the cache
      • flushGeneratedClasses

        public void flushGeneratedClasses()
        Flush the generated classes cache
      • flushGeneratedClassesFor

        public void flushGeneratedClassesFor​(java.lang.String className)
        Remove generated classes based on the supplied className. This will remove any entries related to this name - so the class itself plus and inner classes.
        Parameters:
        className - a slashed classname (e.g. com/foo/Bar)