You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

IStateListener.java 1.6KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. /**
  2. * Copyright (c) 2005 IBM and other contributors
  3. * All rights reserved.
  4. * This program and the accompanying materials are made available
  5. * under the terms of the Eclipse Public License v 2.0
  6. * which accompanies this distribution and is available at
  7. * https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
  8. *
  9. * Contributors:
  10. * Andy Clement initial implementation
  11. * ******************************************************************/
  12. package org.aspectj.ajdt.internal.core.builder;
  13. import java.io.File;
  14. import java.util.List;
  15. /**
  16. * Implementations of this interface get told interesting information about
  17. * decisions made in AjState objects. Should help us improve incremental
  18. * compilation, and ease the testing of incremental compilation!
  19. *
  20. * Not yet complete, will expand as we determine what extra useful information
  21. * should be recorded.
  22. *
  23. * @author AndyClement
  24. */
  25. public interface IStateListener {
  26. void detectedClassChangeInThisDir(File f);
  27. void aboutToCompareClasspaths(List<String> oldClasspath, List<String> newClasspath);
  28. void pathChangeDetected();
  29. /**
  30. * Called if state processing detects a file was deleted that contained an aspect declaration.
  31. * Incremental compilation will not be attempted if this occurs.
  32. */
  33. void detectedAspectDeleted(File f);
  34. void buildSuccessful(boolean wasFullBuild);
  35. /**
  36. * When a decision is made during compilation (such as needing to recompile some new file, or drop back to batch) this
  37. * method is called with the decision.
  38. */
  39. void recordDecision(String decision);
  40. /**
  41. * Provides feedback during compilation on what stage we are at
  42. */
  43. void recordInformation(String info);
  44. }