Author: dsosnoski
Date: Mon Jun 12 16:01:06 2006
New Revision: 413760
URL: http://svn.apache.org/viewvc?rev=413760&view=rev
Log:
Pass on getXMLStreamReaderWithoutCaching() call to superclass when parser has
already been created, add debug logging.
Modified:
webservices/commons/trunk/modules/axiom/src/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java
Modified:
webservices/commons/trunk/modules/axiom/src/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java
URL:
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/src/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java?rev=413760&r1=413759&r2=413760&view=diff
==============================================================================
---
webservices/commons/trunk/modules/axiom/src/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java
(original)
+++
webservices/commons/trunk/modules/axiom/src/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java
Mon Jun 12 16:01:06 2006
@@ -80,16 +80,30 @@
dataSource = source;
definedNamespace = ns;
}
+
+ /**
+ * Generate element name for output.
+ * @return name
+ */
+ private String getPrintableName() {
+ String uri = getNamespace().getName();
+ if (uri == null || uri.length() == 0) {
+ return getLocalName();
+ } else {
+ return "{" + uri + '}' + getLocalName();
+ }
+ }
/**
* Get parser from data source.
+ * @return parser
*/
private XMLStreamReader getDirectReader() {
try {
return dataSource.getReader();
} catch (XMLStreamException e) {
- log.error("OMSourcedElementImpl.getDirectReader: could not get
parser from data source for element " +
- getLocalName(), e);
+ log.error("Could not get parser from data source for element " +
+ getPrintableName(), e);
throw new RuntimeException("Error obtaining parser from data
source:" +
e.getMessage());
}
@@ -102,15 +116,17 @@
private void forceExpand() {
if (!isParserSet) {
- log.debug("OMSourcedElementImpl.forceExpand: expanding element " +
- getLocalName());
+ if (log.isDebugEnabled()) {
+ log.debug("forceExpand: expanding element " +
+ getPrintableName());
+ }
// position reader to start tag
XMLStreamReader reader = getDirectReader();
try {
while (reader.next() != XMLStreamConstants.START_ELEMENT);
} catch (XMLStreamException e) {
- log.error("OMSourcedElementImpl.forceExpand: error parsing
data soruce document for element " +
+ log.error("forceExpand: error parsing data soruce document for
element " +
getLocalName(), e);
throw new RuntimeException("Error parsing data source
document:" +
e.getMessage());
@@ -118,14 +134,14 @@
// make sure element name matches what was expected
if (!reader.getLocalName().equals(getLocalName())) {
- log.error("OMSourcedElementImpl.forceExpand: expected element
name " +
+ log.error("forceExpand: expected element name " +
getLocalName() + ", found " + reader.getLocalName());
throw new RuntimeException("Element name from data source is "
+
reader.getLocalName() + ", not the expected " +
getLocalName());
}
if (!reader.getNamespaceURI().equals(getNamespace().getName())) {
String uri = getNamespace().getName();
- log.error("OMSourcedElementImpl.forceExpand: expected element
namespace " +
+ log.error("forceExpand: expected element namespace " +
getLocalName() + ", found " + uri);
throw new RuntimeException("Element namespace from data source
is " +
reader.getNamespaceURI() + ", not the expected " + uri);
@@ -294,6 +310,9 @@
* @see org.apache.axiom.om.OMElement#getXMLStreamReader()
*/
public XMLStreamReader getXMLStreamReader() {
+ if (log.isDebugEnabled()) {
+ log.debug("getting XMLStreamReader for " + getPrintableName());
+ }
if (isParserSet) {
return super.getXMLStreamReader();
} else {
@@ -305,7 +324,15 @@
* @see org.apache.axiom.om.OMElement#getXMLStreamReaderWithoutCaching()
*/
public XMLStreamReader getXMLStreamReaderWithoutCaching() {
- return getXMLStreamReader();
+ if (log.isDebugEnabled()) {
+ log.debug("getting XMLStreamReader without caching for " +
+ getPrintableName());
+ }
+ if (isParserSet) {
+ return super.getXMLStreamReaderWithoutCaching();
+ } else {
+ return getDirectReader();
+ }
}
/* (non-Javadoc)
@@ -456,20 +483,23 @@
* @see
org.apache.axiom.om.OMNode#internalSerialize(javax.xml.stream.XMLStreamWriter)
*/
public void internalSerialize(javax.xml.stream.XMLStreamWriter writer)
throws XMLStreamException {
- dataSource.serialize(writer);
+ internalSerializeAndConsume(writer);
}
/* (non-Javadoc)
* @see
org.apache.axiom.om.impl.llom.OMElementImpl#internalSerialize(javax.xml.stream.XMLStreamWriter,
boolean)
*/
protected void internalSerialize(XMLStreamWriter writer, boolean cache)
throws XMLStreamException {
- dataSource.serialize(writer);
+ internalSerializeAndConsume(writer);
}
/* (non-Javadoc)
* @see
org.apache.axiom.om.OMNode#internalSerializeAndConsume(javax.xml.stream.XMLStreamWriter)
*/
public void internalSerializeAndConsume(XMLStreamWriter writer) throws
XMLStreamException {
+ if (log.isDebugEnabled()) {
+ log.debug("serialize " + getPrintableName() + " to
XMLStreamWriter");
+ }
dataSource.serialize(writer);
}
@@ -477,48 +507,51 @@
* @see
org.apache.axiom.om.OMNode#serialize(javax.xml.stream.XMLStreamWriter)
*/
public void serialize(XMLStreamWriter xmlWriter) throws XMLStreamException
{
- dataSource.serialize(xmlWriter);
+ internalSerializeAndConsume(xmlWriter);
}
/* (non-Javadoc)
* @see org.apache.axiom.om.OMNode#serialize(java.io.OutputStream)
*/
public void serialize(OutputStream output) throws XMLStreamException {
- dataSource.serialize(output, null);
+ serializeAndConsume(output);
}
/* (non-Javadoc)
* @see org.apache.axiom.om.OMNode#serialize(java.io.Writer)
*/
public void serialize(Writer writer) throws XMLStreamException {
- dataSource.serialize(writer, null);
+ serializeAndConsume(writer);
}
/* (non-Javadoc)
* @see org.apache.axiom.om.OMNode#serialize(java.io.OutputStream,
org.apache.axiom.om.OMOutputFormat)
*/
public void serialize(OutputStream output, OMOutputFormat format) throws
XMLStreamException {
- dataSource.serialize(output, format);
+ serializeAndConsume(output, format);
}
/* (non-Javadoc)
* @see org.apache.axiom.om.OMNode#serialize(java.io.Writer,
org.apache.axiom.om.OMOutputFormat)
*/
public void serialize(Writer writer, OMOutputFormat format) throws
XMLStreamException {
- dataSource.serialize(writer, format);
+ serializeAndConsume(writer, format);
}
/* (non-Javadoc)
* @see
org.apache.axiom.om.OMNode#serializeAndConsume(javax.xml.stream.XMLStreamWriter)
*/
public void serializeAndConsume(javax.xml.stream.XMLStreamWriter
xmlWriter) throws XMLStreamException {
- dataSource.serialize(xmlWriter);
+ internalSerializeAndConsume(xmlWriter);
}
/* (non-Javadoc)
* @see
org.apache.axiom.om.OMNode#serializeAndConsume(java.io.OutputStream)
*/
public void serializeAndConsume(OutputStream output) throws
XMLStreamException {
+ if (log.isDebugEnabled()) {
+ log.debug("serialize " + getPrintableName() + " to output stream");
+ }
dataSource.serialize(output, null);
}
@@ -526,6 +559,9 @@
* @see org.apache.axiom.om.OMNode#serializeAndConsume(java.io.Writer)
*/
public void serializeAndConsume(Writer writer) throws XMLStreamException {
+ if (log.isDebugEnabled()) {
+ log.debug("serialize " + getPrintableName() + " to writer");
+ }
dataSource.serialize(writer, null);
}
@@ -533,6 +569,10 @@
* @see
org.apache.axiom.om.OMNode#serializeAndConsume(java.io.OutputStream,
org.apache.axiom.om.OMOutputFormat)
*/
public void serializeAndConsume(OutputStream output, OMOutputFormat
format) throws XMLStreamException {
+ if (log.isDebugEnabled()) {
+ log.debug("serialize formatted " + getPrintableName() +
+ " to output stream");
+ }
dataSource.serialize(output, format);
}
@@ -540,6 +580,10 @@
* @see org.apache.axiom.om.OMNode#serializeAndConsume(java.io.Writer,
org.apache.axiom.om.OMOutputFormat)
*/
public void serializeAndConsume(Writer writer, OMOutputFormat format)
throws XMLStreamException {
+ if (log.isDebugEnabled()) {
+ log.debug("serialize formatted " + getPrintableName() +
+ " to writer");
+ }
dataSource.serialize(writer, format);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]