You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lo...@apache.org on 2016/04/20 13:51:07 UTC
svn commit: r1740123 - in
/myfaces/tobago/branches/tobago-3.0.x/tobago-core/src:
main/java/org/apache/myfaces/tobago/internal/webapp/
main/java/org/apache/myfaces/tobago/webapp/
test/java/org/apache/myfaces/tobago/webapp/
Author: lofwyr
Date: Wed Apr 20 11:51:07 2016
New Revision: 1740123
URL: http://svn.apache.org/viewvc?rev=1740123&view=rev
Log:
TOBAGO-1556: Better readable HTML source code, whitespaces from TobagoResponseWriter
Modified:
myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/HtmlResponseWriter.java
myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/JsonResponseWriter.java
myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/TobagoResponseWriterBase.java
myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/XmlResponseWriter.java
myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriter.java
myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriterUnitTest.java
Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/HtmlResponseWriter.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/HtmlResponseWriter.java?rev=1740123&r1=1740122&r2=1740123&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/HtmlResponseWriter.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/HtmlResponseWriter.java Wed Apr 20 11:51:07 2016
@@ -34,8 +34,7 @@ import java.util.Arrays;
public class HtmlResponseWriter extends TobagoResponseWriterBase {
- private static final String HTML_DOCTYPE =
- "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">";
+ private static final String HTML_DOCTYPE = "<!DOCTYPE html>";
private final WriterUtils helper;
private FastStringWriter javascriptWriter;
@@ -123,7 +122,7 @@ public class HtmlResponseWriter extends
@Override
protected void closeEmptyTag() throws IOException {
- getWriter().write("\n>");
+ getWriter().write(">");
}
@Override
Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/JsonResponseWriter.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/JsonResponseWriter.java?rev=1740123&r1=1740122&r2=1740123&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/JsonResponseWriter.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/JsonResponseWriter.java Wed Apr 20 11:51:07 2016
@@ -112,7 +112,7 @@ public class JsonResponseWriter extends
}
@Override
- protected void endElementInternal(final Writer writer, final String name) throws IOException {
+ protected void endElementInternal(final Writer writer, final String name, final boolean inline) throws IOException {
if (isStartStillOpen()) {
writer.write(">");
}
Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/TobagoResponseWriterBase.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/TobagoResponseWriterBase.java?rev=1740123&r1=1740122&r2=1740123&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/TobagoResponseWriterBase.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/TobagoResponseWriterBase.java Wed Apr 20 11:51:07 2016
@@ -19,6 +19,7 @@
package org.apache.myfaces.tobago.internal.webapp;
+import org.apache.myfaces.tobago.internal.util.StringUtils;
import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
import org.apache.myfaces.tobago.renderkit.html.HtmlTypes;
import org.apache.myfaces.tobago.renderkit.html.MarkupLanguageAttributes;
@@ -39,6 +40,8 @@ public abstract class TobagoResponseWrit
protected static final char[] XML_VERSION_1_0_ENCODING_UTF_8_CHARS = XML_VERSION_1_0_ENCODING_UTF_8.toCharArray();
+ private int i = 0;
+
private UIComponent component;
private boolean startStillOpen;
@@ -159,7 +162,7 @@ public abstract class TobagoResponseWrit
protected void closeOpenTag() throws IOException {
if (startStillOpen) {
- writer.write("\n>");
+ writer.write(">");
startStillOpen = false;
}
}
@@ -192,6 +195,9 @@ public abstract class TobagoResponseWrit
@Override
public void startElement(final HtmlElements name) throws IOException {
startElementInternal(writer, name.getValue(), null);
+ if (!name.isVoid()) {
+ i++;
+ }
}
protected void startElementInternal(final Writer writer, final String name, final UIComponent currentComponent)
@@ -199,9 +205,9 @@ public abstract class TobagoResponseWrit
this.component = currentComponent;
// closeOpenTag();
if (startStillOpen) {
- writer.write("\n>");
+ writer.write(">");
}
- writer.write("<");
+ writer.write("\n" + StringUtils.repeat(" ", i) + "<");
writer.write(name);
startStillOpen = true;
}
@@ -211,7 +217,7 @@ public abstract class TobagoResponseWrit
if (HtmlElements.isVoid(name)) {
closeEmptyTag();
} else {
- endElementInternal(writer, name);
+ endElementInternal(writer, name, false);
}
startStillOpen = false;
}
@@ -221,7 +227,10 @@ public abstract class TobagoResponseWrit
if (name.isVoid()) {
closeEmptyTag();
} else {
- endElementInternal(writer, name.getValue());
+ if (!name.isVoid()) {
+ i--;
+ }
+ endElementInternal(writer, name.getValue(), name.isInline());
}
startStillOpen = false;
}
@@ -230,7 +239,7 @@ public abstract class TobagoResponseWrit
public void writeComment(final Object obj) throws IOException {
closeOpenTag();
final String comment = obj.toString();
- write("<!--");
+ write("\n" + StringUtils.repeat(" ", i) + "<!--");
write(comment);
write("-->");
}
@@ -289,14 +298,17 @@ public abstract class TobagoResponseWrit
}
}
- protected void endElementInternal(final Writer writer, final String name) throws IOException {
- if (startStillOpen) {
- writer.write("\n>");
- }
- writer.write("</");
- writer.write(name);
-// writer.write("\n>"); // FIXME: this makes problems with Tidy
+ protected void endElementInternal(final Writer writer, final String name, final boolean inline) throws IOException {
+ if (startStillOpen) {
writer.write(">");
+ }
+ if (inline) {
+ writer.write("</");
+ } else {
+ writer.write("\n" + StringUtils.repeat(" ", i) + "</");
+ }
+ writer.write(name);
+ writer.write(">");
}
protected abstract void closeEmptyTag() throws IOException;
Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/XmlResponseWriter.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/XmlResponseWriter.java?rev=1740123&r1=1740122&r2=1740123&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/XmlResponseWriter.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/webapp/XmlResponseWriter.java Wed Apr 20 11:51:07 2016
@@ -70,7 +70,7 @@ public final class XmlResponseWriter ext
@Override
public void closeEmptyTag() throws IOException {
- getWriter().write("\n/>");
+ getWriter().write("/>");
}
@Override
Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriter.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriter.java?rev=1740123&r1=1740122&r2=1740123&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriter.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriter.java Wed Apr 20 11:51:07 2016
@@ -299,4 +299,6 @@ public abstract class TobagoResponseWrit
public void endCDATA() throws IOException {
write("]]>");
}
+
+// protected abstract void writeNewline() throws IOException;
}
Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriterUnitTest.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriterUnitTest.java?rev=1740123&r1=1740122&r2=1740123&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriterUnitTest.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriterUnitTest.java Wed Apr 20 11:51:07 2016
@@ -46,23 +46,21 @@ public class TobagoResponseWriterUnitTes
writer.startDocument();
writer.endDocument();
Assert.assertEquals("content expected",
- "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">\n"
- + "<html\n"
- + "></html>", stringWriter.toString());
+ "<!DOCTYPE html>\n\n<html>\n</html>", stringWriter.toString());
}
@Test
public void testEmptyTag() throws IOException {
writer.startElement(HtmlElements.INPUT);
writer.endElement(HtmlElements.INPUT);
- Assert.assertEquals("empty tag", "<input\n>", stringWriter.toString());
+ Assert.assertEquals("empty tag", "\n<input>", stringWriter.toString());
}
@Test
public void testNormalTag() throws IOException {
writer.startElement(HtmlElements.SELECT);
writer.endElement(HtmlElements.SELECT);
- Assert.assertEquals("normal tag", "<select\n></select>", stringWriter.toString());
+ Assert.assertEquals("normal tag", "\n<select></select>", stringWriter.toString());
}
@Test
@@ -70,7 +68,7 @@ public class TobagoResponseWriterUnitTes
writer.startElement(HtmlElements.SELECT);
writer.writeAttribute(HtmlAttributes.VALUE, 0);
writer.endElement(HtmlElements.SELECT);
- Assert.assertEquals("attr tag", "<select value='0'\n></select>", stringWriter.toString());
+ Assert.assertEquals("attr tag", "\n<select value='0'></select>", stringWriter.toString());
}
@Test
@@ -80,7 +78,7 @@ public class TobagoResponseWriterUnitTes
writer.endElement(HtmlElements.A);
Assert.assertEquals(
"uri attr tag",
- "<a href='http://example.org/web?text=%C3%A4%C3%B6%C3%BC%C3%9F'\n></a>",
+ "\n<a href='http://example.org/web?text=%C3%A4%C3%B6%C3%BC%C3%9F'></a>",
stringWriter.toString());
}
@@ -89,7 +87,7 @@ public class TobagoResponseWriterUnitTes
writer.startElement(HtmlElements.SELECT);
writer.writeAttribute(HtmlAttributes.VALUE, "-<->-ü-â¬-", true);
writer.endElement(HtmlElements.SELECT);
- Assert.assertEquals("attr tag", "<select value='-<->-ü-â¬-'\n></select>", stringWriter.toString());
+ Assert.assertEquals("attr tag", "\n<select value='-<->-ü-â¬-'></select>", stringWriter.toString());
}
@Test
@@ -97,7 +95,7 @@ public class TobagoResponseWriterUnitTes
writer.startElement(HtmlElements.TEXTAREA);
writer.writeText("-<->-ü-â¬-");
writer.endElement(HtmlElements.TEXTAREA);
- Assert.assertEquals("attr tag", "<textarea\n>-<->-ü-â¬-</textarea>", stringWriter.toString());
+ Assert.assertEquals("attr tag", "\n<textarea>-<->-ü-â¬-</textarea>", stringWriter.toString());
}
@Test
@@ -127,7 +125,7 @@ public class TobagoResponseWriterUnitTes
result = result.replace("/", "/");
result = result.replace("<", "<");
result = result.replace(">", ">");
- Assert.assertEquals("all chars", "<select value='" + result + "'\n>" + result + "</select>",
+ Assert.assertEquals("all chars", "\n<select value='" + result + "'>" + result + "</select>",
stringWriter.toString());
}
@@ -139,7 +137,7 @@ public class TobagoResponseWriterUnitTes
writer1.writeAttribute(HtmlAttributes.READONLY, true);
writer1.endElement(HtmlElements.INPUT);
writer1.close();
- Assert.assertEquals("<input value='Gutschein über 100 €.' readonly='readonly'\n>",
+ Assert.assertEquals("\n<input value='Gutschein über 100 €.' readonly='readonly'>",
stringWriter.toString());
}