Repository: flex-falcon Updated Branches: refs/heads/develop 203f92f09 -> bc12e359f
add ability to inject html in the FalconJX generated index.html Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/bc12e359 Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/bc12e359 Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/bc12e359 Branch: refs/heads/develop Commit: bc12e359f2c28801c24888cd5bfd65b39e90e70e Parents: 203f92f Author: Alex Harui <aha...@apache.org> Authored: Mon May 5 13:33:03 2014 -0700 Committer: Alex Harui <aha...@apache.org> Committed: Mon May 5 13:33:03 2014 -0700 ---------------------------------------------------------------------- .../mxml/flexjs/MXMLFlexJSPublisher.java | 9 +++++--- .../compiler/internal/graph/GoogDepsWriter.java | 22 ++++++++++++++++++++ 2 files changed, 28 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/bc12e359/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java ---------------------------------------------------------------------- diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java index ea423d7..f10197c 100644 --- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java +++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java @@ -185,8 +185,8 @@ public class MXMLFlexJSPublisher extends JSGoogPublisher implements File srcDeps = new File(depsSrcFilePath); - writeHTML("intermediate", projectName, intermediateDirPath); - writeHTML("release", projectName, releaseDirPath); + writeHTML("intermediate", projectName, intermediateDirPath, gdw.additionalHTML); + writeHTML("release", projectName, releaseDirPath, gdw.additionalHTML); writeCSS(projectName, intermediateDirPath); writeCSS(projectName, releaseDirPath); @@ -333,7 +333,7 @@ public class MXMLFlexJSPublisher extends JSGoogPublisher implements return code; } - private void writeHTML(String type, String projectName, String dirPath) + private void writeHTML(String type, String projectName, String dirPath, List<String> additionalHTML) throws IOException { StringBuilder htmlFile = new StringBuilder(); @@ -345,6 +345,9 @@ public class MXMLFlexJSPublisher extends JSGoogPublisher implements htmlFile.append("\t<link rel=\"stylesheet\" type=\"text/css\" href=\"" + projectName + ".css\">\n"); + for (String s : additionalHTML) + htmlFile.append(s + "\n"); + if (type == "intermediate") { htmlFile.append("\t<script type=\"text/javascript\" src=\"./library/closure/goog/base.js\"></script>\n"); http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/bc12e359/compiler.jx/src/org/apache/flex/compiler/internal/graph/GoogDepsWriter.java ---------------------------------------------------------------------- diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/graph/GoogDepsWriter.java b/compiler.jx/src/org/apache/flex/compiler/internal/graph/GoogDepsWriter.java index 9ec9c1b..cde5681 100644 --- a/compiler.jx/src/org/apache/flex/compiler/internal/graph/GoogDepsWriter.java +++ b/compiler.jx/src/org/apache/flex/compiler/internal/graph/GoogDepsWriter.java @@ -105,6 +105,8 @@ public class GoogDepsWriter { public ArrayList<String> filePathsInOrder = new ArrayList<String>(); + public ArrayList<String> additionalHTML = new ArrayList<String>(); + private HashMap<String, GoogDep> visited = new HashMap<String, GoogDep>(); private ArrayList<GoogDep> sort(String rootClassName) @@ -316,11 +318,26 @@ public class GoogDepsWriter { try { fis = new FileInputStream(fn); Scanner scanner = new Scanner(fis, "UTF-8"); + boolean inInjectHTML = false; while (scanner.hasNextLine()) { String s = scanner.nextLine(); if (s.indexOf("goog.inherits") > -1) break; + if (inInjectHTML) + { + int c = s.indexOf("</inject_html>"); + if (c > -1) + { + inInjectHTML = false; + continue; + } + } + if (inInjectHTML) + { + additionalHTML.add(s); + continue; + } int c = s.indexOf("goog.require"); if (c > -1) { @@ -328,6 +345,11 @@ public class GoogDepsWriter { s = s.substring(c + 14, c2 - 1); deps.add(s); } + c = s.indexOf("<inject_html>"); + if (c > -1) + { + inInjectHTML = true; + } } scanner.close(); } catch (FileNotFoundException e) {