Updates the SafeHtml template creator to append template arguments individually rather than appending them in a single statement.  The current form was causing a JavaScript exception when invoking a template with a large number of arguments. Also fixes a small javadoc issue.

Review at http://gwt-code-reviews.appspot.com/1376801

Review by: jat@google.com

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@9807 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/safehtml/rebind/SafeHtmlTemplatesImplMethodCreator.java b/user/src/com/google/gwt/safehtml/rebind/SafeHtmlTemplatesImplMethodCreator.java
index 06c318d..9d32481 100644
--- a/user/src/com/google/gwt/safehtml/rebind/SafeHtmlTemplatesImplMethodCreator.java
+++ b/user/src/com/google/gwt/safehtml/rebind/SafeHtmlTemplatesImplMethodCreator.java
@@ -66,7 +66,6 @@
    */
   private static final String URI_UTILS_FQCN = UriUtils.class.getName();
 
-
   public SafeHtmlTemplatesImplMethodCreator(
       AbstractGeneratorClassCreator classCreator) {
     super(classCreator);
@@ -180,9 +179,7 @@
    */
   private void emitMethodBodyFromTemplate(TreeLogger logger, String template,
       JParameter[] params) throws UnableToCompleteException {
-    println("StringBuilder sb = new java.lang.StringBuilder()");
-    indent();
-    indent();
+    println("StringBuilder sb = new java.lang.StringBuilder();");
 
     HtmlTemplateParser parser = new HtmlTemplateParser(logger);
     parser.parseTemplate(template);
@@ -208,7 +205,6 @@
             + template);
       }
     }
-    println(";");
     outdent();
     outdent();
     println("return new " + BLESSED_STRING_FQCN + "(sb.toString());");
@@ -233,7 +229,7 @@
   private void emitParameterExpression(TreeLogger logger,
       HtmlContext htmlContext, String formalParameterName,
       JType parameterType) {
-    print(".append(");
+    print("sb.append(");
     switch (htmlContext.getType()) {
       case CSS:
         // TODO(xtof): Improve support for CSS.
@@ -267,7 +263,7 @@
               "unknown HTML context for formal template parameter "
                   + formalParameterName + ": " + htmlContext);
     }
-    println(")");
+    println(");");
   }
 
   /**
@@ -276,9 +272,9 @@
    * @param str the {@link String} to emit as a literal
    */
   private void emitStringLiteral(String str) {
-    print(".append(");
+    print("sb.append(");
     print(wrap(str));
-    println(")");
+    println(");");
   }
 
   /**
@@ -293,7 +289,7 @@
    *   <li>If the parameter is of a primitive (e.g., numeric, boolean) type, or
    *       of type {@link SafeHtml}, it is emitted as is, without escaping.
    *   <li>Otherwise, an expression that passes the paramter's value through
-   *       {@link EscapeUtils#htmlEscape(String)} is emitted.
+   *       {@link SafeHtmlUtils#htmlEscape(String)} is emitted.
    * </ul>
    *
    * @param formalParameterName the name of the template method's formal