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/17 06:56:54 UTC

svn commit: r519244 [3/5] - in /incubator/tuscany/java/sca/services/databinding/databinding-framework: ./ src/ src/main/ src/main/java/ src/main/java/org/ src/main/java/org/apache/ src/main/java/org/apache/tuscany/ src/main/java/org/apache/tuscany/data...

Added: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NameValueArrayStreamReader.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NameValueArrayStreamReader.java?view=auto&rev=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NameValueArrayStreamReader.java (added)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NameValueArrayStreamReader.java Fri Mar 16 22:56:48 2007
@@ -0,0 +1,403 @@
+/*
+ * 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.tuscany.databinding.xml;
+
+import javax.xml.namespace.NamespaceContext;
+import javax.xml.namespace.QName;
+import javax.xml.stream.Location;
+import javax.xml.stream.XMLStreamException;
+
+public class NameValueArrayStreamReader implements XMLFragmentStreamReader {
+
+    private static final int START_ELEMENT_STATE = 0;
+    private static final int TEXT_STATE = 1;
+    private static final int END_ELEMENT_STATE = 2;
+    private static final int FINAL_END_ELEMENT_STATE = 3;
+    private static final int START_ELEMENT_STATE_WITH_NULL = 4;
+
+    private DelegatingNamespaceContext namespaceContext = new DelegatingNamespaceContext();
+    // the index of the array
+    private int arrayIndex;
+
+    private QName name;
+    private String[] values;
+
+    // start element is the default state
+    private int state = START_ELEMENT_STATE;
+
+    public NameValueArrayStreamReader(QName name, String[] values) {
+        this.name = name;
+        this.values = values;
+    }
+
+    public void setParentNamespaceContext(NamespaceContext nsContext) {
+        this.namespaceContext.setParentNsContext(nsContext);
+    }
+
+    public void init() {
+        // todo what if the Qname namespace has not been declared
+    }
+
+    public Object getProperty(String string) throws IllegalArgumentException {
+        return null;
+    }
+
+    /**
+     * @throws XMLStreamException
+     */
+    public int next() throws XMLStreamException {
+        switch (state) {
+            case START_ELEMENT_STATE:
+                if (values.length > 0) {
+                    state = TEXT_STATE;
+                    return CHARACTERS;
+                } else {
+                    state = FINAL_END_ELEMENT_STATE;
+                    return END_ELEMENT;
+                }
+
+            case START_ELEMENT_STATE_WITH_NULL:
+                if (arrayIndex == (values.length - 1)) {
+                    state = FINAL_END_ELEMENT_STATE;
+                } else {
+                    state = END_ELEMENT_STATE;
+                }
+                return END_ELEMENT;
+            case FINAL_END_ELEMENT_STATE:
+                // oops, not supposed to happen!
+                throw new XMLStreamException("end already reached!");
+            case END_ELEMENT_STATE:
+                // we've to have more values since this is not the
+                // last value
+                // increment the counter
+                arrayIndex++;
+                if (values[arrayIndex] == null) {
+                    state = START_ELEMENT_STATE_WITH_NULL;
+                } else {
+                    state = START_ELEMENT_STATE;
+                }
+                return START_ELEMENT;
+            case TEXT_STATE:
+                if (arrayIndex == (values.length - 1)) {
+                    state = FINAL_END_ELEMENT_STATE;
+                    return END_ELEMENT;
+                } else {
+                    state = END_ELEMENT_STATE;
+                    return END_ELEMENT;
+                }
+
+            default:
+                throw new XMLStreamException("unknown event type!");
+        }
+    }
+
+    public void require(int i, String string, String string1) throws XMLStreamException {
+        // nothing done here
+    }
+
+    public String getElementText() throws XMLStreamException {
+        return null; // not implemented
+    }
+
+    public int nextTag() throws XMLStreamException {
+        return 0; // not implemented
+    }
+
+    public String getAttributeValue(String string, String string1) {
+        if (state == TEXT_STATE) {
+            // todo something
+            return null;
+        } else {
+            return null;
+        }
+
+    }
+
+    public int getAttributeCount() {
+        if (state == START_ELEMENT_STATE_WITH_NULL) {
+            return 1;
+        }
+        if (state == START_ELEMENT_STATE) {
+            return 0;
+        } else {
+            throw new IllegalStateException();
+        }
+
+    }
+
+    public QName getAttributeName(int i) {
+        if (state == START_ELEMENT_STATE_WITH_NULL && i == 0) {
+            return NIL_QNAME;
+        }
+        if (state == START_ELEMENT_STATE) {
+            return null;
+        } else {
+            throw new IllegalStateException();
+        }
+    }
+
+    public String getAttributeNamespace(int i) {
+        if (state == START_ELEMENT_STATE_WITH_NULL && i == 0) {
+            return NIL_QNAME.getNamespaceURI();
+        }
+        if (state == START_ELEMENT_STATE) {
+            return null;
+        } else {
+            throw new IllegalStateException();
+        }
+    }
+
+    public String getAttributeLocalName(int i) {
+        if (state == START_ELEMENT_STATE_WITH_NULL && i == 0) {
+            return NIL_QNAME.getLocalPart();
+        }
+        if (state == START_ELEMENT_STATE) {
+            return null;
+        } else {
+            throw new IllegalStateException();
+        }
+    }
+
+    public String getAttributePrefix(int i) {
+        if (state == START_ELEMENT_STATE_WITH_NULL && i == 0) {
+            return NIL_QNAME.getPrefix();
+        }
+        if (state == START_ELEMENT_STATE) {
+            return null;
+        } else {
+            throw new IllegalStateException();
+        }
+    }
+
+    public String getAttributeType(int i) {
+        return null; // not implemented
+    }
+
+    public String getAttributeValue(int i) {
+        if (state == START_ELEMENT_STATE_WITH_NULL && i == 0) {
+            return NIL_VALUE_TRUE;
+        }
+        if (state == START_ELEMENT_STATE) {
+            return null;
+        } else {
+            throw new IllegalStateException();
+        }
+    }
+
+    public boolean isAttributeSpecified(int i) {
+        return false; // not supported
+    }
+
+    public int getNamespaceCount() {
+        if (state == START_ELEMENT_STATE_WITH_NULL && isXsiNamespacePresent()) {
+            return 1;
+        } else {
+            return 0;
+        }
+
+    }
+
+    public String getNamespacePrefix(int i) {
+        if (state == START_ELEMENT_STATE_WITH_NULL && isXsiNamespacePresent() && i == 0) {
+            return NIL_QNAME.getPrefix();
+        } else {
+            return null;
+        }
+    }
+
+    public String getNamespaceURI(int i) {
+        if (state == START_ELEMENT_STATE_WITH_NULL && isXsiNamespacePresent() && i == 0) {
+            return NIL_QNAME.getNamespaceURI();
+        } else {
+            return null;
+        }
+    }
+
+    public NamespaceContext getNamespaceContext() {
+        return this.namespaceContext;
+    }
+
+    public boolean isDone() {
+        return state == FINAL_END_ELEMENT_STATE;
+    }
+
+    public int getEventType() {
+        switch (state) {
+            case START_ELEMENT_STATE:
+                return START_ELEMENT;
+            case END_ELEMENT_STATE:
+                return END_ELEMENT;
+            case TEXT_STATE:
+                return CHARACTERS;
+            case FINAL_END_ELEMENT_STATE:
+                return END_ELEMENT;
+            default:
+                throw new UnsupportedOperationException();
+                // we've no idea what this is!!!!!
+        }
+
+    }
+
+    public String getText() {
+        if (state == TEXT_STATE) {
+            return values[arrayIndex];
+        } else {
+            throw new IllegalStateException();
+        }
+    }
+
+    public char[] getTextCharacters() {
+        if (state == TEXT_STATE) {
+            return values[arrayIndex].toCharArray();
+        } else {
+            throw new IllegalStateException();
+        }
+    }
+
+    public int getTextCharacters(int i, char[] chars, int i1, int i2) throws XMLStreamException {
+        // not implemented
+        throw new UnsupportedOperationException();
+    }
+
+    public int getTextStart() {
+        if (state == TEXT_STATE) {
+            return 0;
+        } else {
+            throw new IllegalStateException();
+        }
+    }
+
+    public int getTextLength() {
+        if (state == TEXT_STATE) {
+            return values[arrayIndex].length();
+        } else {
+            throw new IllegalStateException();
+        }
+
+    }
+
+    public String getEncoding() {
+        return null;
+    }
+
+    public boolean hasText() {
+        return state == TEXT_STATE;
+    }
+
+    public Location getLocation() {
+        return null; // not supported
+    }
+
+    public QName getName() {
+        if (state != TEXT_STATE) {
+            return name;
+        } else {
+            return null;
+        }
+    }
+
+    public String getLocalName() {
+        if (state != TEXT_STATE) {
+            return name.getLocalPart();
+        } else {
+            return null;
+        }
+    }
+
+    public boolean hasName() {
+        return state != TEXT_STATE;
+
+    }
+
+    public String getNamespaceURI() {
+        if (state != TEXT_STATE) {
+            return name.getNamespaceURI();
+        } else {
+            return null;
+        }
+
+    }
+
+    public String getPrefix() {
+        if (state != TEXT_STATE) {
+            return name.getPrefix();
+        } else {
+            return null;
+        }
+    }
+
+    public String getVersion() {
+        return null; // todo 1.0 ?
+    }
+
+    public boolean isStandalone() {
+        return false;
+    }
+
+    public boolean standaloneSet() {
+        return false;
+    }
+
+    public String getCharacterEncodingScheme() {
+        return null;
+    }
+
+    public String getPITarget() {
+        return null;
+    }
+
+    public String getPIData() {
+        return null;
+    }
+
+    public boolean hasNext() throws XMLStreamException {
+        return state != FINAL_END_ELEMENT_STATE;
+    }
+
+    public void close() throws XMLStreamException {
+        // Do nothing - we've nothing to free here
+    }
+
+    public String getNamespaceURI(String prefix) {
+        return namespaceContext.getNamespaceURI(prefix);
+    }
+
+    public boolean isStartElement() {
+        return state == START_ELEMENT_STATE;
+    }
+
+    public boolean isEndElement() {
+        return state == END_ELEMENT_STATE;
+    }
+
+    public boolean isCharacters() {
+        return state == TEXT_STATE;
+    }
+
+    public boolean isWhiteSpace() {
+        return false; // no whitespaces here
+    }
+
+    /**
+     * Test whether the xsi namespace is present
+     */
+    private boolean isXsiNamespacePresent() {
+        return namespaceContext.getNamespaceURI(NIL_QNAME.getPrefix()) != null;
+    }
+}

Propchange: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NameValueArrayStreamReader.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NameValueArrayStreamReader.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NameValuePairStreamReader.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NameValuePairStreamReader.java?view=auto&rev=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NameValuePairStreamReader.java (added)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NameValuePairStreamReader.java Fri Mar 16 22:56:48 2007
@@ -0,0 +1,347 @@
+/*
+ * 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.tuscany.databinding.xml;
+
+import javax.xml.namespace.NamespaceContext;
+import javax.xml.namespace.QName;
+import javax.xml.stream.Location;
+import javax.xml.stream.XMLStreamException;
+
+
+public class NameValuePairStreamReader implements XMLFragmentStreamReader {
+
+    private static final int START_ELEMENT_STATE = 0;
+    private static final int TEXT_STATE = 1;
+    private static final int END_ELEMENT_STATE = 2;
+
+    private DelegatingNamespaceContext namespaceContext = new DelegatingNamespaceContext();
+
+    private QName name;
+    private String value;
+
+    private int state = START_ELEMENT_STATE;
+    // initiate at the start element state
+
+    // keeps track whether the namespace is declared
+    // false by default
+    private boolean nsDeclared;
+
+    public NameValuePairStreamReader(QName name, String value) {
+        this.name = name;
+        this.value = value;
+    }
+
+    public Object getProperty(String key) throws IllegalArgumentException {
+        return null;
+    }
+
+    public int next() throws XMLStreamException {
+        // no need to handle null here. it should have been handled
+        // already
+        switch (state) {
+            case START_ELEMENT_STATE:
+                state = TEXT_STATE;
+                return CHARACTERS;
+            case END_ELEMENT_STATE:
+                // oops, not supposed to happen!
+                throw new XMLStreamException("end already reached!");
+            case TEXT_STATE:
+                state = END_ELEMENT_STATE;
+                return END_ELEMENT;
+            default:
+                throw new XMLStreamException("unknown event type!");
+        }
+    }
+
+    public void require(int i, String string, String string1) throws XMLStreamException {
+        // not implemented
+    }
+
+    public String getElementText() throws XMLStreamException {
+        if (state == START_ELEMENT) {
+            // move to the end state and return the value
+            state = END_ELEMENT_STATE;
+            return value;
+        } else {
+            throw new XMLStreamException();
+        }
+
+    }
+
+    public int nextTag() throws XMLStreamException {
+        return 0; // todo
+    }
+
+    public boolean hasNext() throws XMLStreamException {
+        return state != END_ELEMENT_STATE;
+    }
+
+    public void close() throws XMLStreamException {
+        // Do nothing - we've nothing to free here
+    }
+
+    public String getNamespaceURI(String prefix) {
+        return namespaceContext.getNamespaceURI(prefix);
+    }
+
+    public boolean isStartElement() {
+        return state == START_ELEMENT_STATE;
+    }
+
+    public boolean isEndElement() {
+        return state == END_ELEMENT_STATE;
+    }
+
+    public boolean isCharacters() {
+        return state == TEXT_STATE;
+    }
+
+    public boolean isWhiteSpace() {
+        return false; // no whitespaces here
+    }
+
+    public String getAttributeValue(String string, String string1) {
+        return null;
+    }
+
+    public int getAttributeCount() {
+        return 0;
+    }
+
+    public QName getAttributeName(int i) {
+        return null;
+    }
+
+    public String getAttributeNamespace(int i) {
+        return null;
+    }
+
+    public String getAttributeLocalName(int i) {
+        return null;
+    }
+
+    public String getAttributePrefix(int i) {
+        return null;
+    }
+
+    public String getAttributeType(int i) {
+        return null;
+    }
+
+    public String getAttributeValue(int i) {
+        return null;
+    }
+
+    public boolean isAttributeSpecified(int i) {
+        return false; // no attribs here
+    }
+
+    public int getNamespaceCount() {
+        return nsDeclared ? 1 : 0;
+    }
+
+    public String getNamespacePrefix(int i) {
+        return (nsDeclared && i == 0) ? name.getPrefix() : null;
+    }
+
+    public String getNamespaceURI(int i) {
+        return (nsDeclared && i == 0) ? name.getNamespaceURI() : null;
+    }
+
+    public NamespaceContext getNamespaceContext() {
+        return this.namespaceContext;
+    }
+
+    public int getEventType() {
+        switch (state) {
+            case START_ELEMENT_STATE:
+                return START_ELEMENT;
+            case END_ELEMENT_STATE:
+                return END_ELEMENT;
+            case TEXT_STATE:
+                return CHARACTERS;
+            default:
+                throw new UnsupportedOperationException();
+                // we've no idea what this is!!!!!
+        }
+
+    }
+
+    public String getText() {
+        if (state == TEXT_STATE) {
+            return value;
+        } else {
+            throw new IllegalStateException();
+        }
+    }
+
+    public char[] getTextCharacters() {
+        if (state == TEXT_STATE) {
+            return value.toCharArray();
+        } else {
+            throw new IllegalStateException();
+        }
+    }
+
+    public int getTextCharacters(int i, char[] chars, int i1, int i2) throws XMLStreamException {
+        // not implemented
+        throw new UnsupportedOperationException();
+    }
+
+    public int getTextStart() {
+        if (state == TEXT_STATE) {
+            return 0;
+        } else {
+            throw new IllegalStateException();
+        }
+    }
+
+    public int getTextLength() {
+        if (state == TEXT_STATE) {
+            return value.length();
+        } else {
+            throw new IllegalStateException();
+        }
+
+    }
+
+    public String getEncoding() {
+        return null;
+    }
+
+    public boolean hasText() {
+        return state == TEXT_STATE;
+    }
+
+    public Location getLocation() {
+        return new Location() {
+            public int getLineNumber() {
+                return 0;
+            }
+
+            public int getColumnNumber() {
+                return 0;
+            }
+
+            public int getCharacterOffset() {
+                return 0;
+            }
+
+            public String getPublicId() {
+                return null;
+            }
+
+            public String getSystemId() {
+                return null;
+            }
+        };
+    }
+
+    public QName getName() {
+        if (state != TEXT_STATE) {
+            return name;
+        } else {
+            return null;
+        }
+    }
+
+    public String getLocalName() {
+        if (state != TEXT_STATE) {
+            return name.getLocalPart();
+        } else {
+            return null;
+        }
+    }
+
+    public boolean hasName() {
+        return state != TEXT_STATE;
+
+    }
+
+    public String getNamespaceURI() {
+        if (state != TEXT_STATE) {
+            return name.getNamespaceURI();
+        } else {
+            return null;
+        }
+
+    }
+
+    public String getPrefix() {
+        if (state != TEXT_STATE) {
+            return name.getPrefix();
+        } else {
+            return null;
+        }
+    }
+
+    public String getVersion() {
+        return null; // todo 1.0 ?
+    }
+
+    public boolean isStandalone() {
+        return false;
+    }
+
+    public boolean standaloneSet() {
+        return false;
+    }
+
+    public String getCharacterEncodingScheme() {
+        return null;
+    }
+
+    public String getPITarget() {
+        return null;
+    }
+
+    public String getPIData() {
+        return null;
+    }
+
+    public boolean isDone() {
+        return state == END_ELEMENT_STATE;
+    }
+
+    public void setParentNamespaceContext(NamespaceContext nsContext) {
+        this.namespaceContext.setParentNsContext(nsContext);
+    }
+
+    public void init() {
+        // just add the current elements namespace and prefix to the this
+        // elements nscontext
+        addToNsMap(name.getPrefix(), name.getNamespaceURI());
+
+    }
+
+    /**
+     * @param prefix
+     * @param uri
+     */
+    private void addToNsMap(String prefix, String uri) {
+        // todo - need to fix this up to cater for cases where
+        // namespaces are having no prefixes
+        if (!uri.equals(namespaceContext.getNamespaceURI(prefix))) {
+            // this namespace is not there. Need to declare it
+            namespaceContext.pushNamespace(prefix, uri);
+            nsDeclared = true;
+        }
+    }
+
+}

Propchange: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NameValuePairStreamReader.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NameValuePairStreamReader.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NamedProperty.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NamedProperty.java?view=auto&rev=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NamedProperty.java (added)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NamedProperty.java Fri Mar 16 22:56:48 2007
@@ -0,0 +1,59 @@
+/*
+ * 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.tuscany.databinding.xml;
+
+import java.util.Map;
+
+import javax.xml.namespace.QName;
+
+/**
+ * A named property
+ * 
+ * @version $Rev$ $Date$
+ */
+public class NamedProperty implements Map.Entry<QName, Object> {
+    private QName key;
+
+    private Object value;
+
+    public NamedProperty(QName key, Object value) {
+        this.key = key;
+        this.value = value;
+    }
+
+    public NamedProperty(String key, Object value) {
+        this.key = new QName(key);
+        this.value = value;
+    }
+    
+    public QName getKey() {
+        return key;
+    }
+
+    public Object getValue() {
+        return value;
+    }
+
+    public Object setValue(Object value) {
+        Object v = this.value;
+        this.value = value;
+        return v;
+    }
+}

Propchange: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NamedProperty.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NamedProperty.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NilElementStreamReader.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NilElementStreamReader.java?view=auto&rev=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NilElementStreamReader.java (added)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NilElementStreamReader.java Fri Mar 16 22:56:48 2007
@@ -0,0 +1,279 @@
+/*
+ * 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.tuscany.databinding.xml;
+
+import javax.xml.namespace.NamespaceContext;
+import javax.xml.namespace.QName;
+import javax.xml.stream.Location;
+import javax.xml.stream.XMLStreamException;
+
+public class NilElementStreamReader implements XMLFragmentStreamReader {
+
+    private static final int END_ELEMENT_STATE = 2;
+
+    private static final int START_ELEMENT_STATE = 1;
+    private int currentState = START_ELEMENT;
+
+    private QName elementQName;
+
+    public NilElementStreamReader(QName elementQName) {
+        this.elementQName = elementQName;
+    }
+
+    public void setParentNamespaceContext(NamespaceContext nsContext) {
+        // NOOP
+    }
+
+    public void close() throws XMLStreamException {
+        // do nothing
+    }
+
+    public int getAttributeCount() {
+        return 1;
+    }
+
+    public String getAttributeLocalName(int i) {
+        return (i == 0) ? NIL_QNAME.getLocalPart() : null;
+    }
+
+    public QName getAttributeName(int i) {
+        return (i == 0) ? NIL_QNAME : null;
+    }
+
+    public String getAttributeNamespace(int i) {
+        return (i == 0) ? NIL_QNAME.getNamespaceURI() : null;
+    }
+
+    public String getAttributePrefix(int i) {
+        return (i == 0) ? NIL_QNAME.getPrefix() : null;
+    }
+
+    public String getAttributeType(int i) {
+        throw new UnsupportedOperationException();
+    }
+
+    public String getAttributeValue(int i) {
+        return (i == 0) ? NIL_VALUE_TRUE : null;
+    }
+
+    public String getAttributeValue(String string, String string1) {
+        if (string == null && NIL_QNAME.getLocalPart().equals(string1)) {
+            return NIL_VALUE_TRUE;
+        }
+        return null;
+    }
+
+    public String getCharacterEncodingScheme() {
+        throw new UnsupportedOperationException();
+    }
+
+    public String getElementText() throws XMLStreamException {
+        return null;
+    }
+
+    public String getEncoding() {
+        return null;
+    }
+
+    public int getEventType() {
+        int returnEvent = START_DOCUMENT;
+        switch (currentState) {
+            case START_ELEMENT_STATE:
+                returnEvent = START_ELEMENT;
+                break;
+            case END_ELEMENT_STATE:
+                returnEvent = END_ELEMENT;
+                break;
+        }
+        return returnEvent;
+    }
+
+    public String getLocalName() {
+        return elementQName.getLocalPart();
+    }
+
+    public Location getLocation() {
+        return new Location() {
+            public int getCharacterOffset() {
+                return 0;
+            }
+
+            public int getColumnNumber() {
+                return 0;
+            }
+
+            public int getLineNumber() {
+                return 0;
+            }
+
+            public String getPublicId() {
+                return null;
+            }
+
+            public String getSystemId() {
+                return null;
+            }
+        };
+    }
+
+    public QName getName() {
+        return elementQName;
+    }
+
+    public NamespaceContext getNamespaceContext() {
+        throw new UnsupportedOperationException();
+    }
+
+    public int getNamespaceCount() {
+        return 0;
+    }
+
+    public String getNamespacePrefix(int i) {
+        return null;
+    }
+
+    public String getNamespaceURI() {
+        return elementQName.getNamespaceURI();
+    }
+
+    public String getNamespaceURI(int i) {
+        return null;
+    }
+
+    public String getNamespaceURI(String string) {
+        if (elementQName.getPrefix() != null && elementQName.getPrefix().equals(string)) {
+            return elementQName.getNamespaceURI();
+        } else {
+            return null;
+        }
+    }
+
+    public String getPIData() {
+        throw new UnsupportedOperationException();
+    }
+
+    public String getPITarget() {
+        throw new UnsupportedOperationException();
+    }
+
+    public String getPrefix() {
+        return elementQName.getPrefix();
+    }
+
+    public Object getProperty(String key) throws IllegalArgumentException {
+        // since optimization is a global property
+        // we've to implement it everywhere
+        return null;
+    }
+
+    public String getText() {
+        return null;
+    }
+
+    public char[] getTextCharacters() {
+        return new char[0]; 
+    }
+
+    public int getTextCharacters(int i, char[] chars, int i1, int i2) throws XMLStreamException {
+        return 0;
+    }
+
+    public int getTextLength() {
+        return 0;
+    }
+
+    public int getTextStart() {
+        return 0;
+    }
+
+    public String getVersion() {
+        throw new UnsupportedOperationException();
+    }
+
+    public boolean hasName() {
+        return true;
+    }
+
+    public boolean hasNext() throws XMLStreamException {
+        return currentState != END_ELEMENT_STATE;
+
+    }
+
+    public boolean hasText() {
+        return false;
+    }
+
+    public void init() {
+        // NOOP
+    }
+
+    public boolean isAttributeSpecified(int i) {
+        return i == 0;
+    }
+
+    public boolean isCharacters() {
+        return false;
+    }
+
+    public boolean isDone() {
+        return currentState == END_ELEMENT_STATE;
+    }
+
+    public boolean isEndElement() {
+        return currentState == END_ELEMENT_STATE;
+    }
+
+    public boolean isStandalone() {
+        throw new UnsupportedOperationException();
+    }
+
+    public boolean isStartElement() {
+        return currentState == START_ELEMENT_STATE;
+    }
+
+    public boolean isWhiteSpace() {
+        return false;
+    }
+
+    public int next() throws XMLStreamException {
+        int returnEvent = START_DOCUMENT;
+        switch (currentState) {
+            case START_ELEMENT_STATE:
+                currentState = END_ELEMENT_STATE;
+                returnEvent = END_ELEMENT;
+                break;
+            case END_ELEMENT_STATE:
+                throw new XMLStreamException("parser completed!");
+
+        }
+        return returnEvent;
+    }
+
+    public int nextTag() throws XMLStreamException {
+        throw new UnsupportedOperationException();
+    }
+
+    public void require(int i, String string, String string1) throws XMLStreamException {
+        // nothing
+    }
+
+    public boolean standaloneSet() {
+        throw new UnsupportedOperationException();
+    }
+}

Propchange: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NilElementStreamReader.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/NilElementStreamReader.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2OutputStream.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2OutputStream.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2OutputStream.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2OutputStream.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import java.io.OutputStream;
 

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2String.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2String.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2String.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2String.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import java.io.StringWriter;
 

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2Writer.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2Writer.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2Writer.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2Writer.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import java.io.Writer;
 

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2XMLStreamReader.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2XMLStreamReader.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2XMLStreamReader.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2XMLStreamReader.java Fri Mar 16 22:56:48 2007
@@ -16,11 +16,10 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import javax.xml.stream.XMLStreamReader;
 
-import org.apache.tuscany.core.databinding.xml.StAXHelper.XMLDocumentStreamReader;
 import org.apache.tuscany.spi.databinding.PullTransformer;
 import org.apache.tuscany.spi.databinding.TransformationContext;
 import org.apache.tuscany.spi.databinding.TransformationException;

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Reader2Node.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Reader2Node.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Reader2Node.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Reader2Node.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import java.io.Reader;
 

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Reader2SAX.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Reader2SAX.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Reader2SAX.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Reader2SAX.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import java.io.Reader;
 

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/SAX2DOM.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/SAX2DOM.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/SAX2DOM.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/SAX2DOM.java Fri Mar 16 22:56:48 2007
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import java.util.ArrayList;
 import java.util.List;

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/SAX2DOMPipe.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/SAX2DOMPipe.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/SAX2DOMPipe.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/SAX2DOMPipe.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import javax.xml.parsers.ParserConfigurationException;
 

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Source2ResultTransformer.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Source2ResultTransformer.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Source2ResultTransformer.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Source2ResultTransformer.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import javax.xml.transform.Result;
 import javax.xml.transform.Source;

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAX2SAXAdapter.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAX2SAXAdapter.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAX2SAXAdapter.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAX2SAXAdapter.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import javax.xml.namespace.QName;
 import javax.xml.stream.Location;

Added: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAXDataBinding.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAXDataBinding.java?view=auto&rev=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAXDataBinding.java (added)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAXDataBinding.java Fri Mar 16 22:56:48 2007
@@ -0,0 +1,52 @@
+/*
+ * 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.tuscany.databinding.xml;
+
+import java.lang.annotation.Annotation;
+
+import javax.xml.stream.XMLStreamReader;
+
+import org.apache.tuscany.spi.databinding.extension.DataBindingExtension;
+import org.apache.tuscany.spi.model.DataType;
+import org.apache.tuscany.spi.model.XMLType;
+
+/**
+ * A DataBinding for the StAX
+ * 
+ * @version $Rev$ $Date$
+ */
+public class StAXDataBinding extends DataBindingExtension {
+    public static final String NAME = XMLStreamReader.class.getName();
+    public static final String[] ALIASES = new String[] {"stax"};
+
+    public StAXDataBinding() {
+        super(NAME, ALIASES, XMLStreamReader.class);
+    }
+
+    public boolean introspect(DataType type, Annotation[] annotations) {
+        if (super.introspect(type, annotations)) {
+            type.setLogical(XMLType.UNKNOWN);
+            return true;
+        } else {
+            return false;
+        }
+    }
+
+}

Propchange: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAXDataBinding.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAXDataBinding.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAXHelper.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAXHelper.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAXHelper.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAXHelper.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import java.io.InputStream;
 import java.io.OutputStream;
@@ -24,740 +24,19 @@
 import java.io.StringReader;
 import java.io.StringWriter;
 import java.io.Writer;
-import java.util.NoSuchElementException;
-import javax.xml.namespace.NamespaceContext;
-import javax.xml.namespace.QName;
-import javax.xml.stream.Location;
 import javax.xml.stream.XMLInputFactory;
 import javax.xml.stream.XMLOutputFactory;
-import javax.xml.stream.XMLStreamConstants;
 import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamReader;
 import javax.xml.stream.XMLStreamWriter;
 import javax.xml.transform.Source;
 
+
 public final class StAXHelper {
     private static final XMLInputFactory INPUT_FACTORY = XMLInputFactory.newInstance();
     private static final XMLOutputFactory OUTPUT_FACTORY = XMLOutputFactory.newInstance();
 
     private StAXHelper() {
-    }
-
-    /**
-     * This class is derived from Apache Axis2 class org.apache.axis2.util.StreamWrapper</a>. It's used wrap a
-     * XMLStreamReader to create a XMLStreamReader representing a document and it will produce START_DOCUMENT,
-     * END_DOCUMENT events.
-     */
-    public static class XMLDocumentStreamReader implements XMLStreamReader {
-        private static final int STATE_COMPLETE_AT_NEXT = 2; // The wrapper
-        // will produce
-        // END_DOCUMENT
-
-        private static final int STATE_COMPLETED = 3; // Done
-
-        private static final int STATE_INIT = 0; // The wrapper will produce
-        // START_DOCUMENT
-
-        private static final int STATE_SWITCHED = 1; // The real reader will
-        // produce events
-
-        private XMLStreamReader realReader;
-
-        private int state = STATE_INIT;
-
-        public XMLDocumentStreamReader(XMLStreamReader realReader) {
-            if (realReader == null) {
-                throw new UnsupportedOperationException("Reader cannot be null");
-            }
-
-            this.realReader = realReader;
-
-            // If the real reader is positioned at START_DOCUMENT, always use
-            // the real reader
-            if (realReader.getEventType() == START_DOCUMENT) {
-                state = STATE_SWITCHED;
-            }
-        }
-
-        public void close() throws XMLStreamException {
-            realReader.close();
-        }
-
-        public int getAttributeCount() {
-            if (isDelegating()) {
-                return realReader.getAttributeCount();
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getAttributeLocalName(int i) {
-            if (isDelegating()) {
-                return realReader.getAttributeLocalName(i);
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public QName getAttributeName(int i) {
-            if (isDelegating()) {
-                return realReader.getAttributeName(i);
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getAttributeNamespace(int i) {
-            if (isDelegating()) {
-                return realReader.getAttributeNamespace(i);
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getAttributePrefix(int i) {
-            if (isDelegating()) {
-                return realReader.getAttributePrefix(i);
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getAttributeType(int i) {
-            if (isDelegating()) {
-                return realReader.getAttributeType(i);
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getAttributeValue(int i) {
-            if (isDelegating()) {
-                return realReader.getAttributeValue(i);
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getAttributeValue(String s, String s1) {
-            if (isDelegating()) {
-                return realReader.getAttributeValue(s, s1);
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getCharacterEncodingScheme() {
-            return realReader.getCharacterEncodingScheme();
-        }
-
-        public String getElementText() throws XMLStreamException {
-            if (isDelegating()) {
-                return realReader.getElementText();
-            } else {
-                throw new XMLStreamException();
-            }
-        }
-
-        public String getEncoding() {
-            return realReader.getEncoding();
-        }
-
-        public int getEventType() {
-            int event = -1;
-            switch (state) {
-                case STATE_SWITCHED:
-                case STATE_COMPLETE_AT_NEXT:
-                    event = realReader.getEventType();
-                    break;
-                case STATE_INIT:
-                    event = START_DOCUMENT;
-                    break;
-                case STATE_COMPLETED:
-                    event = END_DOCUMENT;
-                    break;
-            }
-            return event;
-        }
-
-        public String getLocalName() {
-            if (isDelegating()) {
-                return realReader.getLocalName();
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public Location getLocation() {
-            if (isDelegating()) {
-                return realReader.getLocation();
-            } else {
-                return null;
-            }
-        }
-
-        public QName getName() {
-            if (isDelegating()) {
-                return realReader.getName();
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public NamespaceContext getNamespaceContext() {
-            return realReader.getNamespaceContext();
-        }
-
-        public int getNamespaceCount() {
-            if (isDelegating()) {
-                return realReader.getNamespaceCount();
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getNamespacePrefix(int i) {
-            if (isDelegating()) {
-                return realReader.getNamespacePrefix(i);
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getNamespaceURI() {
-            if (isDelegating()) {
-                return realReader.getNamespaceURI();
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getNamespaceURI(int i) {
-            if (isDelegating()) {
-                return realReader.getNamespaceURI(i);
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getNamespaceURI(String s) {
-            if (isDelegating()) {
-                return realReader.getNamespaceURI(s);
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getPIData() {
-            if (isDelegating()) {
-                return realReader.getPIData();
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getPITarget() {
-            if (isDelegating()) {
-                return realReader.getPITarget();
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getPrefix() {
-            if (isDelegating()) {
-                return realReader.getPrefix();
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public Object getProperty(String s) throws IllegalArgumentException {
-            if (isDelegating()) {
-                return realReader.getProperty(s);
-            } else {
-                throw new IllegalArgumentException();
-            }
-        }
-
-        public String getText() {
-            if (isDelegating()) {
-                return realReader.getText();
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public char[] getTextCharacters() {
-            if (isDelegating()) {
-                return realReader.getTextCharacters();
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public int getTextCharacters(int i, char[] chars, int i1, int i2) throws XMLStreamException {
-            if (isDelegating()) {
-                return realReader.getTextCharacters(i, chars, i1, i2);
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public int getTextLength() {
-            if (isDelegating()) {
-                return realReader.getTextLength();
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public int getTextStart() {
-            if (isDelegating()) {
-                return realReader.getTextStart();
-            } else {
-                throw new IllegalStateException();
-            }
-        }
-
-        public String getVersion() {
-            if (isDelegating()) {
-                return realReader.getVersion();
-            } else {
-                return null;
-            }
-        }
-
-        public boolean hasName() {
-            if (isDelegating()) {
-                return realReader.hasName();
-            } else {
-                return false;
-            }
-        }
-
-        public boolean hasNext() throws XMLStreamException {
-            if (state == STATE_COMPLETE_AT_NEXT) {
-                return true;
-            } else if (state == STATE_COMPLETED) {
-                return false;
-            } else if (state == STATE_SWITCHED) {
-                return realReader.hasNext();
-            } else {
-                return true;
-            }
-        }
-
-        public boolean hasText() {
-            if (isDelegating()) {
-                return realReader.hasText();
-            } else {
-                return false;
-            }
-        }
-
-        public boolean isAttributeSpecified(int i) {
-            if (isDelegating()) {
-                return realReader.isAttributeSpecified(i);
-            } else {
-                return false;
-            }
-        }
-
-        public boolean isCharacters() {
-            if (isDelegating()) {
-                return realReader.isCharacters();
-            } else {
-                return false;
-            }
-        }
-
-        private boolean isDelegating() {
-            return state == STATE_SWITCHED || state == STATE_COMPLETE_AT_NEXT;
-        }
-
-        public boolean isEndElement() {
-            if (isDelegating()) {
-                return realReader.isEndElement();
-            } else {
-                return false;
-            }
-        }
-
-        public boolean isStandalone() {
-            if (isDelegating()) {
-                return realReader.isStandalone();
-            } else {
-                return false;
-            }
-        }
-
-        public boolean isStartElement() {
-            if (isDelegating()) {
-                return realReader.isStartElement();
-            } else {
-                return false;
-            }
-        }
-
-        public boolean isWhiteSpace() {
-            if (isDelegating()) {
-                return realReader.isWhiteSpace();
-            } else {
-                return false;
-            }
-        }
-
-        public int next() throws XMLStreamException {
-            int returnEvent;
-
-            switch (state) {
-                case STATE_SWITCHED:
-                    returnEvent = realReader.next();
-                    if (returnEvent == END_DOCUMENT) {
-                        state = STATE_COMPLETED;
-                    } else if (!realReader.hasNext()) {
-                        state = STATE_COMPLETE_AT_NEXT;
-                    }
-                    break;
-                case STATE_INIT:
-                    state = STATE_SWITCHED;
-                    returnEvent = realReader.getEventType();
-                    break;
-                case STATE_COMPLETE_AT_NEXT:
-                    state = STATE_COMPLETED;
-                    returnEvent = END_DOCUMENT;
-                    break;
-                case STATE_COMPLETED:
-                    // oops - no way we can go beyond this
-                    throw new NoSuchElementException("End of stream has reached.");
-                default:
-                    throw new UnsupportedOperationException();
-            }
-
-            return returnEvent;
-        }
-
-        public int nextTag() throws XMLStreamException {
-            if (isDelegating()) {
-                return realReader.nextTag();
-            } else {
-                throw new XMLStreamException();
-            }
-        }
-
-        public void require(int i, String s, String s1) throws XMLStreamException {
-            if (isDelegating()) {
-                realReader.require(i, s, s1);
-            }
-        }
-
-        public boolean standaloneSet() {
-            if (isDelegating()) {
-                return realReader.standaloneSet();
-            } else {
-                return false;
-            }
-        }
-    }
-
-    public static interface XMLFragmentStreamReader extends XMLStreamReader {
-
-        // this will help to handle Text within the current element.
-        // user should pass the element text to the property list as this
-        // ELEMENT_TEXT as the key. This key deliberately has a space in it
-        // so that it is not a valid XML name
-        String ELEMENT_TEXT = "Element Text";
-
-        /**
-         * Initiate the parser - this will do whatever the needed tasks to initiate the parser and must be called before
-         * attempting any specific parsing using this parser
-         */
-        void init();
-
-        /**
-         * Extra method to query the state of the pullparser
-         */
-        boolean isEndOfFragment();
-
-        /**
-         * add the parent namespace context to this parser
-         */
-        void setParentNamespaceContext(NamespaceContext nsContext);
-    }
-
-    /**
-     * The XMLStreamSerializer pulls events from the XMLStreamReader and dumps into the XMLStreamWriter
-     */
-    public static class XMLStreamSerializer implements XMLStreamConstants {
-        public static final String NAMESPACE_PREFIX = "ns";
-        private static int namespaceSuffix;
-
-        /*
-         * The behavior of the serializer is such that it returns when it
-         * encounters the starting element for the second time. The depth
-         * variable tracks the depth of the serilizer and tells it when to
-         * return. Note that it is assumed that this serialization starts on an
-         * Element.
-         */
-
-        /**
-         * Field depth
-         */
-        private int depth;
-
-        /**
-         * Generates a unique namespace prefix that is not in the scope of the NamespaceContext
-         *
-         * @param nsCtxt
-         * @return string
-         */
-        private String generateUniquePrefix(NamespaceContext nsCtxt) {
-            String prefix = NAMESPACE_PREFIX + namespaceSuffix++;
-            // null should be returned if the prefix is not bound!
-            while (nsCtxt.getNamespaceURI(prefix) != null) {
-                prefix = NAMESPACE_PREFIX + namespaceSuffix++;
-            }
-
-            return prefix;
-        }
-
-        /**
-         * Method serialize.
-         *
-         * @param node
-         * @param writer
-         * @throws XMLStreamException
-         */
-        public void serialize(XMLStreamReader node, XMLStreamWriter writer) throws XMLStreamException {
-            serializeNode(node, writer);
-        }
-
-        /**
-         * @param reader
-         * @param writer
-         * @throws XMLStreamException
-         */
-        protected void serializeAttributes(XMLStreamReader reader, XMLStreamWriter writer)
-            throws XMLStreamException {
-            int count = reader.getAttributeCount();
-            String prefix;
-            String namespaceName;
-            String writerPrefix;
-            for (int i = 0; i < count; i++) {
-                prefix = reader.getAttributePrefix(i);
-                namespaceName = reader.getAttributeNamespace(i);
-                /*
-                 * Due to parser implementations returning null as the namespace
-                 * URI (for the empty namespace) we need to make sure that we
-                 * deal with a namespace name that is not null. The best way to
-                 * work around this issue is to set the namespace uri to "" if
-                 * it is null
-                 */
-                if (namespaceName == null) {
-                    namespaceName = "";
-                }
-
-                writerPrefix = writer.getNamespaceContext().getPrefix(namespaceName);
-
-                if (!"".equals(namespaceName)) {
-                    // prefix has already being declared but this particular
-                    // attrib has a
-                    // no prefix attached. So use the prefix provided by the
-                    // writer
-                    if (writerPrefix != null && (prefix == null || prefix.equals(""))) {
-                        writer.writeAttribute(writerPrefix,
-                            namespaceName,
-                            reader.getAttributeLocalName(i),
-                            reader.getAttributeValue(i));
-
-                        // writer prefix is available but different from the
-                        // current
-                        // prefix of the attrib. We should be decalring the new
-                        // prefix
-                        // as a namespace declaration
-                    } else if (prefix != null && !"".equals(prefix) && !prefix.equals(writerPrefix)) {
-                        writer.writeNamespace(prefix, namespaceName);
-                        writer.writeAttribute(prefix, namespaceName, reader.getAttributeLocalName(i), reader
-                            .getAttributeValue(i));
-
-                        // prefix is null (or empty), but the namespace name is
-                        // valid! it has not
-                        // being written previously also. So we need to generate
-                        // a prefix
-                        // here
-                    } else if (prefix == null || prefix.equals("")) {
-                        prefix = generateUniquePrefix(writer.getNamespaceContext());
-                        writer.writeNamespace(prefix, namespaceName);
-                        writer.writeAttribute(prefix, namespaceName, reader.getAttributeLocalName(i), reader
-                            .getAttributeValue(i));
-                    } else {
-                        writer.writeAttribute(prefix, namespaceName, reader.getAttributeLocalName(i), reader
-                            .getAttributeValue(i));
-                    }
-                } else {
-                    // empty namespace is equal to no namespace!
-                    writer.writeAttribute(reader.getAttributeLocalName(i), reader.getAttributeValue(i));
-                }
-
-            }
-        }
-
-        /**
-         * Method serializeCData.
-         *
-         * @param reader
-         * @param writer
-         * @throws XMLStreamException
-         */
-        protected void serializeCData(XMLStreamReader reader, XMLStreamWriter writer)
-            throws XMLStreamException {
-            writer.writeCData(reader.getText());
-        }
-
-        /**
-         * Method serializeComment.
-         *
-         * @param reader
-         * @param writer
-         * @throws XMLStreamException
-         */
-        protected void serializeComment(XMLStreamReader reader, XMLStreamWriter writer)
-            throws XMLStreamException {
-            writer.writeComment(reader.getText());
-        }
-
-        /**
-         * @param reader
-         * @param writer
-         * @throws XMLStreamException
-         */
-        protected void serializeElement(XMLStreamReader reader, XMLStreamWriter writer)
-            throws XMLStreamException {
-            String prefix = reader.getPrefix();
-            String nameSpaceName = reader.getNamespaceURI();
-            if (nameSpaceName != null) {
-                String writerPrefix = writer.getPrefix(nameSpaceName);
-                if (writerPrefix != null) {
-                    writer.writeStartElement(nameSpaceName, reader.getLocalName());
-                } else {
-                    if (prefix != null) {
-                        writer.writeStartElement(prefix, reader.getLocalName(), nameSpaceName);
-                        writer.writeNamespace(prefix, nameSpaceName);
-                        writer.setPrefix(prefix, nameSpaceName);
-                    } else {
-                        writer.writeStartElement(nameSpaceName, reader.getLocalName());
-                        writer.writeDefaultNamespace(nameSpaceName);
-                        writer.setDefaultNamespace(nameSpaceName);
-                    }
-                }
-            } else {
-                writer.writeStartElement(reader.getLocalName());
-            }
-
-            // add the namespaces
-            int count = reader.getNamespaceCount();
-            String namespacePrefix;
-            for (int i = 0; i < count; i++) {
-                namespacePrefix = reader.getNamespacePrefix(i);
-                if (namespacePrefix != null && namespacePrefix.length() == 0) {
-                    continue;
-                }
-
-                serializeNamespace(namespacePrefix, reader.getNamespaceURI(i), writer);
-            }
-
-            // add attributes
-            serializeAttributes(reader, writer);
-
-        }
-
-        /**
-         * Method serializeEndElement.
-         *
-         * @param writer
-         * @throws XMLStreamException
-         */
-        protected void serializeEndElement(XMLStreamWriter writer) throws XMLStreamException {
-            writer.writeEndElement();
-        }
-
-        /**
-         * Method serializeNamespace.
-         *
-         * @param prefix
-         * @param uri
-         * @param writer
-         * @throws XMLStreamException
-         */
-        private void serializeNamespace(String prefix, String uri, XMLStreamWriter writer)
-            throws XMLStreamException {
-            String prefix1 = writer.getPrefix(uri);
-            if (prefix1 == null) {
-                writer.writeNamespace(prefix, uri);
-                writer.setPrefix(prefix, uri);
-            }
-        }
-
-        /**
-         * Method serializeNode.
-         *
-         * @param reader
-         * @param writer
-         * @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();
-                if (event == START_ELEMENT) {
-                    serializeElement(reader, writer);
-                    depth++;
-                } else if (event == ATTRIBUTE) {
-                    serializeAttributes(reader, writer);
-                } else if (event == CHARACTERS) {
-                    serializeText(reader, writer);
-                } else if (event == COMMENT) {
-                    serializeComment(reader, writer);
-                } else if (event == CDATA) {
-                    serializeCData(reader, writer);
-                } else if (event == END_ELEMENT) {
-                    serializeEndElement(writer);
-                    depth--;
-                } else if (event == START_DOCUMENT) {
-                    depth++; // if a start document is found then increment
-                    // 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
-                    }
-                }
-                if (depth == 0) {
-                    break;
-                }
-            }
-        }
-
-        /**
-         * @param reader
-         * @param writer
-         * @throws XMLStreamException
-         */
-        protected void serializeText(XMLStreamReader reader, XMLStreamWriter writer)
-            throws XMLStreamException {
-            writer.writeCharacters(reader.getText());
-        }
     }
 
     public static XMLStreamReader createXMLStreamReader(InputStream inputStream) throws XMLStreamException {

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StreamDataPipe.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StreamDataPipe.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StreamDataPipe.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StreamDataPipe.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2Node.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2Node.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2Node.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2Node.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import java.io.StringReader;
 

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2SAX.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2SAX.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2SAX.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2SAX.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import java.io.StringReader;
 

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2XMLStreamReader.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2XMLStreamReader.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2XMLStreamReader.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2XMLStreamReader.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamReader;

Added: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/WrappingXMLStreamReader.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/WrappingXMLStreamReader.java?view=auto&rev=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/WrappingXMLStreamReader.java (added)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/WrappingXMLStreamReader.java Fri Mar 16 22:56:48 2007
@@ -0,0 +1,230 @@
+/*
+ * 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.tuscany.databinding.xml;
+
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.Location;
+import javax.xml.stream.XMLStreamReader;
+import javax.xml.namespace.QName;
+import javax.xml.namespace.NamespaceContext;
+
+public class WrappingXMLStreamReader implements XMLFragmentStreamReader {
+
+    private XMLStreamReader reader;
+
+    public WrappingXMLStreamReader(XMLStreamReader reader) {
+        this.reader = reader;
+    }
+
+    public boolean isDone() {
+        try {
+            return !hasNext();
+        } catch (XMLStreamException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    public Object getProperty(String string) throws IllegalArgumentException {
+        return reader.getProperty(string);
+    }
+
+    public int next() throws XMLStreamException {
+        return reader.next();
+    }
+
+    public void require(int i, String string, String string1) throws XMLStreamException {
+        // nothing to do
+    }
+
+    public String getElementText() throws XMLStreamException {
+        return reader.getElementText();
+    }
+
+    public int nextTag() throws XMLStreamException {
+        return reader.nextTag();
+    }
+
+    public boolean hasNext() throws XMLStreamException {
+        return reader.hasNext();
+    }
+
+    public void close() throws XMLStreamException {
+        reader.close();
+    }
+
+    public String getNamespaceURI(String string) {
+        return reader.getNamespaceURI(string);
+    }
+
+    public boolean isStartElement() {
+        return reader.isStartElement();
+    }
+
+    public boolean isEndElement() {
+        return reader.isEndElement();
+    }
+
+    public boolean isCharacters() {
+        return reader.isCharacters();
+    }
+
+    public boolean isWhiteSpace() {
+        return reader.isWhiteSpace();
+    }
+
+    public String getAttributeValue(String string, String string1) {
+        return reader.getAttributeValue(string, string1);
+    }
+
+    public int getAttributeCount() {
+        return reader.getAttributeCount();
+    }
+
+    public QName getAttributeName(int i) {
+        return reader.getAttributeName(i);
+    }
+
+    public String getAttributeNamespace(int i) {
+        return reader.getAttributeNamespace(i);
+    }
+
+    public String getAttributeLocalName(int i) {
+        return reader.getAttributeLocalName(i);
+    }
+
+    public String getAttributePrefix(int i) {
+        return reader.getAttributeLocalName(i);
+    }
+
+    public String getAttributeType(int i) {
+        return reader.getAttributeType(i);
+    }
+
+    public String getAttributeValue(int i) {
+        return reader.getAttributeValue(i);
+    }
+
+    public boolean isAttributeSpecified(int i) {
+        return reader.isAttributeSpecified(i);
+    }
+
+    public int getNamespaceCount() {
+        return reader.getNamespaceCount();
+    }
+
+    public String getNamespacePrefix(int i) {
+        return reader.getNamespacePrefix(i);
+    }
+
+    public String getNamespaceURI(int i) {
+        return reader.getNamespaceURI(i);
+    }
+
+    public NamespaceContext getNamespaceContext() {
+        return reader.getNamespaceContext();
+    }
+
+    public int getEventType() {
+        return reader.getEventType();
+    }
+
+    public String getText() {
+        return reader.getText();
+    }
+
+    public char[] getTextCharacters() {
+        return reader.getTextCharacters();
+    }
+
+    public int getTextCharacters(int i, char[] chars, int i1, int i2) throws XMLStreamException {
+        return reader.getTextCharacters(i, chars, i1, i2);
+    }
+
+    public int getTextStart() {
+        return reader.getTextStart();
+    }
+
+    public int getTextLength() {
+        return reader.getTextLength();
+    }
+
+    public String getEncoding() {
+        return reader.getEncoding();
+    }
+
+    public boolean hasText() {
+        return reader.hasText();
+    }
+
+    public Location getLocation() {
+        return reader.getLocation();
+    }
+
+    public QName getName() {
+        return reader.getName();
+    }
+
+    public String getLocalName() {
+        return reader.getLocalName();
+    }
+
+    public boolean hasName() {
+        return reader.hasName();
+    }
+
+    public String getNamespaceURI() {
+        return reader.getNamespaceURI();
+    }
+
+    public String getPrefix() {
+        return reader.getPrefix();
+    }
+
+    public String getVersion() {
+        return reader.getVersion();
+    }
+
+    public boolean isStandalone() {
+        return reader.isStandalone();
+    }
+
+    public boolean standaloneSet() {
+        return reader.standaloneSet();
+    }
+
+    public String getCharacterEncodingScheme() {
+        return reader.getCharacterEncodingScheme();
+    }
+
+    public String getPITarget() {
+        return reader.getPITarget();
+    }
+
+    public String getPIData() {
+        return reader.getPIData();
+    }
+
+    public void setParentNamespaceContext(NamespaceContext nsContext) {
+        // nothing to do here
+    }
+
+    public void init() {
+        // Nothing to do here
+    }
+}

Propchange: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/WrappingXMLStreamReader.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/WrappingXMLStreamReader.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Writer2ReaderDataPipe.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Writer2ReaderDataPipe.java?view=diff&rev=519244&r1=519083&r2=519244
==============================================================================
--- incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Writer2ReaderDataPipe.java (original)
+++ incubator/tuscany/java/sca/services/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Writer2ReaderDataPipe.java Fri Mar 16 22:56:48 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.core.databinding.xml;
+package org.apache.tuscany.databinding.xml;
 
 import java.io.Reader;
 import java.io.StringReader;



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org