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.

BuildConfigManager.java 2.7KB

17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
17 年之前
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. /* *******************************************************************
  2. * Copyright (c) 1999-2001 Xerox Corporation,
  3. * 2002 Palo Alto Research Center, Incorporated (PARC).
  4. * All rights reserved.
  5. * This program and the accompanying materials are made available
  6. * under the terms of the Eclipse Public License v1.0
  7. * which accompanies this distribution and is available at
  8. * http://www.eclipse.org/legal/epl-v10.html
  9. *
  10. * Contributors:
  11. * Xerox/PARC initial implementation
  12. * ******************************************************************/
  13. package org.aspectj.ajde.internal;
  14. import java.util.List;
  15. import org.aspectj.ajde.ui.BuildConfigModel;
  16. /**
  17. * @author Mik Kersten
  18. */
  19. public interface BuildConfigManager {
  20. public static final String CONFIG_FILE_SUFFIX = ".lst";
  21. public static final String DEFAULT_CONFIG_LABEL = "<all project files>";
  22. /**
  23. * Returns the currently active build configuration file. The current active
  24. * build configuration file that is set in this class is used for building and
  25. * for updating the structure model.
  26. *
  27. * @return full path to the file
  28. */
  29. public String getActiveConfigFile();
  30. /**
  31. * Sets the currently active build configuration file.
  32. *
  33. * @param full path to the file
  34. */
  35. public void setActiveConfigFile(String currConfigFilePath);
  36. /**
  37. * Add a listner that will be notified of build configuration change events
  38. */
  39. public void addListener(BuildConfigListener configurationListener);
  40. /**
  41. * Remove a configuration listener.
  42. */
  43. public void removeListener(BuildConfigListener configurationListener);
  44. /**
  45. * Build a model for the corresponding configuration file.
  46. *
  47. * @param full path to the file
  48. */
  49. public BuildConfigModel buildModel(String configFilePath);
  50. /**
  51. * Save the given configuration model to the file that it was generated from.
  52. */
  53. public void writeModel(BuildConfigModel model);
  54. /**
  55. * Write a list of source files into a configuration file. File paths will be
  56. * written relative to the path of the configuration file.
  57. */
  58. public void writePaths(String configFilePath, List paths);
  59. /**
  60. * Add files to a configuration.
  61. *
  62. * @param configFilePath full path to the configuration file
  63. * @param files list of full paths to the files to be added
  64. */
  65. public void addFilesToConfig(String configFilePath, List files);
  66. /**
  67. * Remove files from a configuration.
  68. *
  69. * @param configFilePath full path to the configuration file
  70. * @param files list of full paths to the files to be removed
  71. */
  72. public void removeFilesFromConfig(String configFilePath, List files);
  73. /**
  74. * @return list (of Strings) of all build configuration files
  75. * found so far
  76. */
  77. public List /*String*/ getAllBuildConfigFiles();
  78. }