< prev index next >

src/jdk.compiler/share/classes/com/sun/tools/javac/api/JavacTool.java

Print this page
*** 39,10 ***
--- 39,11 ---
  
  import javax.lang.model.SourceVersion;
  import javax.tools.*;
  
  import com.sun.source.util.JavacTask;
+ import com.sun.tools.javac.code.Preview;
  import com.sun.tools.javac.file.JavacFileManager;
  import com.sun.tools.javac.main.Arguments;
  import com.sun.tools.javac.main.Option;
  import com.sun.tools.javac.file.BaseFileManager;
  import com.sun.tools.javac.file.CacheFSInfo;

*** 195,10 ***
--- 196,16 ---
                  Target target = Target.instance(context);
                  List<String> list = List.of(target.multiReleaseValue());
                  fileManager.handleOption(Option.MULTIRELEASE.primaryName, list.iterator());
              }
  
+             // pass preview mode to the file manager:
+             if (fileManager.isSupportedOption(Option.PREVIEWMODE.primaryName) == 1) {
+                 Preview preview = Preview.instance(context);
+                 fileManager.handleOption(Option.PREVIEWMODE.primaryName, List.of(String.valueOf(preview.isEnabled())).iterator());
+             }
+ 
              return new JavacTaskImpl(context);
          } catch (PropagatedException ex) {
              throw ex.getCause();
          } catch (ClientCodeException ex) {
              throw new RuntimeException(ex.getCause());
< prev index next >