Reviewers: dconnelly,

Description:
Consolidates all methodDependencies files into one per split point.


Please review this at http://gwt-code-reviews.appspot.com/1453802/

Affected files:
  M dev/core/src/com/google/gwt/soyc/MakeTopLevelHtmlForPerm.java
  D eclipse/samples/Hello/Hello-compModule.launch


Index: dev/core/src/com/google/gwt/soyc/MakeTopLevelHtmlForPerm.java
===================================================================
--- dev/core/src/com/google/gwt/soyc/MakeTopLevelHtmlForPerm.java (revision 10241) +++ dev/core/src/com/google/gwt/soyc/MakeTopLevelHtmlForPerm.java (working copy)
@@ -57,7 +57,7 @@
     public String dependencyLinkForClass(String className) {
String packageName = globalInformation.getClassToPackage().get(className);
       assert packageName != null;
- return dependenciesFileName("initial", packageName) + "#" + className;
+      return dependenciesFileName("initial") + "#" + className;
     }
   }

@@ -355,17 +355,13 @@
outFile.println(" function c(packageRef,classRef,packageHashRef) {"); outFile.println(" var packageName = internedStrings[packageRef];"); outFile.println(" var className = packageName + \".\" + internedStrings[classRef];"); - outFile.println(" var d1 = 'methodDependencies-total-' + internedStrings[packageHashRef] "
-          + "+ '-" + getPermutationId() + ".html';");
+ outFile.println(" var d1 = 'methodDependencies-total-" + getPermutationId() + ".html';");
       outFile.println("    document.write(\"<ul class='soyc-excl'>\");");
outFile.println(" document.write(\"<li><a href='\" + d1 + \"#\" + className + \"'>"
           + "See why it's live</a></li>\");");
       outFile.println("    for (var sp = 1; sp <= "
           + globalInformation.getNumSplitPoints() + "; sp++) {");
- outFile.println(" var d2 = 'methodDependencies-sp' + sp + '-' + "
-          + "internedStrings[packageHashRef] + '-" + getPermutationId()
-          + ".html';");
-
+ outFile.println(" var d2 = 'methodDependencies-sp' + sp + '-" + getPermutationId() + ".html';"); outFile.println(" document.write(\"<li><a href='\" + d2 + \"#\" + className +\"'>" + " See why it's not exclusive to s.p. #\" + sp + \" (\" + spl[sp - 1] + \")"
           + "</a></li>\");");
@@ -1340,10 +1336,8 @@
   /**
    * Returns a file name for the dependencies list.
    */
- private String dependenciesFileName(String depGraphName, String packageName) {
-    return "methodDependencies-" + depGraphName + "-"
-        + hashedFilenameFragment(packageName) + "-" + getPermutationId()
-        + ".html";
+  private String dependenciesFileName(String depGraphName) {
+ return "methodDependencies-" + depGraphName + "-" + getPermutationId() + ".html";
   }

   private String[] getGeneratedTypes(ModuleMetricsArtifact moduleMetrics,
@@ -1676,28 +1670,12 @@
     interner.printInternedDataAsJs(outFile);
     outFile.close();

-    // Separate out the packages to write them into different HTML files.
-    String packageName = "";
     List<String> classesInPackage = new ArrayList<String>();
     for (String method : dependencies.keySet()) {
-      // this key set is already in alphabetical order
-      // get the package of this method, i.e., everything up to .[A-Z]
-      packageName = method.replaceAll("\\.\\p{Upper}.*", "");
-
-      if (curPackageName.compareTo("") == 0) {
-        curPackageName = packageName;
-      } else if (curPackageName.compareTo(packageName) != 0) {
-        makeDependenciesInternedHtml(depGraphName, curPackageName,
-            classesInPackage, dependencies, interner, jsFileName);
-        classesInPackage = new ArrayList<String>();
-        curPackageName = packageName;
-      }
       classesInPackage.add(method);
     }
-    if (classesInPackage.size() > 0) {
-      makeDependenciesInternedHtml(depGraphName, curPackageName,
-          classesInPackage, dependencies, interner, jsFileName);
-    }
+    makeDependenciesInternedHtml(depGraphName,
+        classesInPackage, dependencies, interner, jsFileName);
   }

   /**
@@ -1708,28 +1686,27 @@
    * @throws IOException
    */
   private void makeDependenciesInternedHtml(String depGraphName,
-      String packageName, List<String> classesInPackage,
+      List<String> classesInSplitPoint,
Map<String, String> dependencies, HtmlInterner interner, String jsFileName)
       throws IOException {
     String depGraphDescription = inferDepGraphDescription(depGraphName);
     PrintWriter outFile = null;
     String curClassName = "";

-    String outFileName = dependenciesFileName(depGraphName, packageName);
+    String outFileName = dependenciesFileName(depGraphName);
     outFile = new PrintWriter(getOutFile(outFileName));
-    String packageDescription = packageName.length() == 0
-        ? "the default package" : packageName;
+
     addStandardHtmlProlog(outFile, "Method Dependencies for "
         + depGraphDescription,
- "Method Dependencies for " + depGraphDescription, "Showing Package: "
-            + packageDescription);
+        "Method Dependencies for " + depGraphDescription, null);

     outFile.print("<script src=\"" + jsFileName
         + "\" language=\"javascript\" ></script>");

     // Write out the HTML
     outFile.print("<script>");
-    for (String method : classesInPackage) {
+    boolean first = true;
+    for (String method : classesInSplitPoint) {
       // this key set is already in alphabetical order
       // get the package of this method, i.e., everything up to .[A-Z]

@@ -1737,7 +1714,7 @@
       String depMethod = dependencies.get(method);
       if (curClassName.compareTo(className) != 0) {
         curClassName = className;
-        if (method != classesInPackage.get(0)) {
+        if (method != classesInSplitPoint.get(0)) {
outFile.print("j();"); // close the previous table if not the first
         }
         interner.printDependencyClassHeader(outFile, className);
Index: eclipse/samples/Hello/Hello-compModule.launch
===================================================================
--- eclipse/samples/Hello/Hello-compModule.launch       (revision 10241)
+++ eclipse/samples/Hello/Hello-compModule.launch       (working copy)
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/Hello"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
-<listAttribute key="org.eclipse.jdt.launching.CLASSPATH">
-<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#10;&lt;runtimeClasspathEntry containerPath=&quot;org.eclipse.jdt.launching.JRE_CONTAINER&quot; javaProject=&quot;Hello&quot; path=&quot;1&quot; type=&quot;4&quot;/&gt;&#10;"/> -<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#10;&lt;runtimeClasspathEntry internalArchive=&quot;/Hello/core/src&quot; path=&quot;3&quot; type=&quot;2&quot;/&gt;&#10;"/> -<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#10;&lt;runtimeClasspathEntry internalArchive=&quot;/gwt-user/core/src&quot; path=&quot;3&quot; type=&quot;2&quot;/&gt;&#10;"/> -<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#10;&lt;runtimeClasspathEntry internalArchive=&quot;/gwt-user/core/super&quot; path=&quot;3&quot; type=&quot;2&quot;/&gt;&#10;"/> -<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#10;&lt;runtimeClasspathEntry internalArchive=&quot;/gwt-dev/core/super&quot; path=&quot;3&quot; type=&quot;2&quot;/&gt;&#10;"/> -<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#10;&lt;runtimeClasspathEntry id=&quot;org.eclipse.jdt.launching.classpathentry.defaultClasspath&quot;&gt;&#10;&lt;memento exportedEntriesOnly=&quot;false&quot; project=&quot;Hello&quot;/&gt;&#10;&lt;/runtimeClasspathEntry&gt;&#10;"/>
-</listAttribute>
-<booleanAttribute key="org.eclipse.jdt.launching.DEFAULT_CLASSPATH" value="false"/> -<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="com.google.gwt.dev.CompileModule"/> -<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="com.google.gwt.sample.hello.Hello"/> -<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="Hello"/> -<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea&#13;&#10;-Xmx512M&#13;&#10;-Dgwt.devjar=${gwt_devjar}&#13;&#10;-Dgwt.speedtracerlog=log.html"/>
-</launchConfiguration>


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

Reply via email to