You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ju...@apache.org on 2009/02/09 15:42:38 UTC
svn commit: r742536 - in /commons/sandbox/xml/trunk/src:
main/java/org/apache/commons/xml/DefaultContentHandler.java
main/java/org/apache/commons/xml/SerializingContentHandler.java
test/java/org/apache/commons/xml/SerializingContentHandlerTest.java
Author: jukka
Date: Mon Feb 9 14:42:37 2009
New Revision: 742536
URL: http://svn.apache.org/viewvc?rev=742536&view=rev
Log:
xml: Added the SerializingContentHandler and DefaultContentHandler classes based on earlier code from the Cocoon and Jackrabbit projects
Added:
commons/sandbox/xml/trunk/src/main/java/org/apache/commons/xml/DefaultContentHandler.java
- copied, changed from r742519, jackrabbit/trunk/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/xml/DefaultContentHandler.java
commons/sandbox/xml/trunk/src/main/java/org/apache/commons/xml/SerializingContentHandler.java (contents, props changed)
- copied, changed from r742516, jackrabbit/trunk/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/xml/SerializingContentHandler.java
commons/sandbox/xml/trunk/src/test/java/org/apache/commons/xml/SerializingContentHandlerTest.java (contents, props changed)
- copied, changed from r742526, jackrabbit/trunk/jackrabbit-jcr-commons/src/test/java/org/apache/jackrabbit/commons/xml/SerializingContentHandlerTest.java
Copied: commons/sandbox/xml/trunk/src/main/java/org/apache/commons/xml/DefaultContentHandler.java (from r742519, jackrabbit/trunk/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/xml/DefaultContentHandler.java)
URL: http://svn.apache.org/viewvc/commons/sandbox/xml/trunk/src/main/java/org/apache/commons/xml/DefaultContentHandler.java?p2=commons/sandbox/xml/trunk/src/main/java/org/apache/commons/xml/DefaultContentHandler.java&p1=jackrabbit/trunk/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/xml/DefaultContentHandler.java&r1=742519&r2=742536&rev=742536&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/xml/DefaultContentHandler.java (original)
+++ commons/sandbox/xml/trunk/src/main/java/org/apache/commons/xml/DefaultContentHandler.java Mon Feb 9 14:42:37 2009
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.jackrabbit.commons.xml;
+package org.apache.commons.xml;
import org.xml.sax.Attributes;
import org.xml.sax.ContentHandler;
@@ -23,10 +23,8 @@
import org.xml.sax.helpers.DefaultHandler;
/**
- * Adapter class for exposing a {@link ContentHandler} instance as
- * {@link DefaultHandler} object.
- *
- * @since Jackrabbit JCR Commons 1.5
+ * Adapter that makes a {@link ContentHandler} instance look like a
+ * {@link DefaultHandler}.
*/
public class DefaultContentHandler extends DefaultHandler {
Copied: commons/sandbox/xml/trunk/src/main/java/org/apache/commons/xml/SerializingContentHandler.java (from r742516, jackrabbit/trunk/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/xml/SerializingContentHandler.java)
URL: http://svn.apache.org/viewvc/commons/sandbox/xml/trunk/src/main/java/org/apache/commons/xml/SerializingContentHandler.java?p2=commons/sandbox/xml/trunk/src/main/java/org/apache/commons/xml/SerializingContentHandler.java&p1=jackrabbit/trunk/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/xml/SerializingContentHandler.java&r1=742516&r2=742536&rev=742536&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/xml/SerializingContentHandler.java (original)
+++ commons/sandbox/xml/trunk/src/main/java/org/apache/commons/xml/SerializingContentHandler.java Mon Feb 9 14:42:37 2009
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.jackrabbit.commons.xml;
+package org.apache.commons.xml;
import java.io.OutputStream;
import java.io.StringWriter;
@@ -51,11 +51,12 @@
* JDK 1.4) to ignore namespaces if they were not present as xmlns attributes.
* <p>
* NOTE: The code in this class was originally written for Apache Cocoon and
- * is included with some modifications here in Apache Jackrabbit. See the
+ * was then included with some modifications in Apache Jackrabbit. This
+ * version is based on the code from Jackrabbit. See the
* org.apache.cocoon.serialization.AbstractTextSerializer class in the
- * cocoon-pipeline-impl component for the original code.
- *
- * @since Jackrabbit JCR Commons 1.5
+ * cocoon-pipeline-impl component for the original Cocoon code, and the
+ * org.apache.jackrabbit.commons.xml.SerializingContentHandler class in
+ * the jackrabbit-jcr-commons component for the Jackrabbit version.
*/
public class SerializingContentHandler extends DefaultContentHandler {
Propchange: commons/sandbox/xml/trunk/src/main/java/org/apache/commons/xml/SerializingContentHandler.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied: commons/sandbox/xml/trunk/src/test/java/org/apache/commons/xml/SerializingContentHandlerTest.java (from r742526, jackrabbit/trunk/jackrabbit-jcr-commons/src/test/java/org/apache/jackrabbit/commons/xml/SerializingContentHandlerTest.java)
URL: http://svn.apache.org/viewvc/commons/sandbox/xml/trunk/src/test/java/org/apache/commons/xml/SerializingContentHandlerTest.java?p2=commons/sandbox/xml/trunk/src/test/java/org/apache/commons/xml/SerializingContentHandlerTest.java&p1=jackrabbit/trunk/jackrabbit-jcr-commons/src/test/java/org/apache/jackrabbit/commons/xml/SerializingContentHandlerTest.java&r1=742526&r2=742536&rev=742536&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-commons/src/test/java/org/apache/jackrabbit/commons/xml/SerializingContentHandlerTest.java (original)
+++ commons/sandbox/xml/trunk/src/test/java/org/apache/commons/xml/SerializingContentHandlerTest.java Mon Feb 9 14:42:37 2009
@@ -1,108 +1,108 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.jackrabbit.commons.xml;
-
-import java.io.StringWriter;
-
-import junit.framework.TestCase;
-
-import org.xml.sax.ContentHandler;
-import org.xml.sax.helpers.AttributesImpl;
-
-public class SerializingContentHandlerTest extends TestCase {
-
- public void testSerializingContentHandler() throws Exception {
- StringWriter writer = new StringWriter();
-
- ContentHandler handler =
- SerializingContentHandler.getSerializer(writer);
- handler.startDocument();
- handler.startPrefixMapping("p", "uri");
- handler.startElement("uri", "a", "p:a", new AttributesImpl());
- AttributesImpl attributes = new AttributesImpl();
- attributes.addAttribute("uri", "foo", "p:foo", "CDATA", "bar");
- handler.startElement(null, "b", "b", attributes);
- handler.characters("abc".toCharArray(), 0, 3);
- handler.endElement(null, "b", "b");
- handler.startElement(null, "c", "c", new AttributesImpl());
- handler.endElement(null, "c", "c");
- handler.characters("xyz".toCharArray(), 0, 3);
- handler.endElement("uri", "a", "p:a");
- handler.endPrefixMapping("p");
- handler.endDocument();
-
- String xml = writer.toString();
- assertContains(xml, "<p:a");
- assertContains(xml, "xmlns:p");
- assertContains(xml, "=");
- assertContains(xml, "uri");
- assertContains(xml, ">");
- assertContains(xml, "<b");
- assertContains(xml, "p:foo");
- assertContains(xml, "bar");
- assertContains(xml, "abc");
- assertContains(xml, "</b>");
- assertContains(xml, "<c/>");
- assertContains(xml, "xyz");
- assertContains(xml, "</p:a>");
- }
-
- /**
- * Test case for JCR-1767.
- *
- * @see <a href="https://issues.apache.org/jira/browse/JCR-1767">JCR-1767</a>
- */
- public void testNoPrefixMappingCalls() throws Exception {
- StringWriter writer = new StringWriter();
-
- ContentHandler handler =
- SerializingContentHandler.getSerializer(writer);
- handler.startDocument();
- handler.startElement("uri", "a", "p:a", new AttributesImpl());
- AttributesImpl attributes = new AttributesImpl();
- attributes.addAttribute("uri", "foo", "p:foo", "CDATA", "bar");
- handler.startElement(null, "b", "b", attributes);
- handler.characters("abc".toCharArray(), 0, 3);
- handler.endElement(null, "b", "b");
- handler.startElement(null, "c", "c", new AttributesImpl());
- handler.endElement(null, "c", "c");
- handler.characters("xyz".toCharArray(), 0, 3);
- handler.endElement("uri", "a", "p:a");
- handler.endDocument();
-
- String xml = writer.toString();
- assertContains(xml, "<p:a");
- assertContains(xml, "xmlns:p");
- assertContains(xml, "=");
- assertContains(xml, "uri");
- assertContains(xml, ">");
- assertContains(xml, "<b");
- assertContains(xml, "p:foo");
- assertContains(xml, "bar");
- assertContains(xml, "abc");
- assertContains(xml, "</b>");
- assertContains(xml, "<c/>");
- assertContains(xml, "xyz");
- assertContains(xml, "</p:a>");
- }
-
- private void assertContains(String haystack, String needle) {
- if (haystack.indexOf(needle) == -1) {
- fail("'" + haystack + "' does not contain '" + needle+ "'");
- }
- }
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.xml;
+
+import java.io.StringWriter;
+
+import junit.framework.TestCase;
+
+import org.xml.sax.ContentHandler;
+import org.xml.sax.helpers.AttributesImpl;
+
+public class SerializingContentHandlerTest extends TestCase {
+
+ public void testSerializingContentHandler() throws Exception {
+ StringWriter writer = new StringWriter();
+
+ ContentHandler handler =
+ SerializingContentHandler.getSerializer(writer);
+ handler.startDocument();
+ handler.startPrefixMapping("p", "uri");
+ handler.startElement("uri", "a", "p:a", new AttributesImpl());
+ AttributesImpl attributes = new AttributesImpl();
+ attributes.addAttribute("uri", "foo", "p:foo", "CDATA", "bar");
+ handler.startElement(null, "b", "b", attributes);
+ handler.characters("abc".toCharArray(), 0, 3);
+ handler.endElement(null, "b", "b");
+ handler.startElement(null, "c", "c", new AttributesImpl());
+ handler.endElement(null, "c", "c");
+ handler.characters("xyz".toCharArray(), 0, 3);
+ handler.endElement("uri", "a", "p:a");
+ handler.endPrefixMapping("p");
+ handler.endDocument();
+
+ String xml = writer.toString();
+ assertContains(xml, "<p:a");
+ assertContains(xml, "xmlns:p");
+ assertContains(xml, "=");
+ assertContains(xml, "uri");
+ assertContains(xml, ">");
+ assertContains(xml, "<b");
+ assertContains(xml, "p:foo");
+ assertContains(xml, "bar");
+ assertContains(xml, "abc");
+ assertContains(xml, "</b>");
+ assertContains(xml, "<c/>");
+ assertContains(xml, "xyz");
+ assertContains(xml, "</p:a>");
+ }
+
+ /**
+ * Test case for JCR-1767.
+ *
+ * @see <a href="https://issues.apache.org/jira/browse/JCR-1767">JCR-1767</a>
+ */
+ public void testNoPrefixMappingCalls() throws Exception {
+ StringWriter writer = new StringWriter();
+
+ ContentHandler handler =
+ SerializingContentHandler.getSerializer(writer);
+ handler.startDocument();
+ handler.startElement("uri", "a", "p:a", new AttributesImpl());
+ AttributesImpl attributes = new AttributesImpl();
+ attributes.addAttribute("uri", "foo", "p:foo", "CDATA", "bar");
+ handler.startElement(null, "b", "b", attributes);
+ handler.characters("abc".toCharArray(), 0, 3);
+ handler.endElement(null, "b", "b");
+ handler.startElement(null, "c", "c", new AttributesImpl());
+ handler.endElement(null, "c", "c");
+ handler.characters("xyz".toCharArray(), 0, 3);
+ handler.endElement("uri", "a", "p:a");
+ handler.endDocument();
+
+ String xml = writer.toString();
+ assertContains(xml, "<p:a");
+ assertContains(xml, "xmlns:p");
+ assertContains(xml, "=");
+ assertContains(xml, "uri");
+ assertContains(xml, ">");
+ assertContains(xml, "<b");
+ assertContains(xml, "p:foo");
+ assertContains(xml, "bar");
+ assertContains(xml, "abc");
+ assertContains(xml, "</b>");
+ assertContains(xml, "<c/>");
+ assertContains(xml, "xyz");
+ assertContains(xml, "</p:a>");
+ }
+
+ private void assertContains(String haystack, String needle) {
+ if (haystack.indexOf(needle) == -1) {
+ fail("'" + haystack + "' does not contain '" + needle+ "'");
+ }
+ }
+}
Propchange: commons/sandbox/xml/trunk/src/test/java/org/apache/commons/xml/SerializingContentHandlerTest.java
------------------------------------------------------------------------------
svn:eol-style = native