]> source.dussan.org Git - aspectj.git/commitdiff
Addes support for JDT's Java options map.
authormkersten <mkersten>
Tue, 22 Jul 2003 15:56:26 +0000 (15:56 +0000)
committermkersten <mkersten>
Tue, 22 Jul 2003 15:56:26 +0000 (15:56 +0000)
ajde/src/org/aspectj/ajde/BuildOptionsAdapter.java
ajde/src/org/aspectj/ajde/internal/CompilerAdapter.java
ajde/src/org/aspectj/ajde/ui/internal/AjcBuildOptions.java

index ea8905b71de56d1bc2628539fa97636e850e7cc4..7ac61377a899516e2c03b6aceff858cec488c2b8 100644 (file)
@@ -16,6 +16,7 @@
  
 package org.aspectj.ajde;
 
+import java.util.Map;
 import java.util.Set;
 
 /**
@@ -45,6 +46,15 @@ public interface BuildOptionsAdapter {
        public static final String DEBUG_VARS   = "vars";
        public static final String DEBUG_ALL    = "all";
        
+       
+       /**
+        * This map shortcuts any other Java-specific options that would get set by return
+        * values from the other methods.
+        * 
+        * @return      a map of all the java-specific options, null if individual options will be passed
+        */
+       public Map getJavaOptionsMap();  
+       
        /**
         * Use javac to generate .class files.  The default is "false".
         * From -usejavac
index dd1bf57c0de7b311884a368ad585d682685c5986..0722b425a292c245bb9bd6deeaf038e9b75f7bac 100644 (file)
@@ -45,6 +45,7 @@ import java.util.StringTokenizer;
 
 public class CompilerAdapter {
 
+       private Map optionsMap;
        private AjBuildManager buildManager = null;
     private MessageHandlerAdapter messageHandler = null;
     private BuildNotifierAdapter currNotifier = null;
@@ -146,6 +147,8 @@ public class CompilerAdapter {
      *   corresponding AjBuildConfig otherwise
      */
        public AjBuildConfig genBuildConfig(String configFile) {
+               
+
         init();
            File config = new File(configFile);
         if (!config.exists()) {
@@ -201,6 +204,9 @@ public class CompilerAdapter {
      * 
      */
     protected AjBuildConfig fixupBuildConfig(AjBuildConfig local, AjBuildConfig global, BuildOptionsAdapter buildOptions, ProjectPropertiesAdapter projectOptions) {
+               if (Ajde.getDefault().getBuildManager().getBuildOptions().getJavaOptionsMap() != null) {
+                       local.getJavaOptions().putAll(Ajde.getDefault().getBuildManager().getBuildOptions().getJavaOptionsMap());
+               }
         return local;
     }
 
index 2474745188a27ab7baf109ac2de545053d3ca84b..25029613d0b5343364a187bda557c24560c496ce 100644 (file)
@@ -19,6 +19,7 @@ package org.aspectj.ajde.ui.internal;
 
 import java.util.HashSet;
 import java.util.Iterator;
+import java.util.Map;
 import java.util.Set;
 import java.util.StringTokenizer;
 
@@ -50,9 +51,10 @@ public class AjcBuildOptions implements BuildOptionsAdapter {
        private static final String PRESERVE_LOCALS = AJC + ".preserveLocals";
        private static final String DEFAULT = "default";
        
-       
        public AjcBuildOptions(UserPreferencesAdapter userPreferencesAdapter) {
                this.preferencesAdapter = userPreferencesAdapter;
+               
+               
        }
 
        /** @deprecated */      
@@ -307,4 +309,9 @@ public class AjcBuildOptions implements BuildOptionsAdapter {
                return debugOptions.toString();
        }
 
+
+       public Map getJavaOptionsMap() {
+               return null;
+       }
+
 }