You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by bi...@apache.org on 2009/03/11 03:40:36 UTC
svn commit: r752357 - in /cxf/trunk:
api/src/main/java/org/apache/cxf/databinding/
rt/core/src/main/java/org/apache/cxf/interceptor/
rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/
rt/databinding/xmlbeans/src/main/java/org/apache/c...
Author: bimargulies
Date: Wed Mar 11 02:40:36 2009
New Revision: 752357
URL: http://svn.apache.org/viewvc?rev=752357&view=rev
Log:
Finish out the modularity to allow Aegis validation at some point. If this much is in 2.2.0, 2.2.x can
fill in the rest when msv is ready.
Added:
cxf/trunk/api/src/main/java/org/apache/cxf/databinding/BaseDataWriter.java (with props)
cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataBindingValidation2.java
- copied, changed from r752223, cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataReaderValidation2.java
Removed:
cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataReaderValidation2.java
Modified:
cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataWriter.java
cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/AbstractInDatabindingInterceptor.java
cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/ElementDataReader.java
cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/ElementDataWriter.java
cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/XMLStreamDataReader.java
cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/XMLStreamDataWriter.java
cxf/trunk/rt/databinding/xmlbeans/src/main/java/org/apache/cxf/xmlbeans/DataReaderImpl.java
Added: cxf/trunk/api/src/main/java/org/apache/cxf/databinding/BaseDataWriter.java
URL: http://svn.apache.org/viewvc/cxf/trunk/api/src/main/java/org/apache/cxf/databinding/BaseDataWriter.java?rev=752357&view=auto
==============================================================================
--- cxf/trunk/api/src/main/java/org/apache/cxf/databinding/BaseDataWriter.java (added)
+++ cxf/trunk/api/src/main/java/org/apache/cxf/databinding/BaseDataWriter.java Wed Mar 11 02:40:36 2009
@@ -0,0 +1,51 @@
+/**
+ * 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.cxf.databinding;
+
+import java.util.Collection;
+
+import javax.xml.validation.Schema;
+
+import org.apache.cxf.message.Attachment;
+
+/**
+ * The 'write' side of the data binding abstraction of CXF.
+ */
+public interface BaseDataWriter {
+ String ENDPOINT = DataWriter.class.getName() + "Endpoint";
+
+ /**
+ * Attach a schema to the writer. If the binding supports validation, it will
+ * validate the XML that it produces (assuming that it produces XML).
+ * @param s the schema.
+ */
+ void setSchema(Schema s);
+ /**
+ * Attach a collection of attachments to this writer.
+ * @param attachments
+ */
+ void setAttachments(Collection<Attachment> attachments);
+ /**
+ * Set a property for the writer.
+ * @param key property key
+ * @param value property value.
+ */
+ void setProperty(String key, Object value);
+}
Propchange: cxf/trunk/api/src/main/java/org/apache/cxf/databinding/BaseDataWriter.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: cxf/trunk/api/src/main/java/org/apache/cxf/databinding/BaseDataWriter.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Copied: cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataBindingValidation2.java (from r752223, cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataReaderValidation2.java)
URL: http://svn.apache.org/viewvc/cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataBindingValidation2.java?p2=cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataBindingValidation2.java&p1=cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataReaderValidation2.java&r1=752223&r2=752357&rev=752357&view=diff
==============================================================================
--- cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataReaderValidation2.java (original)
+++ cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataBindingValidation2.java Wed Mar 11 02:40:36 2009
@@ -25,7 +25,7 @@
* If a DataReader<T> implements this interface, it prefers to be supplied with schema
* for validation via an XmlSchemaCollection instead of via a packaged Schema object.
*/
-public interface DataReaderValidation2 {
+public interface DataBindingValidation2 {
/**
*
* @param schema
Modified: cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataWriter.java
URL: http://svn.apache.org/viewvc/cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataWriter.java?rev=752357&r1=752356&r2=752357&view=diff
==============================================================================
--- cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataWriter.java (original)
+++ cxf/trunk/api/src/main/java/org/apache/cxf/databinding/DataWriter.java Wed Mar 11 02:40:36 2009
@@ -19,11 +19,6 @@
package org.apache.cxf.databinding;
-import java.util.Collection;
-
-import javax.xml.validation.Schema;
-
-import org.apache.cxf.message.Attachment;
import org.apache.cxf.service.model.MessagePartInfo;
/**
@@ -31,7 +26,7 @@
* objects to a 'sink' of type T.
* @param <T> The type of sink. Each data binding defines the set of sink types that it supports.
*/
-public interface DataWriter<T> {
+public interface DataWriter<T> extends BaseDataWriter {
String ENDPOINT = DataWriter.class.getName() + "Endpoint";
/**
@@ -48,21 +43,4 @@
* @param output the output sink.
*/
void write(Object obj, MessagePartInfo part, T output);
- /**
- * Attach a schema to the writer. If the binding supports validation, it will
- * validate the XML that it produces (assuming that it produces XML).
- * @param s the schema.
- */
- void setSchema(Schema s);
- /**
- * Attach a collection of attachments to this writer.
- * @param attachments
- */
- void setAttachments(Collection<Attachment> attachments);
- /**
- * Set a property for the writer.
- * @param key property key
- * @param value property value.
- */
- void setProperty(String key, Object value);
}
Modified: cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/AbstractInDatabindingInterceptor.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/AbstractInDatabindingInterceptor.java?rev=752357&r1=752356&r2=752357&view=diff
==============================================================================
--- cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/AbstractInDatabindingInterceptor.java (original)
+++ cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/AbstractInDatabindingInterceptor.java Wed Mar 11 02:40:36 2009
@@ -30,8 +30,8 @@
import org.w3c.dom.Node;
import org.apache.cxf.common.i18n.BundleUtils;
+import org.apache.cxf.databinding.DataBindingValidation2;
import org.apache.cxf.databinding.DataReader;
-import org.apache.cxf.databinding.DataReaderValidation2;
import org.apache.cxf.endpoint.Endpoint;
import org.apache.cxf.message.Exchange;
import org.apache.cxf.message.Message;
@@ -107,8 +107,8 @@
/* This might be a reader that wants to grab the schema from the
* service info.
*/
- if (reader instanceof DataReaderValidation2) {
- ((DataReaderValidation2)reader).setSchema(service.getServiceInfos().get(0)
+ if (reader instanceof DataBindingValidation2) {
+ ((DataBindingValidation2)reader).setSchema(service.getServiceInfos().get(0)
.getXmlSchemaCollection().getXmlSchemaCollection());
}
}
Modified: cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/ElementDataReader.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/ElementDataReader.java?rev=752357&r1=752356&r2=752357&view=diff
==============================================================================
--- cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/ElementDataReader.java (original)
+++ cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/ElementDataReader.java Wed Mar 11 02:40:36 2009
@@ -28,15 +28,17 @@
import org.apache.cxf.aegis.AegisElementDataReader;
import org.apache.cxf.aegis.type.Type;
+import org.apache.cxf.databinding.DataBindingValidation2;
import org.apache.cxf.databinding.DataReader;
import org.apache.cxf.interceptor.Fault;
import org.apache.cxf.message.Attachment;
import org.apache.cxf.service.model.MessagePartInfo;
+import org.apache.ws.commons.schema.XmlSchemaCollection;
/**
*
*/
-public class ElementDataReader implements DataReader<Element> {
+public class ElementDataReader implements DataReader<Element>, DataBindingValidation2 {
private AegisElementDataReader reader;
private AegisDatabinding databinding;
@@ -91,4 +93,9 @@
public void setSchema(Schema s) {
reader.setSchema(s);
}
+
+ public void setSchema(XmlSchemaCollection schema) {
+ // TODO Auto-generated method stub
+
+ }
}
Modified: cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/ElementDataWriter.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/ElementDataWriter.java?rev=752357&r1=752356&r2=752357&view=diff
==============================================================================
--- cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/ElementDataWriter.java (original)
+++ cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/ElementDataWriter.java Wed Mar 11 02:40:36 2009
@@ -36,13 +36,15 @@
import org.apache.cxf.aegis.xml.stax.ElementWriter;
import org.apache.cxf.common.i18n.Message;
import org.apache.cxf.common.logging.LogUtils;
+import org.apache.cxf.databinding.DataBindingValidation2;
import org.apache.cxf.databinding.DataWriter;
import org.apache.cxf.interceptor.Fault;
import org.apache.cxf.message.Attachment;
import org.apache.cxf.service.model.MessagePartInfo;
import org.apache.cxf.staxutils.W3CDOMStreamWriter;
+import org.apache.ws.commons.schema.XmlSchemaCollection;
-public class ElementDataWriter implements DataWriter<Element> {
+public class ElementDataWriter implements DataWriter<Element>, DataBindingValidation2 {
private static final Logger LOG = LogUtils.getL7dLogger(XMLStreamDataReader.class);
@@ -112,5 +114,10 @@
return properties.get(key);
}
+ public void setSchema(XmlSchemaCollection schema) {
+ // TODO Auto-generated method stub
+
+ }
+
}
Modified: cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/XMLStreamDataReader.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/XMLStreamDataReader.java?rev=752357&r1=752356&r2=752357&view=diff
==============================================================================
--- cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/XMLStreamDataReader.java (original)
+++ cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/XMLStreamDataReader.java Wed Mar 11 02:40:36 2009
@@ -27,15 +27,15 @@
import org.apache.cxf.Bus;
import org.apache.cxf.aegis.AegisXMLStreamDataReader;
import org.apache.cxf.aegis.type.Type;
+import org.apache.cxf.databinding.DataBindingValidation2;
import org.apache.cxf.databinding.DataReader;
-import org.apache.cxf.databinding.DataReaderValidation2;
import org.apache.cxf.interceptor.Fault;
import org.apache.cxf.message.Attachment;
import org.apache.cxf.service.model.MessagePartInfo;
import org.apache.cxf.staxutils.StaxValidationManager;
import org.apache.ws.commons.schema.XmlSchemaCollection;
-public class XMLStreamDataReader implements DataReader<XMLStreamReader>, DataReaderValidation2 {
+public class XMLStreamDataReader implements DataReader<XMLStreamReader>, DataBindingValidation2 {
private AegisDatabinding databinding;
private AegisXMLStreamDataReader reader;
Modified: cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/XMLStreamDataWriter.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/XMLStreamDataWriter.java?rev=752357&r1=752356&r2=752357&view=diff
==============================================================================
--- cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/XMLStreamDataWriter.java (original)
+++ cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/databinding/XMLStreamDataWriter.java Wed Mar 11 02:40:36 2009
@@ -34,13 +34,15 @@
import org.apache.cxf.aegis.xml.stax.ElementWriter;
import org.apache.cxf.common.i18n.Message;
import org.apache.cxf.common.logging.LogUtils;
+import org.apache.cxf.databinding.DataBindingValidation2;
import org.apache.cxf.databinding.DataWriter;
import org.apache.cxf.interceptor.Fault;
import org.apache.cxf.message.Attachment;
import org.apache.cxf.service.model.MessagePartInfo;
+import org.apache.ws.commons.schema.XmlSchemaCollection;
import org.apache.ws.commons.schema.XmlSchemaElement;
-public class XMLStreamDataWriter implements DataWriter<XMLStreamWriter> {
+public class XMLStreamDataWriter implements DataWriter<XMLStreamWriter>, DataBindingValidation2 {
private static final Logger LOG = LogUtils.getL7dLogger(XMLStreamDataReader.class);
@@ -116,5 +118,10 @@
return properties.get(key);
}
+ public void setSchema(XmlSchemaCollection schema) {
+ // TODO Auto-generated method stub
+
+ }
+
}
Modified: cxf/trunk/rt/databinding/xmlbeans/src/main/java/org/apache/cxf/xmlbeans/DataReaderImpl.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/databinding/xmlbeans/src/main/java/org/apache/cxf/xmlbeans/DataReaderImpl.java?rev=752357&r1=752356&r2=752357&view=diff
==============================================================================
--- cxf/trunk/rt/databinding/xmlbeans/src/main/java/org/apache/cxf/xmlbeans/DataReaderImpl.java (original)
+++ cxf/trunk/rt/databinding/xmlbeans/src/main/java/org/apache/cxf/xmlbeans/DataReaderImpl.java Wed Mar 11 02:40:36 2009
@@ -30,8 +30,8 @@
import org.apache.cxf.common.i18n.Message;
import org.apache.cxf.common.logging.LogUtils;
+import org.apache.cxf.databinding.DataBindingValidation2;
import org.apache.cxf.databinding.DataReader;
-import org.apache.cxf.databinding.DataReaderValidation2;
import org.apache.cxf.interceptor.Fault;
import org.apache.cxf.message.Attachment;
import org.apache.cxf.service.model.MessagePartInfo;
@@ -42,7 +42,7 @@
import org.apache.xmlbeans.XmlOptions;
-public class DataReaderImpl implements DataReader<XMLStreamReader> , DataReaderValidation2 {
+public class DataReaderImpl implements DataReader<XMLStreamReader> , DataBindingValidation2 {
private static final Logger LOG = LogUtils.getLogger(XmlBeansDataBinding.class);
private XmlSchemaCollection schemas;