equal
deleted
inserted
replaced
260 handleOptions(options, false); |
260 handleOptions(options, false); |
261 } catch (BadArgs e) { |
261 } catch (BadArgs e) { |
262 throw new IllegalArgumentException(e.getMessage()); |
262 throw new IllegalArgumentException(e.getMessage()); |
263 } |
263 } |
264 |
264 |
265 this.classes = new ArrayList<String>(); |
265 this.classes = new ArrayList<>(); |
266 if (classes != null) { |
266 if (classes != null) { |
267 for (String classname: classes) { |
267 for (String classname: classes) { |
268 classname.getClass(); // null-check |
268 classname.getClass(); // null-check |
269 this.classes.add(classname); |
269 this.classes.add(classname); |
270 } |
270 } |
365 String arg = iter.next(); |
365 String arg = iter.next(); |
366 if (arg.startsWith("-")) |
366 if (arg.startsWith("-")) |
367 handleOption(arg, iter); |
367 handleOption(arg, iter); |
368 else if (allowClasses) { |
368 else if (allowClasses) { |
369 if (classes == null) |
369 if (classes == null) |
370 classes = new ArrayList<String>(); |
370 classes = new ArrayList<>(); |
371 classes.add(arg); |
371 classes.add(arg); |
372 while (iter.hasNext()) |
372 while (iter.hasNext()) |
373 classes.add(iter.next()); |
373 classes.add(iter.next()); |
374 } else |
374 } else |
375 throw new BadArgs("err.unknown.option", arg).showUsage(true); |
375 throw new BadArgs("err.unknown.option", arg).showUsage(true); |
412 throw new BadArgs("err.unknown.option", name).showUsage(true); |
412 throw new BadArgs("err.unknown.option", name).showUsage(true); |
413 } |
413 } |
414 |
414 |
415 private Iterable<String> expandAtArgs(Iterable<String> args) throws BadArgs { |
415 private Iterable<String> expandAtArgs(Iterable<String> args) throws BadArgs { |
416 try { |
416 try { |
417 List<String> l = new ArrayList<String>(); |
417 List<String> l = new ArrayList<>(); |
418 for (String arg: args) l.add(arg); |
418 for (String arg: args) l.add(arg); |
419 return Arrays.asList(CommandLine.parse(l.toArray(new String[l.size()]))); |
419 return Arrays.asList(CommandLine.parse(l.toArray(new String[l.size()]))); |
420 } catch (FileNotFoundException e) { |
420 } catch (FileNotFoundException e) { |
421 throw new BadArgs("at.args.file.not.found", e.getLocalizedMessage()); |
421 throw new BadArgs("at.args.file.not.found", e.getLocalizedMessage()); |
422 } catch (IOException e) { |
422 } catch (IOException e) { |
495 |
495 |
496 if (fileManager instanceof JavahFileManager) |
496 if (fileManager instanceof JavahFileManager) |
497 ((JavahFileManager) fileManager).setSymbolFileEnabled(false); |
497 ((JavahFileManager) fileManager).setSymbolFileEnabled(false); |
498 |
498 |
499 JavaCompiler c = ToolProvider.getSystemJavaCompiler(); |
499 JavaCompiler c = ToolProvider.getSystemJavaCompiler(); |
500 List<String> opts = new ArrayList<String>(); |
500 List<String> opts = new ArrayList<>(); |
501 opts.add("-proc:only"); |
501 opts.add("-proc:only"); |
502 opts.addAll(javac_extras); |
502 opts.addAll(javac_extras); |
503 CompilationTask t = c.getTask(log, fileManager, diagnosticListener, opts, classes, null); |
503 CompilationTask t = c.getTask(log, fileManager, diagnosticListener, opts, classes, null); |
504 JavahProcessor p = new JavahProcessor(g); |
504 JavahProcessor p = new JavahProcessor(g); |
505 t.setProcessors(Collections.singleton(p)); |
505 t.setProcessors(Collections.singleton(p)); |
509 throw new Util.Exit(p.exit); |
509 throw new Util.Exit(p.exit); |
510 return ok; |
510 return ok; |
511 } |
511 } |
512 |
512 |
513 private List<File> pathToFiles(String path) { |
513 private List<File> pathToFiles(String path) { |
514 List<File> files = new ArrayList<File>(); |
514 List<File> files = new ArrayList<>(); |
515 for (String f: path.split(File.pathSeparator)) { |
515 for (String f: path.split(File.pathSeparator)) { |
516 if (f.length() > 0) |
516 if (f.length() > 0) |
517 files.add(new File(f)); |
517 files.add(new File(f)); |
518 } |
518 } |
519 return files; |
519 return files; |
616 private String getMessage(Locale locale, String key, Object... args) { |
616 private String getMessage(Locale locale, String key, Object... args) { |
617 if (bundles == null) { |
617 if (bundles == null) { |
618 // could make this a HashMap<Locale,SoftReference<ResourceBundle>> |
618 // could make this a HashMap<Locale,SoftReference<ResourceBundle>> |
619 // and for efficiency, keep a hard reference to the bundle for the task |
619 // and for efficiency, keep a hard reference to the bundle for the task |
620 // locale |
620 // locale |
621 bundles = new HashMap<Locale, ResourceBundle>(); |
621 bundles = new HashMap<>(); |
622 } |
622 } |
623 |
623 |
624 if (locale == null) |
624 if (locale == null) |
625 locale = Locale.getDefault(); |
625 locale = Locale.getDefault(); |
626 |
626 |
655 boolean fullVersion; |
655 boolean fullVersion; |
656 boolean jni; |
656 boolean jni; |
657 boolean llni; |
657 boolean llni; |
658 boolean doubleAlign; |
658 boolean doubleAlign; |
659 boolean force; |
659 boolean force; |
660 Set<String> javac_extras = new LinkedHashSet<String>(); |
660 Set<String> javac_extras = new LinkedHashSet<>(); |
661 |
661 |
662 PrintWriter log; |
662 PrintWriter log; |
663 JavaFileManager fileManager; |
663 JavaFileManager fileManager; |
664 DiagnosticListener<? super JavaFileObject> diagnosticListener; |
664 DiagnosticListener<? super JavaFileObject> diagnosticListener; |
665 Locale task_locale; |
665 Locale task_locale; |
709 |
709 |
710 return true; |
710 return true; |
711 } |
711 } |
712 |
712 |
713 private Set<TypeElement> getAllClasses(Set<? extends TypeElement> classes) { |
713 private Set<TypeElement> getAllClasses(Set<? extends TypeElement> classes) { |
714 Set<TypeElement> allClasses = new LinkedHashSet<TypeElement>(); |
714 Set<TypeElement> allClasses = new LinkedHashSet<>(); |
715 getAllClasses0(classes, allClasses); |
715 getAllClasses0(classes, allClasses); |
716 return allClasses; |
716 return allClasses; |
717 } |
717 } |
718 |
718 |
719 private void getAllClasses0(Iterable<? extends TypeElement> classes, Set<TypeElement> allClasses) { |
719 private void getAllClasses0(Iterable<? extends TypeElement> classes, Set<TypeElement> allClasses) { |