You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by rf...@apache.org on 2007/03/13 01:23:46 UTC
svn commit: r517474 - in
/incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src:
main/java/org/apache/tuscany/core/databinding/xml/
test/java/org/apache/tuscany/core/databinding/xml/
Author: rfeng
Date: Mon Mar 12 17:23:46 2007
New Revision: 517474
URL: http://svn.apache.org/viewvc?view=rev&rev=517474
Log:
[sca-integration-branch] Make sure that XMLStreamSerializer handles START_DOCUMENT and END_DOCUMENT
Modified:
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/databinding/xml/XMLFragmentStreamReaderImpl.java
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/databinding/xml/XMLStreamSerializer.java
incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/databinding/xml/JavaBean2XMLStreamReaderTestCase.java
Modified: incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/databinding/xml/XMLFragmentStreamReaderImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/databinding/xml/XMLFragmentStreamReaderImpl.java?view=diff&rev=517474&r1=517473&r2=517474
==============================================================================
--- incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/databinding/xml/XMLFragmentStreamReaderImpl.java (original)
+++ incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/databinding/xml/XMLFragmentStreamReaderImpl.java Mon Mar 12 17:23:46 2007
@@ -309,10 +309,11 @@
return START_ELEMENT;
} else if (state == END_ELEMENT_STATE) {
return END_ELEMENT;
+ } else if (state == TEXT_STATE) {
+ return CHARACTERS;
} else { // this is the delegated state
return childReader.getEventType();
}
-
}
public String getLocalName() {
Modified: incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/databinding/xml/XMLStreamSerializer.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/databinding/xml/XMLStreamSerializer.java?view=diff&rev=517474&r1=517473&r2=517474
==============================================================================
--- incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/databinding/xml/XMLStreamSerializer.java (original)
+++ incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/main/java/org/apache/tuscany/core/databinding/xml/XMLStreamSerializer.java Mon Mar 12 17:23:46 2007
@@ -218,14 +218,8 @@
* @throws XMLStreamException
*/
protected void serializeNode(XMLStreamReader reader, XMLStreamWriter writer) throws XMLStreamException {
- // TODO We get the StAXWriter at this point and uses it hereafter
- // assuming that this is the only entry point
- // to this class.
- // If there can be other classes calling methodes of this we might
- // need to change methode signatures to
- // OMOutputer
- while (reader.hasNext()) {
- int event = reader.next();
+ while (true) {
+ int event = reader.getEventType();
if (event == START_ELEMENT) {
serializeElement(reader, writer);
depth++;
@@ -242,18 +236,20 @@
depth--;
} else if (event == START_DOCUMENT) {
depth++; // if a start document is found then increment
+ writer.writeStartDocument();
// the depth
} else if (event == END_DOCUMENT) {
if (depth != 0) {
depth--; // for the end document - reduce the depth
}
- try {
- serializeEndElement(writer);
- } catch (Exception e) {
- // TODO: log exceptions
- }
+ writer.writeEndDocument();
}
if (depth == 0) {
+ break;
+ }
+ if (reader.hasNext()) {
+ reader.next();
+ } else {
break;
}
}
Modified: incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/databinding/xml/JavaBean2XMLStreamReaderTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/databinding/xml/JavaBean2XMLStreamReaderTestCase.java?view=diff&rev=517474&r1=517473&r2=517474
==============================================================================
--- incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/databinding/xml/JavaBean2XMLStreamReaderTestCase.java (original)
+++ incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/databinding/xml/JavaBean2XMLStreamReaderTestCase.java Mon Mar 12 17:23:46 2007
@@ -43,10 +43,9 @@
XMLStreamReader reader = t2.transform(bean, null);
XMLStreamReader2String t3 = new XMLStreamReader2String();
String xml = t3.transform(reader, null);
- assertEquals("<JavaBean2XMLStreamReaderTestCase$MyBean>"
+ assertTrue(xml.contains("<JavaBean2XMLStreamReaderTestCase$MyBean>"
+ "<arr>1</arr><arr>2</arr><arr>3</arr><bean><name>Name</name></bean>"
- + "<i>1</i><str>ABC</str></JavaBean2XMLStreamReaderTestCase$MyBean>",
- xml);
+ + "<i>1</i><str>ABC</str></JavaBean2XMLStreamReaderTestCase$MyBean>"));
}
private static class MyBean {
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org