Klasse AjState

java.lang.Object
org.aspectj.ajdt.internal.core.builder.AjState
Alle implementierten Schnittstellen:
CompilerConfigurationChangeFlags, TypeDelegateResolver

public class AjState extends Object implements CompilerConfigurationChangeFlags, TypeDelegateResolver
Maintains state needed for incremental compilation
  • Felddetails

    • CHECK_STATE_FIRST

      public static boolean CHECK_STATE_FIRST
    • stateListener

      public static IStateListener stateListener
    • FORCE_INCREMENTAL_DURING_TESTING

      public static boolean FORCE_INCREMENTAL_DURING_TESTING
    • deltaAddedClasses

      public final Set<String> deltaAddedClasses
  • Konstruktordetails

  • Methodendetails

    • setCouldBeSubsequentIncrementalBuild

      public void setCouldBeSubsequentIncrementalBuild(boolean yesThereCould)
    • prepareForNextBuild

      public boolean prepareForNextBuild(AjBuildConfig newBuildConfig)
      Returns false if a batch build is needed.
    • toString

      public String toString()
      Setzt außer Kraft:
      toString in Klasse Object
    • getFilesToCompile

      public Set<File> getFilesToCompile(boolean firstPass)
    • getBinaryFilesToCompile

      public Map<String,List<UnwovenClassFile>> getBinaryFilesToCompile(boolean firstTime)
    • noteResult

      public void noteResult(InterimCompilationResult result)
    • noteNewResult

      public void noteNewResult(CompilationResult cr)
    • addAffectedSourceFiles

      protected void addAffectedSourceFiles(Set<File> addTo, Set<File> lastTimeSources)
    • recordTypeChanged

      protected void recordTypeChanged(String typename)
      Record that a particular type has been touched during a compilation run. Information is used to ensure any types depending upon this one are also recompiled.
      Parameter:
      typename - (possibly qualified) type name
    • recordDependencies

      public boolean recordDependencies(File file, String[] typeNameDependencies)
      Record some additional dependencies between types. When any of the types specified in fullyQualifiedTypeNames changes, we need to recompile the file named in the CompilationResult. This method patches that information into the existing data structures.
    • addDependentsOf

      protected void addDependentsOf(File sourceFile)
    • setStructureModel

      public void setStructureModel(AsmManager structureModel)
    • getStructureModel

      public AsmManager getStructureModel()
    • setWeaver

      public void setWeaver(BcelWeaver bw)
    • getWeaver

      public BcelWeaver getWeaver()
    • setWorld

      public void setWorld(BcelWorld bw)
    • getBcelWorld

      public BcelWorld getBcelWorld()
    • getNumberOfStructuralChangesSinceLastFullBuild

      public int getNumberOfStructuralChangesSinceLastFullBuild()
    • getLastBuildTime

      public long getLastBuildTime()
      Returns last time we did a full or incremental build.
    • getLastFullBuildTime

      public long getLastFullBuildTime()
      Returns last time we did a full build
    • getBuildConfig

      public AjBuildConfig getBuildConfig()
      Gibt zurück:
      Returns the buildConfig.
    • clearBinarySourceFiles

      public void clearBinarySourceFiles()
    • recordBinarySource

      public void recordBinarySource(String fromPathName, List<UnwovenClassFile> unwovenClassFiles)
    • getBinarySourceMap

      public Map<String,List<UnwovenClassFile>> getBinarySourceMap()
    • getClassNameToFileMap

      public Map<String,File> getClassNameToFileMap()
    • hasResource

      public boolean hasResource(String resourceName)
    • recordResource

      public void recordResource(String resourceName, File resourceSourceLocation)
    • getAddedFiles

      public Set<File> getAddedFiles()
      Gibt zurück:
      Returns the addedFiles.
    • getDeletedFiles

      public Set<File> getDeletedFiles()
      Gibt zurück:
      Returns the deletedFiles.
    • forceBatchBuildNextTimeAround

      public void forceBatchBuildNextTimeAround()
    • requiresFullBatchBuild

      public boolean requiresFullBatchBuild()
    • wipeAllKnowledge

      public void wipeAllKnowledge()
    • getAspectNamesToFileNameMap

      public Map<String,char[]> getAspectNamesToFileNameMap()
    • initializeAspectNamesToFileNameMap

      public void initializeAspectNamesToFileNameMap()
    • listenerDefined

      public boolean listenerDefined()
    • getListener

      public IStateListener getListener()
    • checkPreviousBuild

      public IBinaryType checkPreviousBuild(String name)
    • getAjBuildManager

      public AjBuildManager getAjBuildManager()
    • getNameEnvironment

      public INameEnvironment getNameEnvironment()
    • setNameEnvironment

      public void setNameEnvironment(INameEnvironment nameEnvironment)
    • getFileSystem

      public FileSystem getFileSystem()
    • setFileSystem

      public void setFileSystem(FileSystem fileSystem)
    • recordAspectClassFile

      public void recordAspectClassFile(String aspectFile)
      Record an aspect that came in on the aspect path. When a .class file changes on the aspect path we can then recognize it as an aspect and know to do more than just a tiny incremental build.
      TODO but this doesn't allow for a new aspect created on the aspectpath?
      Parameter:
      aspectFile - path to the file, eg. c:/temp/foo/Fred.class
    • write

      public void write(CompressingDataOutputStream dos) throws IOException
      Löst aus:
      IOException
    • getDelegate

      public ReferenceTypeDelegate getDelegate(ReferenceType referenceType)
      See if we can create a delegate from a CompactTypeStructure - TODO better comment
      Angegeben von:
      getDelegate in Schnittstelle TypeDelegateResolver