Attached is a small patch to replace some references to SDO implementation classes with calls to the appropriate public APIs.
Brent
Index: src/main/java/org/apache/tuscany/das/rdb/impl/ChangeSummarizer.java
===================================================================
--- src/main/java/org/apache/tuscany/das/rdb/impl/ChangeSummarizer.java
(revision 393597)
+++ src/main/java/org/apache/tuscany/das/rdb/impl/ChangeSummarizer.java
(working copy)
@@ -31,10 +31,7 @@
import org.apache.tuscany.das.rdb.config.wrapper.RelationshipWrapper;
import org.apache.tuscany.das.rdb.config.wrapper.TableWrapper;
import org.apache.tuscany.das.rdb.util.DebugUtil;
-import org.apache.tuscany.sdo.impl.AttributeImpl;
import org.apache.tuscany.sdo.impl.ChangeSummaryImpl;
-import org.apache.tuscany.sdo.impl.ChangeSummarySettingImpl;
-import org.apache.tuscany.sdo.impl.ReferenceImpl;
import commonj.sdo.ChangeSummary;
import commonj.sdo.DataObject;
@@ -120,15 +117,15 @@
List values =
changeSummary.getOldValues(changedObject);
Iterator i = values.iterator();
while (i.hasNext()) {
- ChangeSummarySettingImpl setting =
(ChangeSummarySettingImpl) i
+ ChangeSummary.Setting setting =
(ChangeSummary.Setting) i
.next();
- if (setting.getFeature() instanceof
ReferenceImpl) {
+ if
(!setting.getProperty().getType().isDataType()) {
DebugUtil.debugln(getClass(),
debug,
"Reference
change for "
+ changedObject.getType().getName());
- ReferenceImpl ref =
(ReferenceImpl) setting.getFeature();
+ Property ref =
setting.getProperty();
DebugUtil.debugln(getClass(),
debug, ref.getName());
if (hasState(ref,
changedObject) ) {
@@ -175,8 +172,8 @@
private boolean hasAttributeChange(List theChanges) {
Iterator i = theChanges.iterator();
while (i.hasNext()) {
- ChangeSummarySettingImpl setting =
(ChangeSummarySettingImpl) i.next();
- if (setting.getFeature() instanceof AttributeImpl)
+ ChangeSummary.Setting setting = (ChangeSummary.Setting)
i.next();
+ if (setting.getProperty().getType().isDataType())
return true;
}
return false;
Index: src/main/java/org/apache/tuscany/das/rdb/impl/BaseCommandImpl.java
===================================================================
--- src/main/java/org/apache/tuscany/das/rdb/impl/BaseCommandImpl.java
(revision 395330)
+++ src/main/java/org/apache/tuscany/das/rdb/impl/BaseCommandImpl.java
(working copy)
@@ -1,17 +1,10 @@
package org.apache.tuscany.das.rdb.impl;
-import java.io.IOException;
-import java.io.InputStream;
import java.sql.Connection;
import org.apache.tuscany.das.rdb.Key;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.ConfigFactory;
import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.sdo.util.SDOUtil;
-import commonj.sdo.helper.XMLHelper;
-
public abstract class BaseCommandImpl {
protected MappingWrapper configWrapper = new MappingWrapper();
Index: src/main/java/org/apache/tuscany/das/rdb/impl/ReadCommandImpl.java
===================================================================
--- src/main/java/org/apache/tuscany/das/rdb/impl/ReadCommandImpl.java
(revision 395330)
+++ src/main/java/org/apache/tuscany/das/rdb/impl/ReadCommandImpl.java
(working copy)
@@ -28,11 +28,7 @@
import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
import org.apache.tuscany.das.rdb.graphbuilder.impl.GraphBuilderMetadata;
import org.apache.tuscany.das.rdb.graphbuilder.impl.ResultSetProcessor;
-import org.apache.tuscany.sdo.util.DataObjectUtil;
import org.apache.tuscany.sdo.util.SDOUtil;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
import commonj.sdo.ChangeSummary;
import commonj.sdo.DataGraph;
@@ -93,7 +89,12 @@
GraphBuilderMetadata gbmd = new GraphBuilderMetadata(results,
getSchema(), configWrapper.getConfig(),
resultSetShape);
- DataGraph g = createEDataGraph(gbmd.getSchema());
+ // Create the DataGraph
+ DataGraph g = SDOUtil.createDataGraph();
+
+ // Create the root object
+ g.createRootObject(gbmd.getSchema());
+
ChangeSummary summary = g.getChangeSummary();
ResultSetProcessor rsp = new ResultSetProcessor(g.getRootObject(),
gbmd);
@@ -123,25 +124,8 @@
protected void setEndRow(int endRow) {
this.endRow = endRow;
}
+
- private DataGraph createEDataGraph(Type type) {
-
- DataGraph g = SDOUtil.createDataGraph();
-
- // Create a ResourceSet to contain the DataGraph
- ResourceSet resourceSet = DataObjectUtil.createResourceSet();
-
- // Create a Resource to hold the schema
-
- Resource r = resourceSet.createResource(URI.createURI(type.getURI()));
- r.getContents().add(g);
-
- // Create the root object
- g.createRootObject(type);
-
- return g;
- }
-
private void setMappingModel(Config config) {
configWrapper = new MappingWrapper(config);
if (config.getConnectionProperties() != null)
