1.1 --- a/src/share/classes/com/sun/tools/javac/main/JavaCompiler.java Wed Sep 29 23:27:57 2010 -0700 1.2 +++ b/src/share/classes/com/sun/tools/javac/main/JavaCompiler.java Thu Sep 30 10:47:12 2010 -0700 1.3 @@ -26,45 +26,44 @@ 1.4 package com.sun.tools.javac.main; 1.5 1.6 import java.io.*; 1.7 +import java.util.HashMap; 1.8 import java.util.HashSet; 1.9 import java.util.LinkedHashSet; 1.10 import java.util.LinkedHashMap; 1.11 import java.util.Map; 1.12 import java.util.MissingResourceException; 1.13 +import java.util.Queue; 1.14 import java.util.ResourceBundle; 1.15 import java.util.Set; 1.16 import java.util.logging.Handler; 1.17 import java.util.logging.Level; 1.18 import java.util.logging.Logger; 1.19 1.20 +import javax.annotation.processing.Processor; 1.21 +import javax.lang.model.SourceVersion; 1.22 import javax.tools.JavaFileManager; 1.23 import javax.tools.JavaFileObject; 1.24 import javax.tools.DiagnosticListener; 1.25 1.26 -import com.sun.tools.javac.file.JavacFileManager; 1.27 import com.sun.source.util.TaskEvent; 1.28 import com.sun.source.util.TaskListener; 1.29 1.30 +import com.sun.tools.javac.file.JavacFileManager; 1.31 import com.sun.tools.javac.util.*; 1.32 import com.sun.tools.javac.code.*; 1.33 +import com.sun.tools.javac.code.Symbol.*; 1.34 import com.sun.tools.javac.tree.*; 1.35 +import com.sun.tools.javac.tree.JCTree.*; 1.36 import com.sun.tools.javac.parser.*; 1.37 import com.sun.tools.javac.comp.*; 1.38 import com.sun.tools.javac.jvm.*; 1.39 - 1.40 -import com.sun.tools.javac.code.Symbol.*; 1.41 -import com.sun.tools.javac.tree.JCTree.*; 1.42 - 1.43 import com.sun.tools.javac.processing.*; 1.44 -import javax.annotation.processing.Processor; 1.45 1.46 import static javax.tools.StandardLocation.CLASS_OUTPUT; 1.47 +import static com.sun.tools.javac.main.OptionName.*; 1.48 import static com.sun.tools.javac.util.JCDiagnostic.DiagnosticFlag.*; 1.49 import static com.sun.tools.javac.util.ListBuffer.lb; 1.50 1.51 -import java.util.HashMap; 1.52 -import java.util.Queue; 1.53 -import javax.lang.model.SourceVersion; 1.54 1.55 /** This class could be the main entry point for GJC when GJC is used as a 1.56 * component in a larger software system. It provides operations to 1.57 @@ -356,22 +355,22 @@ 1.58 1.59 Options options = Options.instance(context); 1.60 1.61 - verbose = options.get("-verbose") != null; 1.62 - sourceOutput = options.get("-printsource") != null; // used to be -s 1.63 - stubOutput = options.get("-stubs") != null; 1.64 - relax = options.get("-relax") != null; 1.65 - printFlat = options.get("-printflat") != null; 1.66 - attrParseOnly = options.get("-attrparseonly") != null; 1.67 - encoding = options.get("-encoding"); 1.68 - lineDebugInfo = options.get("-g:") == null || 1.69 - options.get("-g:lines") != null; 1.70 - genEndPos = options.get("-Xjcov") != null || 1.71 + verbose = options.isSet(VERBOSE); 1.72 + sourceOutput = options.isSet(PRINTSOURCE); // used to be -s 1.73 + stubOutput = options.isSet("-stubs"); 1.74 + relax = options.isSet("-relax"); 1.75 + printFlat = options.isSet("-printflat"); 1.76 + attrParseOnly = options.isSet("-attrparseonly"); 1.77 + encoding = options.get(ENCODING); 1.78 + lineDebugInfo = options.isUnset(G_CUSTOM) || 1.79 + options.isSet(G_CUSTOM, "lines"); 1.80 + genEndPos = options.isSet(XJCOV) || 1.81 context.get(DiagnosticListener.class) != null; 1.82 - devVerbose = options.get("dev") != null; 1.83 - processPcks = options.get("process.packages") != null; 1.84 - werror = options.get("-Werror") != null; 1.85 + devVerbose = options.isSet("dev"); 1.86 + processPcks = options.isSet("process.packages"); 1.87 + werror = options.isSet(WERROR); 1.88 1.89 - verboseCompilePolicy = options.get("verboseCompilePolicy") != null; 1.90 + verboseCompilePolicy = options.isSet("verboseCompilePolicy"); 1.91 1.92 if (attrParseOnly) 1.93 compilePolicy = CompilePolicy.ATTR_ONLY; 1.94 @@ -381,15 +380,15 @@ 1.95 implicitSourcePolicy = ImplicitSourcePolicy.decode(options.get("-implicit")); 1.96 1.97 completionFailureName = 1.98 - (options.get("failcomplete") != null) 1.99 + options.isSet("failcomplete") 1.100 ? names.fromString(options.get("failcomplete")) 1.101 : null; 1.102 1.103 shouldStopPolicy = 1.104 - (options.get("shouldStopPolicy") != null) 1.105 + options.isSet("shouldStopPolicy") 1.106 ? CompileState.valueOf(options.get("shouldStopPolicy")) 1.107 : null; 1.108 - if (options.get("oldDiags") == null) 1.109 + if (options.isUnset("oldDiags")) 1.110 log.setDiagnosticFormatter(RichDiagnosticFormatter.instance(context)); 1.111 } 1.112 1.113 @@ -954,7 +953,7 @@ 1.114 // Process annotations if processing is not disabled and there 1.115 // is at least one Processor available. 1.116 Options options = Options.instance(context); 1.117 - if (options.get("-proc:none") != null) { 1.118 + if (options.isSet(PROC, "none")) { 1.119 processAnnotations = false; 1.120 } else if (procEnvImpl == null) { 1.121 procEnvImpl = new JavacProcessingEnvironment(context, processors); 1.122 @@ -1013,7 +1012,7 @@ 1.123 // annotation processing is to occur with compilation, 1.124 // emit a warning. 1.125 Options options = Options.instance(context); 1.126 - if (options.get("-proc:only") != null) { 1.127 + if (options.isSet(PROC, "only")) { 1.128 log.warning("proc.proc-only.requested.no.procs"); 1.129 todo.clear(); 1.130 } 1.131 @@ -1101,10 +1100,10 @@ 1.132 Options options = Options.instance(context); 1.133 return 1.134 explicitAnnotationProcessingRequested || 1.135 - options.get("-processor") != null || 1.136 - options.get("-processorpath") != null || 1.137 - options.get("-proc:only") != null || 1.138 - options.get("-Xprint") != null; 1.139 + options.isSet(PROCESSOR) || 1.140 + options.isSet(PROCESSORPATH) || 1.141 + options.isSet(PROC, "only") || 1.142 + options.isSet(XPRINT); 1.143 } 1.144 1.145 /**