You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commons-dev@ws.apache.org by ds...@apache.org on 2006/06/13 01:01:06 UTC
svn commit: r413760 -
/webservices/commons/trunk/modules/axiom/src/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java
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: commons-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: commons-dev-help@ws.apache.org