You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by jo...@apache.org on 2016/10/05 00:08:39 UTC

[1/4] git commit: [flex-falcon] [refs/heads/develop] - compiler-jx: plucked some template HTML generation out into separate functions to allow easier overrides in subclasses

Repository: flex-falcon
Updated Branches:
  refs/heads/develop e02ae9e06 -> 936f2562b


compiler-jx: plucked some template HTML generation out into separate functions to allow easier overrides in subclasses


Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/df7e6d6d
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/df7e6d6d
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/df7e6d6d

Branch: refs/heads/develop
Commit: df7e6d6df4c7c653ad25b8abdca1e72f6d6ab5a2
Parents: e02ae9e
Author: Josh Tynjala <jo...@gmail.com>
Authored: Tue Oct 4 16:22:30 2016 -0700
Committer: Josh Tynjala <jo...@gmail.com>
Committed: Tue Oct 4 16:22:30 2016 -0700

----------------------------------------------------------------------
 .../mxml/flexjs/MXMLFlexJSPublisher.java        | 108 +++++++++----------
 1 file changed, 54 insertions(+), 54 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/df7e6d6d/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
----------------------------------------------------------------------
diff --git a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
index e8287b3..7f8bc4c 100644
--- a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
+++ b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
@@ -599,81 +599,81 @@ public class MXMLFlexJSPublisher extends JSGoogPublisher implements IJSPublisher
         if (width != null)
         	result = result.replaceAll("\\$\\{width\\}", width.toString());
         //result = result.replaceAll("\\$\\{useBrowserHistory\\}", useBrowserHistory);
-        
+
         StringBuilder addHTML = new StringBuilder();
-		for (String s : additionalHTML)
-		    addHTML.append(s).append("\n");
-		
-		if ("intermediate".equals(type))
-		{
-			addHTML.append("\t<script type=\"text/javascript\" src=\"./library/closure/goog/base.js\"></script>\n");
-			addHTML.append("\t<script type=\"text/javascript\">\n");
-			addHTML.append(deps);
-			addHTML.append("\t\tgoog.require(\"");
-			addHTML.append(projectName);
-			addHTML.append("\");\n");
-			addHTML.append("\t</script>\n");
-		}
-		else
-		{
-			addHTML.append("\t<script type=\"text/javascript\" src=\"./");
-			addHTML.append(projectName);
-			addHTML.append(".js\"></script>\n");
-		}
+        addHTML.append(getTemplateAdditionalHTML(additionalHTML));
+		addHTML.append(getTemplateDependencies(type, projectName, deps));
         result = result.replaceAll("\\$\\{head\\}", addHTML.toString());
-		
-        StringBuilder htmlFile = new StringBuilder();
-		htmlFile.append("\t<script type=\"text/javascript\">\n");
-		htmlFile.append("\t\tnew ");
-		htmlFile.append(projectName);
-		htmlFile.append("()");
-		htmlFile.append(".start();\n");
-		htmlFile.append("\t</script>\n");
 
-        result = result.replaceAll("\\$\\{body\\}", htmlFile.toString());
+        String templateBody = getTemplateBody(projectName);
+        result = result.replaceAll("\\$\\{body\\}", templateBody);
 
 		writeFile(dirPath + File.separator + ((JSGoogConfiguration) configuration).getHtmlOutputFileName(), result, false);
 	}
 
-    protected void writeHTML(String type, String projectName, String dirPath, String deps, List<String> additionalHTML)
-            throws IOException
+    protected String getTemplateAdditionalHTML(List<String> additionalHTML)
     {
         StringBuilder htmlFile = new StringBuilder();
-        htmlFile.append("<!DOCTYPE html>\n");
-        htmlFile.append("<html>\n");
-        htmlFile.append("<head>\n");
-        htmlFile.append("\t<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge,chrome=1\">\n");
-        htmlFile.append("\t<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\n");
-        htmlFile.append("\t<link rel=\"stylesheet\" type=\"text/css\" href=\"").append(projectName).append(".css\">\n");
-
         for (String s : additionalHTML)
+        {
             htmlFile.append(s).append("\n");
+        }
+        return htmlFile.toString();
+    }
 
+    protected String getTemplateDependencies(String type, String projectName, String deps)
+    {
+        StringBuilder depsHTML = new StringBuilder();
         if ("intermediate".equals(type))
         {
-            htmlFile.append("\t<script type=\"text/javascript\" src=\"./library/closure/goog/base.js\"></script>\n");
-            htmlFile.append("\t<script type=\"text/javascript\">\n");
-            htmlFile.append(deps);
-            htmlFile.append("\t\tgoog.require(\"");
-            htmlFile.append(projectName);
-            htmlFile.append("\");\n");
-            htmlFile.append("\t</script>\n");
+            depsHTML.append("\t<script type=\"text/javascript\" src=\"./library/closure/goog/base.js\"></script>\n");
+            depsHTML.append("\t<script type=\"text/javascript\">\n");
+            depsHTML.append(deps);
+            depsHTML.append("\t\tgoog.require(\"");
+            depsHTML.append(projectName);
+            depsHTML.append("\");\n");
+            depsHTML.append("\t</script>\n");
         }
         else
         {
-            htmlFile.append("\t<script type=\"text/javascript\" src=\"./");
-            htmlFile.append(projectName);
-            htmlFile.append(".js\"></script>\n");
+            depsHTML.append("\t<script type=\"text/javascript\" src=\"./");
+            depsHTML.append(projectName);
+            depsHTML.append(".js\"></script>\n");
         }
+        return depsHTML.toString();
+    }
+
+	protected String getTemplateBody(String projectName)
+    {
+        StringBuilder bodyHTML = new StringBuilder();
+        bodyHTML.append("\t<script type=\"text/javascript\">\n");
+        bodyHTML.append("\t\tnew ");
+        bodyHTML.append(projectName);
+        bodyHTML.append("()");
+        bodyHTML.append(".start();\n");
+        bodyHTML.append("\t</script>\n");
+        return bodyHTML.toString();
+    }
+
+    protected void writeHTML(String type, String projectName, String dirPath, String deps, List<String> additionalHTML)
+            throws IOException
+    {
+        StringBuilder htmlFile = new StringBuilder();
+        htmlFile.append("<!DOCTYPE html>\n");
+        htmlFile.append("<html>\n");
+        htmlFile.append("<head>\n");
+        htmlFile.append("\t<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge,chrome=1\">\n");
+        htmlFile.append("\t<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\n");
+        htmlFile.append("\t<link rel=\"stylesheet\" type=\"text/css\" href=\"").append(projectName).append(".css\">\n");
+
+        htmlFile.append(getTemplateAdditionalHTML(additionalHTML));
+        htmlFile.append(getTemplateDependencies(type, projectName, deps));
 
         htmlFile.append("</head>\n");
         htmlFile.append("<body>\n");
-        htmlFile.append("\t<script type=\"text/javascript\">\n");
-        htmlFile.append("\t\tnew ");
-        htmlFile.append(projectName);
-        htmlFile.append("()");
-        htmlFile.append(".start();\n");
-        htmlFile.append("\t</script>\n");
+
+        htmlFile.append(getTemplateBody(projectName));
+
         htmlFile.append("</body>\n");
         htmlFile.append("</html>");
 


[2/4] git commit: [flex-falcon] [refs/heads/develop] - compiler-jx: JSCPublisher and NodePublisher use new template code generation functions in MXMLFlexJSPublisher

Posted by jo...@apache.org.
compiler-jx: JSCPublisher and NodePublisher use new template code generation functions in MXMLFlexJSPublisher


Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/8c80e2bf
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/8c80e2bf
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/8c80e2bf

Branch: refs/heads/develop
Commit: 8c80e2bf3584e1273cb807c59416649a1a824c28
Parents: df7e6d6
Author: Josh Tynjala <jo...@gmail.com>
Authored: Tue Oct 4 16:41:53 2016 -0700
Committer: Josh Tynjala <jo...@gmail.com>
Committed: Tue Oct 4 16:41:53 2016 -0700

----------------------------------------------------------------------
 .../internal/codegen/js/jsc/JSCPublisher.java   |  5 +-
 .../internal/codegen/js/node/NodePublisher.java | 52 +++++++++++++-------
 2 files changed, 37 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/8c80e2bf/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jsc/JSCPublisher.java
----------------------------------------------------------------------
diff --git a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jsc/JSCPublisher.java b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jsc/JSCPublisher.java
index 1f39d50..fd29f85 100644
--- a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jsc/JSCPublisher.java
+++ b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jsc/JSCPublisher.java
@@ -29,7 +29,6 @@ import org.apache.flex.compiler.internal.projects.FlexJSProject;
 
 public class JSCPublisher extends MXMLFlexJSPublisher
 {
-
     public JSCPublisher(Configuration config, FlexJSProject project)
     {
         super(config, project);
@@ -37,7 +36,7 @@ public class JSCPublisher extends MXMLFlexJSPublisher
 
     @Override
     protected void writeHTML(String type, String projectName, String dirPath,
-            String deps, List<String> additionalHTML) throws IOException
+                             String deps, List<String> additionalHTML) throws IOException
     {
         if ("intermediate".equals(type))
         {
@@ -48,6 +47,6 @@ public class JSCPublisher extends MXMLFlexJSPublisher
             depsFile.append("\");\n");
             writeFile(dirPath + File.separator + projectName + "-dependencies.js", depsFile.toString(), false);
         }
-        // super.writeHTML(type, projectName, dirPath, deps, additionalHTML);
+        //don't call super.writeHTML() because asjsc defaults to no HTML
     }
 }

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/8c80e2bf/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/node/NodePublisher.java
----------------------------------------------------------------------
diff --git a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/node/NodePublisher.java b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/node/NodePublisher.java
index 88b379a..cf3a99e 100644
--- a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/node/NodePublisher.java
+++ b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/node/NodePublisher.java
@@ -35,29 +35,47 @@ public class NodePublisher extends JSCPublisher
     }
 
     @Override
-    protected void writeHTML(String type, String projectName, String dirPath,
-                             String deps, List<String> additionalHTML) throws IOException
+    protected String getTemplateDependencies(String type, String projectName, String deps)
     {
-        StringBuilder contents = new StringBuilder();
+        StringBuilder depsJS = new StringBuilder();
         if ("intermediate".equals(type))
         {
-            contents.append("require(\"./library/closure/goog/bootstrap/nodejs\");\n");
-            contents.append(deps);
-            contents.append("goog.require(\"");
-            contents.append(projectName);
-            contents.append("\");\n");
-            contents.append("new " + projectName + "();");
+            depsJS.append("require(\"./library/closure/goog/bootstrap/nodejs\");\n");
+            depsJS.append(deps);
+            depsJS.append("goog.require(\"");
+            depsJS.append(projectName);
+            depsJS.append("\");\n");
         }
-        else 
+        else
         {
-            contents.append("new ");
-            contents.append("require(\"./");
-            contents.append(projectName);
-            contents.append("\")");
-            contents.append(".");
-            contents.append(projectName);
-            contents.append("();");
+            depsJS.append("var ");
+            depsJS.append(projectName);
+            depsJS.append(" = require(\"./");
+            depsJS.append(projectName);
+            depsJS.append("\").");
+            depsJS.append(projectName);
+            depsJS.append(";\n");
         }
+        return depsJS.toString();
+    }
+
+    @Override
+    protected String getTemplateBody(String projectName)
+    {
+        StringBuilder bodyJS = new StringBuilder();
+        bodyJS.append("new ");
+        bodyJS.append(projectName);
+        bodyJS.append("();");
+        return bodyJS.toString();
+    }
+
+    @Override
+    protected void writeHTML(String type, String projectName, String dirPath,
+                             String deps, List<String> additionalHTML) throws IOException
+    {
+        StringBuilder contents = new StringBuilder();
+        contents.append(getTemplateDependencies(type, projectName, deps));
+        contents.append(getTemplateBody(projectName));
         writeFile(dirPath + File.separator + "index.js", contents.toString(), false);
     }
 }


[3/4] git commit: [flex-falcon] [refs/heads/develop] - compiler-jx: fixed null reference that caused template to fail without root MXML class

Posted by jo...@apache.org.
compiler-jx: fixed null reference that caused template to fail without root MXML class


Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/4f6dea03
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/4f6dea03
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/4f6dea03

Branch: refs/heads/develop
Commit: 4f6dea037ee326cfa5c8f57562368339caace53f
Parents: 8c80e2b
Author: Josh Tynjala <jo...@gmail.com>
Authored: Tue Oct 4 16:55:24 2016 -0700
Committer: Josh Tynjala <jo...@gmail.com>
Committed: Tue Oct 4 16:55:24 2016 -0700

----------------------------------------------------------------------
 .../codegen/mxml/flexjs/MXMLFlexJSPublisher.java | 19 +++++++++++++++----
 1 file changed, 15 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/4f6dea03/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
----------------------------------------------------------------------
diff --git a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
index 7f8bc4c..8f5adbe 100644
--- a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
+++ b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
@@ -585,14 +585,25 @@ public class MXMLFlexJSPublisher extends JSGoogPublisher implements IJSPublisher
 	{
         String input = readCode(template);
         ITargetAttributes ta = project.computeTargetAttributes();
-        Float width = ta.getWidth();
-        Float height = ta.getHeight();
+        Float width = null;
+        Float height = null;
+        String bgcolor = null;
+        String pageTitle = null;
+        if(ta != null)
+        {
+            width = ta.getWidth();
+            height = ta.getHeight();
+            bgcolor = ta.getBackgroundColor();
+            pageTitle = ta.getPageTitle();
+        }
         String result = input.replaceAll("\\$\\{application\\}", projectName);
-        result = result.replaceAll("\\$\\{bgcolor\\}", ta.getBackgroundColor());
+        if (bgcolor != null)
+            result = result.replaceAll("\\$\\{bgcolor\\}", bgcolor);
         //result = result.replaceAll("\\$\\{expressInstallSwf\\}", expressInstallSwf);
         if (height != null)
         	result = result.replaceAll("\\$\\{height\\}", height.toString());
-        result = result.replaceAll("\\$\\{title\\}", ta.getPageTitle());
+        if (pageTitle != null)
+            result = result.replaceAll("\\$\\{title\\}", pageTitle);
         //result = result.replaceAll("\\$\\{version_major\\}", versionMajor);
         //result = result.replaceAll("\\$\\{version_minor\\}", versionMinor);
         //result = result.replaceAll("\\$\\{version_revision\\}", versionRevision);


[4/4] git commit: [flex-falcon] [refs/heads/develop] - compiler-jx: fixed wrong directory path for release HTML template

Posted by jo...@apache.org.
compiler-jx: fixed wrong directory path for release HTML template


Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/936f2562
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/936f2562
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/936f2562

Branch: refs/heads/develop
Commit: 936f2562b285c1641346280637e810f0888213c8
Parents: 4f6dea0
Author: Josh Tynjala <jo...@gmail.com>
Authored: Tue Oct 4 17:02:15 2016 -0700
Committer: Josh Tynjala <jo...@gmail.com>
Committed: Tue Oct 4 17:02:15 2016 -0700

----------------------------------------------------------------------
 .../compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/936f2562/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
----------------------------------------------------------------------
diff --git a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
index 8f5adbe..b4f5c44 100644
--- a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
+++ b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
@@ -435,7 +435,7 @@ public class MXMLFlexJSPublisher extends JSGoogPublisher implements IJSPublisher
         if (!configuration.debug())
         {
         	if (template != null)
-    	        writeTemplate(template, "release", projectName, intermediateDirPath, depsFileData.toString(), gdw.additionalHTML);
+    	        writeTemplate(template, "release", projectName, releaseDirPath, depsFileData.toString(), gdw.additionalHTML);
         	else
         		writeHTML("release", projectName, releaseDirPath, null, gdw.additionalHTML);
         }