hotspot/src/share/tools/ProjectCreator/FileTreeCreatorVC7.java
changeset 26710 e9c76272cd40
parent 26668 1b1ec4291abc
parent 26709 87aa4286a4d7
child 26711 1197007e187c
child 26795 4431aeb3083d
child 26809 8d3de4de954d
child 26815 e42b578aa29e
child 26833 fa1e0d1c960f
--- a/hotspot/src/share/tools/ProjectCreator/FileTreeCreatorVC7.java	Wed Jul 05 20:01:50 2017 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,156 +0,0 @@
-import static java.nio.file.FileVisitResult.CONTINUE;
-
-import java.io.IOException;
-import java.nio.file.FileSystems;
-import java.nio.file.FileVisitResult;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.nio.file.attribute.BasicFileAttributes;
-import java.util.Stack;
-import java.util.Vector;
-
-public class FileTreeCreatorVC7 extends FileTreeCreator {
-
-      public FileTreeCreatorVC7(Path startDir, Vector<BuildConfig> allConfigs, WinGammaPlatform wg) {
-         super(startDir, allConfigs, wg);
-      }
-
-      @Override
-      public FileVisitResult visitFile(Path file, BasicFileAttributes attr) {
-         DirAttributes currentFileAttr = attributes.peek().clone();
-         boolean usePch = false;
-         boolean disablePch = false;
-         boolean useIgnore = false;
-         String fileName = file.getFileName().toString();
-
-         // usePch applies to all configs for a file.
-         if (fileName.equals(BuildConfig.getFieldString(null, "UseToGeneratePch"))) {
-            usePch = true;
-         }
-
-         for (BuildConfig cfg : allConfigs) {
-            if (cfg.lookupHashFieldInContext("IgnoreFile", fileName) != null) {
-               useIgnore = true;
-               currentFileAttr.setIgnore(cfg);
-            } else if (cfg.matchesIgnoredPath(file.toAbsolutePath().toString())) {
-               useIgnore = true;
-               currentFileAttr.setIgnore(cfg);
-            }
-
-            if (cfg.lookupHashFieldInContext("DisablePch", fileName) != null) {
-               disablePch = true;
-               currentFileAttr.setDisablePch(cfg);
-            }
-
-            Vector<String> rv = new Vector<String>();
-            cfg.collectRelevantVectors(rv, "AdditionalFile");
-            for(String addFile : rv) {
-               if (addFile.equals(fileName)) {
-                  // supress any ignore
-                  currentFileAttr.removeFromIgnored(cfg);
-               }
-            }
-         }
-
-         if (!useIgnore && !disablePch && !usePch) {
-            wg.tag("File", new String[] { "RelativePath", vcProjLocation.relativize(file).toString()});
-         } else {
-            wg.startTag(
-                  "File",
-                  new String[] { "RelativePath", vcProjLocation.relativize(file).toString()});
-
-            for (BuildConfig cfg : allConfigs) {
-               boolean ignore = currentFileAttr.hasIgnore(cfg);
-               String [] fileConfAttr;
-
-               if (ignore) {
-                  fileConfAttr = new String[] {"Name", cfg.get("Name"), "ExcludedFromBuild", "TRUE" };
-               } else {
-                  fileConfAttr = new String[] {"Name", cfg.get("Name")};
-               }
-
-               if (!disablePch && !usePch && !ignore) {
-                  continue;
-               } else if (!disablePch && !usePch) {
-                  wg.tag("FileConfiguration", fileConfAttr);
-               } else {
-                  wg.startTag("FileConfiguration", fileConfAttr);
-                  if (usePch) {
-                     // usePch always applies to all configs, might not always be so.
-                     wg.tag("Tool", new String[] {
-                           "Name", "VCCLCompilerTool", "UsePrecompiledHeader",
-                     "1" });
-                     assert(!disablePch);
-                  }
-                  if (disablePch) {
-                     if (currentFileAttr.hasDisablePch(cfg)) {
-                        wg.tag("Tool", new String[] {
-                              "Name", "VCCLCompilerTool", "UsePrecompiledHeader",
-                        "0" });
-                     }
-                     assert(!usePch);
-                  }
-                  wg.endTag();
-               }
-            }
-            wg.endTag();
-         }
-
-         return CONTINUE;
-      }
-
-      @Override
-      public FileVisitResult preVisitDirectory(Path path, BasicFileAttributes attrs)
-            throws IOException {
-         Boolean hide = false;
-         DirAttributes newAttr = attributes.peek().clone();
-
-         String rPath;
-         if (path.toAbsolutePath().toString().equals(this.startDir.toAbsolutePath().toString())){
-            rPath = startDir.toString();
-         } else {
-            rPath = path.getFileName().toString();
-         }
-
-         // check per config ignorePaths!
-         for (BuildConfig cfg : allConfigs) {
-            if (cfg.matchesIgnoredPath(path.toAbsolutePath().toString())) {
-               newAttr.setIgnore(cfg);
-            }
-
-            // Hide is always on all configs. And additional files are never hiddden
-            if (cfg.matchesHidePath(path.toAbsolutePath().toString())) {
-               hide = true;
-               break;
-            }
-         }
-
-         if (!hide) {
-            wg.startTag("Filter", new String[] {
-                  "Name", rPath});
-
-            attributes.push(newAttr);
-            return super.preVisitDirectory(path, attrs);
-         } else {
-            return FileVisitResult.SKIP_SUBTREE;
-         }
-      }
-
-      @Override
-      public FileVisitResult postVisitDirectory(Path dir, IOException exc) {
-         //end matching attributes set by ignorepath
-         wg.endTag();
-         attributes.pop();
-
-         return CONTINUE;
-      }
-
-      @Override
-      public FileVisitResult visitFileFailed(Path file, IOException exc) {
-         return CONTINUE;
-      }
-
-      public void writeFileTree() throws IOException {
-         Files.walkFileTree(this.startDir, this);
-      }
-   }
\ No newline at end of file