Class PushinCollector

java.lang.Object
org.aspectj.ajdt.internal.compiler.lookup.PushinCollector

public class PushinCollector extends Object
Collects up information about the application of ITDs and relevant declares - it can then output source code as if those ITDs had been pushed in. Supports the simulated push-in of:
  • declare at_type
  • itd method
  • itd field
  • itd ctor
  • declare parents
Since:
1.6.9
Author:
Andy Clement
  • Method Details

    • dump

      public void dump(CompilationUnitDeclaration compilationUnitDeclaration, String outputFileLocation)
      Produce the modified source that looks like the itds and declares have been applied.
    • recordInterTypeMethodDeclarationCode

      public void recordInterTypeMethodDeclarationCode(AbstractMethodDeclaration md, String s, int line)
    • recordInterTypeFieldDeclarationCode

      public void recordInterTypeFieldDeclarationCode(AbstractMethodDeclaration md, String s, int line)
    • recordInterTypeConstructorDeclarationCode

      public void recordInterTypeConstructorDeclarationCode(AbstractMethodDeclaration md, String s, int line)
    • tagAsMunged

      public void tagAsMunged(SourceTypeBinding sourceType, AbstractMethodDeclaration sourceMethod)
    • tagAsMunged

      public void tagAsMunged(SourceTypeBinding sourceType, String annotationString)
    • dump

      public void dump(CompilationUnitDeclaration unit)
    • tagAsMunged

      public void tagAsMunged(SourceTypeBinding sourceType, TypePattern typePattern)
    • createInstance

      public static PushinCollector createInstance(World world)
      Checks if the aspectj.pushin property is set - this is the main condition for triggering the creation of pushed-in source files. If not set just to 'true', the value of the property is processed as configuration. Configurable options are:
      • dir=XXXX - to set the output directory for the pushed in files
      • suffix=XXX - to set the suffix, can be blank to get just '.java'
    • setOutputFileNameProvider

      public void setOutputFileNameProvider(IOutputClassFileNameProvider outputFileNameProvider)