src/share/classes/com/sun/tools/javac/main/JavaCompiler.java

changeset 700
7b413ac1a720
parent 695
3c9b64e55c5d
child 711
14a707f8ce84
     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      /**

mercurial