Author: [email protected]
Date: Wed May 20 07:16:36 2009
New Revision: 5442

Modified:
    trunk/tools/soyc-vis/src/com/google/gwt/soyc/MakeTopLevelHtmlForPerm.java
    trunk/tools/soyc-vis/src/com/google/gwt/soyc/Settings.java
    trunk/tools/soyc-vis/src/com/google/gwt/soyc/SoycDashboard.java

Log:
Adds a -out argument to SoycDashboard specifying
the directory to generate the HTML into.

Review by: kprobst


Modified:  
trunk/tools/soyc-vis/src/com/google/gwt/soyc/MakeTopLevelHtmlForPerm.java
==============================================================================
---  
trunk/tools/soyc-vis/src/com/google/gwt/soyc/MakeTopLevelHtmlForPerm.java       
 
(original)
+++  
trunk/tools/soyc-vis/src/com/google/gwt/soyc/MakeTopLevelHtmlForPerm.java       
 
Wed May 20 07:16:36 2009
@@ -149,21 +149,21 @@
      }
      String inputFileName = "roundedCorners.css";
      File inputFile = new File(classPath + inputFileName);
-    File outputFile = new File("roundedCorners.css");
+    File outputFile = getOutFile("roundedCorners.css");
      copyFileOrDirectory(inputFile, outputFile, classPath, inputFileName,  
false);

      inputFileName = "classLevel.css";
      File inputFile2 = new File(classPath + inputFileName);
-    File outputFile2 = new File("classLevel.css");
+    File outputFile2 = getOutFile("classLevel.css");
      copyFileOrDirectory(inputFile2, outputFile2, classPath, inputFileName,
          false);

      inputFileName = "images";
      File inputDir = new File(classPath + "images");
-    File outputDir = new File("images");
+    File outputDir = getOutFile("images");
      copyFileOrDirectory(inputDir, outputDir, classPath, inputFileName,  
true);

-    final PrintWriter outFile = new PrintWriter(shellFileName(breakdown));
+    final PrintWriter outFile = new  
PrintWriter(getOutFile(shellFileName(breakdown)));
      outFile.println("<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML//EN\">");
      outFile.println("<html>");
      outFile.println("<head>");
@@ -279,7 +279,7 @@
          }
        }

-      final PrintWriter outFile = new PrintWriter(outFileName);
+      final PrintWriter outFile = new PrintWriter(getOutFile(outFileName));

        outFile.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML  
4.01//EN\"");
        outFile.println("\"http://www.w3.org/TR/html4/strict.dtd\";>");
@@ -351,8 +351,8 @@
      for (String literalType : nameToLitColl.keySet()) {

        String outFileName = literalType + "Lits.html";
-      final PrintWriter outFile = new PrintWriter(breakdown.getId() + "_"
-          + outFileName);
+      final PrintWriter outFile = new  
PrintWriter(getOutFile(breakdown.getId()
+          + "_" + outFileName));

        outFile.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML  
4.01//EN\"");
        outFile.println("\"http://www.w3.org/TR/html4/strict.dtd\";>");
@@ -461,8 +461,8 @@

      for (String literalType :  
nameToLitColl.get("string").stringTypeToSize.keySet()) {
        String outFileName = literalType + "Strings.html";
-      final PrintWriter outFile = new PrintWriter(breakdown.getId() + "_"
-          + outFileName);
+      final PrintWriter outFile = new  
PrintWriter(getOutFile(breakdown.getId()
+          + "_" + outFileName));

        outFile.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML  
4.01//EN\"");
        outFile.println("\"http://www.w3.org/TR/html4/strict.dtd\";>");
@@ -579,7 +579,8 @@
    }

    public void makeTopLevelShell() throws IOException {
-    PrintWriter outFile = new PrintWriter("SoycDashboard-index.html");
+    PrintWriter outFile = new PrintWriter(
+        getOutFile("SoycDashboard-index.html"));

      outFile.println("<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML//EN\">");
      outFile.println("<html>");
@@ -703,6 +704,15 @@
      }
    }

+  /**
+   * Return a {...@link File} object for a file to be emitted into the output
+   * directory.
+   */
+  private static File getOutFile(String localFileName) {
+    File outDir = new File(GlobalInformation.settings.out.get());
+    return new File(outDir, localFileName);
+  }
+
    private static String makeCodeTypeHtml(SizeBreakdown breakdown,
        Map<String, CodeCollection> nameToCodeColl) throws IOException {
      String outFileName = breakdown.getId() + "_codeTypeBreakdown.html";
@@ -725,7 +735,7 @@
        }
      }

-    final PrintWriter outFile = new PrintWriter(outFileName);
+    final PrintWriter outFile = new PrintWriter(getOutFile(outFileName));

      outFile.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\"");
      outFile.println("\"http://www.w3.org/TR/html4/strict.dtd\";>");
@@ -802,7 +812,7 @@
        }
      }

-    final PrintWriter outFile = new PrintWriter(outFileName);
+    final PrintWriter outFile = new PrintWriter(getOutFile(outFileName));

      outFile.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\"");
      outFile.println("\"http://www.w3.org/TR/html4/strict.dtd\";>");
@@ -874,7 +884,7 @@
        }
      }

-    final PrintWriter outFile = new PrintWriter(outFileName);
+    final PrintWriter outFile = new PrintWriter(getOutFile(outFileName));

      outFile.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\"");
      outFile.println("\"http://www.w3.org/TR/html4/strict.dtd\";>");
@@ -934,7 +944,7 @@
    private String makeStringLiteralsHtml(SizeBreakdown breakdown,
        Map<String, LiteralsCollection> nameToLitColl) throws IOException {
      String outFileName = breakdown.getId()  
+ "_stringLiteralsBreakdown.html";
-    final PrintWriter outFile = new PrintWriter(outFileName);
+    final PrintWriter outFile = new PrintWriter(getOutFile(outFileName));

      outFile.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\"");
      outFile.println("\"http://www.w3.org/TR/html4/strict.dtd\";>");
@@ -1053,7 +1063,7 @@

          String outFileName = origOutFileName + filename(curPackageName)
              + ".html";
-        outFile = new PrintWriter(outFileName);
+        outFile = new PrintWriter(getOutFile(outFileName));

          outFile.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML  
4.01//EN\"");
          outFile.println("\"http://www.w3.org/TR/html4/strict.dtd\";>");
@@ -1146,8 +1156,8 @@
          }
        }

-      PrintWriter outFile = new  
PrintWriter(classesInPackageFileName(breakdown,
-          packageName));
+      PrintWriter outFile = new PrintWriter(
+          getOutFile(classesInPackageFileName(breakdown, packageName)));

        outFile.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML  
4.01//EN\"");
        outFile.println("\"http://www.w3.org/TR/html4/strict.dtd\";>");
@@ -1292,7 +1302,7 @@
          String outFileName = "splitPoint-" +  
filename(curSplitPointLocation)
              + "-Classes.html";

-        final PrintWriter outFile = new PrintWriter(outFileName);
+        final PrintWriter outFile = new  
PrintWriter(getOutFile(outFileName));

          outFile.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML  
4.01//EN\"");
          outFile.println("\"http://www.w3.org/TR/html4/strict.dtd\";>");

Modified: trunk/tools/soyc-vis/src/com/google/gwt/soyc/Settings.java
==============================================================================
--- trunk/tools/soyc-vis/src/com/google/gwt/soyc/Settings.java  (original)
+++ trunk/tools/soyc-vis/src/com/google/gwt/soyc/Settings.java  Wed May 20  
07:16:36 2009
@@ -157,6 +157,8 @@

    public String depFileName;

+  public final Setting<String> out = addSetting(new StringSetting("-out",
+      "dir", ".", "output directory"));
    public final Setting<String> resources = addSetting(new StringSetting(
        "-resources", "jarfile", null,
        " directory or jar file with CSS, etc., resources"));

Modified: trunk/tools/soyc-vis/src/com/google/gwt/soyc/SoycDashboard.java
==============================================================================
--- trunk/tools/soyc-vis/src/com/google/gwt/soyc/SoycDashboard.java      
(original)
+++ trunk/tools/soyc-vis/src/com/google/gwt/soyc/SoycDashboard.java     Wed May 
 
20 07:16:36 2009
@@ -21,6 +21,7 @@
  import org.xml.sax.helpers.DefaultHandler;

  import java.io.BufferedInputStream;
+import java.io.File;
  import java.io.FileInputStream;
  import java.io.FileNotFoundException;
  import java.io.IOException;
@@ -54,6 +55,8 @@
        GlobalInformation.displaySplitPoints =  
(settings.splitPointsFileName != null);

        MakeTopLevelHtmlForPerm makeTopLevelHtmlForPerm = new  
MakeTopLevelHtmlForPerm();
+
+      new File(settings.out.get()).mkdir();

        if (GlobalInformation.displayDependencies == true) {
          /**

--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---

Reply via email to