You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by ke...@apache.org on 2007/07/19 15:33:34 UTC
svn commit: r557615 [2/2] - in
/incubator/tuscany/branches/sdo-1.0-incubating:
impl/src/main/java/org/apache/tuscany/sdo/helper/
impl/src/main/java/org/apache/tuscany/sdo/util/
impl/src/test/java/org/apache/tuscany/sdo/test/
lib/src/main/java/org/apach...
Modified: incubator/tuscany/branches/sdo-1.0-incubating/impl/src/test/java/org/apache/tuscany/sdo/test/XMLStreamHelperTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sdo-1.0-incubating/impl/src/test/java/org/apache/tuscany/sdo/test/XMLStreamHelperTestCase.java?view=diff&rev=557615&r1=557614&r2=557615
==============================================================================
--- incubator/tuscany/branches/sdo-1.0-incubating/impl/src/test/java/org/apache/tuscany/sdo/test/XMLStreamHelperTestCase.java (original)
+++ incubator/tuscany/branches/sdo-1.0-incubating/impl/src/test/java/org/apache/tuscany/sdo/test/XMLStreamHelperTestCase.java Thu Jul 19 06:33:32 2007
@@ -34,9 +34,8 @@
import junit.framework.Assert;
import junit.framework.TestCase;
-import org.apache.tuscany.sdo.helper.XMLStreamHelper;
-import org.apache.tuscany.sdo.util.SDOUtil;
-
+import org.apache.tuscany.sdo.api.XMLStreamHelper;
+import org.apache.tuscany.sdo.api.SDOUtil;
import commonj.sdo.DataObject;
import commonj.sdo.helper.*;
@@ -50,11 +49,11 @@
private XMLOutputFactory outputFactory;
- private QName module = new QName("http://foo", "module");
+ private final QName module = new QName("http://foo", "module");
- private QName name = new QName("http://bar", "implementation.mock");
+ private final QName name = new QName("http://bar", "implementation.mock");
- private String testName = "foo-ext";
+ private final String testName = "foo-ext";
// private String testName = "complex";
private String xml;
@@ -67,7 +66,7 @@
super.setUp();
hc = SDOUtil.createHelperContext();
- streamHelper = SDOUtil.createXMLStreamHelper(hc.getTypeHelper());
+ streamHelper = SDOUtil.createXMLStreamHelper(hc);
URL url = getClass().getClassLoader().getResource(testName + ".xsd");
hc.getXSDHelper().define(url.openStream(), url.toExternalForm());
@@ -78,84 +77,85 @@
outputFactory = XMLOutputFactory.newInstance();
url = getClass().getClassLoader().getResource(testName + ".xml");
- InputStreamReader reader = new InputStreamReader(url.openStream());
- StringBuffer stringBuffer = new StringBuffer();
- char buf[] = new char[1024];
+ final InputStreamReader reader = new InputStreamReader(url.openStream());
+ final StringBuffer stringBuffer = new StringBuffer();
+ final char buf[] = new char[1024];
int size;
- while ((size = reader.read(buf)) != -1)
+ while ((size = reader.read(buf)) != -1) {
stringBuffer.append(buf, 0, size);
+ }
xml = stringBuffer.toString();
reader.close();
}
public void testLoadObject() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(xml));
+ final XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(xml));
int event = reader.getEventType();
- while (!(event == XMLStreamConstants.START_ELEMENT && reader.getName().equals(name)) && reader.hasNext()) {
+ while (!((event == XMLStreamConstants.START_ELEMENT) && reader.getName().equals(name)) && reader.hasNext()) {
event = reader.next();
}
- DataObject dataObject = streamHelper.loadObject(reader);
+ final DataObject dataObject = streamHelper.loadObject(reader);
Assert.assertNotNull(dataObject);
Assert.assertTrue(dataObject.getString("myAttr").equals("helloworld.HelloWorldImpl"));
}
public void testLoadUnqualifiedObject() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(xml.replaceAll("bar:", "")));
+ final XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(xml.replaceAll("bar:", "")));
int event = reader.getEventType();
- while (!(event == XMLStreamConstants.START_ELEMENT && reader.getName().getLocalPart().equals(name.getLocalPart())) && reader.hasNext()) {
+ while (!((event == XMLStreamConstants.START_ELEMENT) && reader.getName().getLocalPart().equals(name.getLocalPart())) && reader.hasNext()) {
event = reader.next();
}
- Map options = new HashMap();
+ final Map options = new HashMap();
options.put(XMLStreamHelper.OPTION_DEFAULT_ROOT_TYPE, hc.getTypeHelper().getType(name.getNamespaceURI(), "MockImplementation"));
- DataObject dataObject = streamHelper.loadObject(reader, options);
+ final DataObject dataObject = streamHelper.loadObject(reader, options);
Assert.assertNotNull(dataObject);
Assert.assertTrue(dataObject.getString("myAttr").equals("helloworld.HelloWorldImpl"));
}
public void testLoad() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(xml));
- XMLDocument document = streamHelper.load(reader);
+ final XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(xml));
+ final XMLDocument document = streamHelper.load(reader);
Assert.assertNotNull(document);
Assert.assertEquals(document.getRootElementURI(), module.getNamespaceURI());
Assert.assertEquals(document.getRootElementName(), module.getLocalPart());
- DataObject moduleObject = document.getRootObject();
- List components = moduleObject.getList("component");
- DataObject componentObject = (DataObject) components.get(0);
- DataObject implObject = componentObject.getDataObject("implementation.mock");
+ final DataObject moduleObject = document.getRootObject();
+ final List components = moduleObject.getList("component");
+ final DataObject componentObject = (DataObject) components.get(0);
+ final DataObject implObject = componentObject.getDataObject("implementation.mock");
Assert.assertTrue(implObject.getString("myAttr").equals("helloworld.HelloWorldImpl"));
}
public void testSave() throws XMLStreamException {
- XMLDocument document = hc.getXMLHelper().load(xml);
- StringWriter writer = new StringWriter();
- XMLStreamWriter streamWriter = outputFactory.createXMLStreamWriter(writer);
+ final XMLDocument document = hc.getXMLHelper().load(xml);
+ final StringWriter writer = new StringWriter();
+ final XMLStreamWriter streamWriter = outputFactory.createXMLStreamWriter(writer);
streamHelper.save(document, streamWriter);
streamWriter.flush();
- String xmlStr = writer.toString();
+ final String xmlStr = writer.toString();
//System.out.println(xmlStr);
Assert.assertTrue(xmlStr.indexOf("myAttr=\"helloworld.HelloWorldImpl\"")!=-1);
}
public void testSaveObject() throws XMLStreamException {
- XMLDocument document = hc.getXMLHelper().load(xml);
- DataObject moduleObject = document.getRootObject();
- List components = moduleObject.getList("component");
- DataObject componentObject = (DataObject) components.get(0);
- StringWriter writer = new StringWriter();
- XMLStreamWriter streamWriter = outputFactory.createXMLStreamWriter(writer);
+ final XMLDocument document = hc.getXMLHelper().load(xml);
+ final DataObject moduleObject = document.getRootObject();
+ final List components = moduleObject.getList("component");
+ final DataObject componentObject = (DataObject) components.get(0);
+ final StringWriter writer = new StringWriter();
+ final XMLStreamWriter streamWriter = outputFactory.createXMLStreamWriter(writer);
streamHelper.saveObject(componentObject, streamWriter);
streamWriter.flush();
Assert.assertTrue(writer.toString().indexOf("myAttr=\"helloworld.HelloWorldImpl\"")!=-1);
}
public void testSaveSequence() throws IOException, XMLStreamException {
- DataObject quote = hc.getDataFactory().create("http://www.example.com/mixed", "MixedQuote");
+ final DataObject quote = hc.getDataFactory().create("http://www.example.com/mixed", "MixedQuote");
quote.setString("symbol", "fbnt");
quote.getSequence().addText(0, "testing");
quote.getSequence().addText("more testing");
- StringWriter writer = new StringWriter();
- XMLStreamWriter streamWriter = outputFactory.createXMLStreamWriter(writer);
+ final StringWriter writer = new StringWriter();
+ final XMLStreamWriter streamWriter = outputFactory.createXMLStreamWriter(writer);
streamHelper.saveObject(quote, streamWriter);
streamWriter.flush();
//System.out.println(writer);
Modified: incubator/tuscany/branches/sdo-1.0-incubating/lib/src/main/java/org/apache/tuscany/sdo/api/SDOHelper.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sdo-1.0-incubating/lib/src/main/java/org/apache/tuscany/sdo/api/SDOHelper.java?view=diff&rev=557615&r1=557614&r2=557615
==============================================================================
--- incubator/tuscany/branches/sdo-1.0-incubating/lib/src/main/java/org/apache/tuscany/sdo/api/SDOHelper.java (original)
+++ incubator/tuscany/branches/sdo-1.0-incubating/lib/src/main/java/org/apache/tuscany/sdo/api/SDOHelper.java Thu Jul 19 06:33:32 2007
@@ -37,7 +37,6 @@
import commonj.sdo.helper.CopyHelper;
import commonj.sdo.helper.HelperContext;
import commonj.sdo.helper.TypeHelper;
-import commonj.sdo.helper.XSDHelper;
/**
* This interface provides helper functions which are not included in the SDO specification itself.
@@ -61,7 +60,8 @@
* @return the new HelperContext
* @see #createHelperContext(boolean)
*/
- public HelperContext createHelperContext(boolean extensibleNamespaces,Map options);
+ public HelperContext createHelperContext(boolean extensibleNamespaces, Map options);
+
/**
* Create a HelperContext to provide access to a consistent set of Helpers which make use of a new
* TypeHelper instance to provide scope for type definitions.
@@ -69,6 +69,13 @@
* @return the new HelperContext
*/
public HelperContext createHelperContext(boolean extensibleNamespaces);
+
+ /**
+ * create a non-extensible HelperContext with default load/save options
+ * @param options default load/save options from XMLOptions
+ * @return the new HelperContext
+ */
+ public HelperContext createHelperContext(Map options);
/**
* Creates an instance of a data type from the specified string.
@@ -162,13 +169,13 @@
*
* @param inputStream the inputStream of the data graph.
* @param options loader control options, or null.
- * @param scope the TypeHelper in which to register deserialized Types and to find Types when
- * creating DataObject instances, or null for default TypeHelper.
+ * @param hc the HelperContext in which to register deserialized Types and to find Types when
+ * creating DataObject instances, or null for default HelperContext.
* @return the de-serialized data graph.
* @throws IOException
*/
- public DataGraph loadDataGraph(InputStream inputStream, Map options, TypeHelper scope) throws IOException;
-
+ public DataGraph loadDataGraph(InputStream inputStream, Map options, HelperContext hc) throws IOException;
+
/**
* Serialize the specified data graph to the specified outputStream.
* @param dataGraph the data graph to save.
@@ -188,29 +195,23 @@
* types used by the objects in the DataGraph).
*/
public void registerDataGraphTypes(DataGraph dataGraph, List/*Type*/types);
-
+
/**
* Create a new cross scope CopyHelper.
- * @param targetScope the TypeHelper containing the Types to use to create the copy objects.
+ * @param hc the HelperContext containing the Types to use to create the copy objects.
* @return the new CopyHelper.
*/
- public CopyHelper createCrossScopeCopyHelper(TypeHelper targetScope);
+ public CopyHelper createCrossScopeCopyHelper(HelperContext targetScope);
+
/**
- * Create a new XMLStreamHelper, with visibility to types in the specified TypeHelper scope.
- * @param scope the TypeHelper to use for locating types.
+ * Create a new XMLStreamHelper, with visibility to types in the specified HelperContext scope.
+ * @param hc the HelperContext to use for locating types.
* @return the new XMLStreamHelper.
*/
- public XMLStreamHelper createXMLStreamHelper(TypeHelper scope);
+ public XMLStreamHelper createXMLStreamHelper(HelperContext hc);
/**
- * Create a new XMLStreamHelper, with visibility to types in the specified TypeHelper scope.
- * @param scope the TypeHelper to use for locating types.
- * @param options Map of XMLOptions.
- * @return the new XMLStreamHelper.
- */
- public XMLStreamHelper createXMLStreamHelper(TypeHelper scope, Map options);
- /**
* Create a new ObjectInputStream in the specifice HelperContext scope.
* @param inputStream the inputStream with which to create the ObjectInputStream.
* @param helperContext the HelperContext scope.
@@ -225,14 +226,14 @@
* @return the new ObjectOutputStream.
*/
public ObjectOutputStream createObjectOutputStream(OutputStream outputStream, HelperContext helperContext) throws IOException;
-
+
/**
* Gets all of the types associated with a uri.
- * @param scope the TypeHelper to use for locating types.
+ * @param hc the HelperContext to use for locating types.
* @param uri the URI of the Types
* @return a List containing instances of Type, null if uri is not found.
*/
- public List getTypes(TypeHelper scope, String uri);
+ public List getTypes(HelperContext hc, String uri);
/**
* Gets the open content subset of the specified DataObject's instance properties.
@@ -267,11 +268,12 @@
*/
public interface MetaDataBuilder
{
+
/**
* Create a Type in the specified TypeHelper scope.
* @return the new Type.
*/
- public Type createType(TypeHelper scope, String uri, String name, boolean isDataType);
+ public Type createType(HelperContext hc, String uri, String name, boolean isDataType);
/**
* Add a baseType to the specified type.
@@ -316,7 +318,7 @@
/**
* Create a new open content property in the specified TypeHelper scope.
*/
- public Property createOpenContentProperty(TypeHelper scope, String uri, String name, Type type);
+ public Property createOpenContentProperty(HelperContext hc, String uri, String name, Type type);
/**
* Add an aliasName to the specified property.
Modified: incubator/tuscany/branches/sdo-1.0-incubating/lib/src/main/java/org/apache/tuscany/sdo/api/SDOUtil.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sdo-1.0-incubating/lib/src/main/java/org/apache/tuscany/sdo/api/SDOUtil.java?view=diff&rev=557615&r1=557614&r2=557615
==============================================================================
--- incubator/tuscany/branches/sdo-1.0-incubating/lib/src/main/java/org/apache/tuscany/sdo/api/SDOUtil.java (original)
+++ incubator/tuscany/branches/sdo-1.0-incubating/lib/src/main/java/org/apache/tuscany/sdo/api/SDOUtil.java Thu Jul 19 06:33:32 2007
@@ -139,15 +139,15 @@
*/
public static DataGraph loadDataGraph(InputStream inputStream, Map options) throws IOException
{
- return defaultSDOHelper.loadDataGraph(inputStream, options, null);
+ return defaultSDOHelper.loadDataGraph(inputStream, options, (HelperContext)null);
}
/**
- * @see {@link org.apache.tuscany.sdo.api.SDOHelper#loadDataGraph(InputStream, Map, TypeHelper)}.
+ * @see {@link org.apache.tuscany.sdo.api.SDOHelper#loadDataGraph(InputStream, Map, HelperContext)}.
*/
- public static DataGraph loadDataGraph(InputStream inputStream, Map options, TypeHelper scope) throws IOException
+ public static DataGraph loadDataGraph(InputStream inputStream, Map options, HelperContext hc) throws IOException
{
- return defaultSDOHelper.loadDataGraph(inputStream, options, scope);
+ return defaultSDOHelper.loadDataGraph(inputStream, options, hc);
}
/**
@@ -183,34 +183,37 @@
/**
* @see {@link org.apache.tuscany.sdo.api.SDOHelper#createHelperContext}.
*/
- public static HelperContext createHelperContext()
+ public static HelperContext createHelperContext(Map options)
{
- return defaultSDOHelper.createHelperContext();
+ return defaultSDOHelper.createHelperContext(options);
}
/**
- * @see {@link org.apache.tuscany.sdo.api.SDOHelper#createCrossScopeCopyHelper(TypeHelper)}.
+ * @see {@link org.apache.tuscany.sdo.api.SDOHelper#createHelperContext}.
*/
- public static CopyHelper createCrossScopeCopyHelper(TypeHelper targetScope)
+ public static HelperContext createHelperContext()
{
- return defaultSDOHelper.createCrossScopeCopyHelper(targetScope);
+ return defaultSDOHelper.createHelperContext();
}
+
/**
- * @see {@link org.apache.tuscany.sdo.api.SDOHelper#createXMLStreamHelper(TypeHelper)}.
+ * @see {@link org.apache.tuscany.sdo.api.SDOHelper#createCrossScopeCopyHelper(HelperContext)}.
*/
- public static XMLStreamHelper createXMLStreamHelper(TypeHelper scope)
+ public static CopyHelper createCrossScopeCopyHelper(HelperContext hc)
{
- return defaultSDOHelper.createXMLStreamHelper(scope);
+ return defaultSDOHelper.createCrossScopeCopyHelper(hc);
}
+
/**
- * @see {@link org.apache.tuscany.sdo.api.SDOHelper#createXMLStreamHelper(TypeHelper, Map)}.
+ * @see {@link org.apache.tuscany.sdo.api.SDOHelper#createXMLStreamHelper(HelperContext)}.
*/
- public static XMLStreamHelper createXMLStreamHelper(TypeHelper scope, Map options)
+ public static XMLStreamHelper createXMLStreamHelper(HelperContext hc)
{
- return defaultSDOHelper.createXMLStreamHelper(scope, options);
+ return defaultSDOHelper.createXMLStreamHelper(hc);
}
+
/**
* @see {@link org.apache.tuscany.sdo.api.SDOHelper#createObjectInputStream(InputStream, HelperContext)}.
*/
@@ -228,11 +231,11 @@
}
/**
- * @see {@link org.apache.tuscany.sdo.api.SDOHelper#getTypes(TypeHelper, String)}.
+ * @see {@link org.apache.tuscany.sdo.api.SDOHelper#getTypes(HelperContext, String)}.
*/
- public static List getTypes(TypeHelper scope, String uri) {
+ public static List getTypes(HelperContext hc, String uri) {
- return defaultSDOHelper.getTypes(scope, uri);
+ return defaultSDOHelper.getTypes(hc, uri);
}
/**
@@ -260,11 +263,11 @@
}
/**
- * @see {@link org.apache.tuscany.sdo.api.SDOHelper.MetaDataBuilder#createType(TypeHelper, String, String, boolean)}.
+ * @see {@link org.apache.tuscany.sdo.api.SDOHelper.MetaDataBuilder#createType(HelperContext, String, String, boolean)}.
*/
- public static Type createType(TypeHelper scope, String uri, String name, boolean isDataType)
+ public static Type createType(HelperContext hc, String uri, String name, boolean isDataType)
{
- return defaultSDOHelper.getMetaDataBuilder().createType(scope, uri, name, isDataType);
+ return defaultSDOHelper.getMetaDataBuilder().createType(hc, uri, name, isDataType);
}
/**
@@ -333,9 +336,9 @@
/**
* @see {@link org.apache.tuscany.sdo.api.SDOHelper.MetaDataBuilder#createOpenContentProperty(TypeHelper, String, String, Type)}.
*/
- public static Property createOpenContentProperty(TypeHelper scope, String uri, String name, Type type)
+ public static Property createOpenContentProperty(HelperContext hc, String uri, String name, Type type)
{
- return defaultSDOHelper.getMetaDataBuilder().createOpenContentProperty(scope, uri, name, type);
+ return defaultSDOHelper.getMetaDataBuilder().createOpenContentProperty(hc, uri, name, type);
}
/**
Modified: incubator/tuscany/branches/sdo-1.0-incubating/lib/src/main/java/org/apache/tuscany/sdo/spi/HelperProviderBase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sdo-1.0-incubating/lib/src/main/java/org/apache/tuscany/sdo/spi/HelperProviderBase.java?view=diff&rev=557615&r1=557614&r2=557615
==============================================================================
--- incubator/tuscany/branches/sdo-1.0-incubating/lib/src/main/java/org/apache/tuscany/sdo/spi/HelperProviderBase.java (original)
+++ incubator/tuscany/branches/sdo-1.0-incubating/lib/src/main/java/org/apache/tuscany/sdo/spi/HelperProviderBase.java Thu Jul 19 06:33:32 2007
@@ -40,6 +40,7 @@
import commonj.sdo.helper.DataFactory;
import commonj.sdo.helper.DataHelper;
import commonj.sdo.helper.EqualityHelper;
+import commonj.sdo.helper.HelperContext;
import commonj.sdo.helper.TypeHelper;
import commonj.sdo.helper.XMLDocument;
import commonj.sdo.helper.XMLHelper;
@@ -73,11 +74,11 @@
/**
* Subclasses must implement this method to initialize the above Helper instance variables
*/
- protected abstract void createDefaultHelpers();
+ protected abstract HelperContext createDefaultHelpers();
public HelperProviderBase()
{
- createDefaultHelpers();
+ defaultContext = createDefaultHelpers();
}
public SDOHelper sdoHelper()
Modified: incubator/tuscany/branches/sdo-1.0-incubating/sdo-api/src/main/java/commonj/sdo/impl/HelperProvider.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sdo-1.0-incubating/sdo-api/src/main/java/commonj/sdo/impl/HelperProvider.java?view=diff&rev=557615&r1=557614&r2=557615
==============================================================================
--- incubator/tuscany/branches/sdo-1.0-incubating/sdo-api/src/main/java/commonj/sdo/impl/HelperProvider.java (original)
+++ incubator/tuscany/branches/sdo-1.0-incubating/sdo-api/src/main/java/commonj/sdo/impl/HelperProvider.java Thu Jul 19 06:33:32 2007
@@ -384,7 +384,9 @@
return defaultContext;
}
- static HelperContext defaultContext = new DefaultHelperContext();
+// static HelperContext defaultContext = new DefaultHelperContext();
+// TODO: Feed back to spec -- Tuscany SDO implementation specific to create a special implementation of HelperContext
+ protected static HelperContext defaultContext;
static class DefaultHelperContext implements HelperContext
{
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org