Revision: 10247
Author: [email protected]
Date: Tue May 31 04:59:43 2011
Log: Consolidates all methodDependencies files into one per split
point.
Review at http://gwt-code-reviews.appspot.com/1453802
Review by: [email protected]
http://code.google.com/p/google-web-toolkit/source/detail?r=10247
Modified:
/trunk/dev/core/src/com/google/gwt/soyc/MakeTopLevelHtmlForPerm.java
=======================================
--- /trunk/dev/core/src/com/google/gwt/soyc/MakeTopLevelHtmlForPerm.java
Thu May 26 09:07:47 2011
+++ /trunk/dev/core/src/com/google/gwt/soyc/MakeTopLevelHtmlForPerm.java
Tue May 31 04:59:43 2011
@@ -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);
--
http://groups.google.com/group/Google-Web-Toolkit-Contributors