summaryrefslogtreecommitdiffstats
path: root/sandbox/ant/implementation-das
diff options
context:
space:
mode:
authordims <dims@13f79535-47bb-0310-9956-ffa450edef68>2008-06-17 00:23:01 +0000
committerdims <dims@13f79535-47bb-0310-9956-ffa450edef68>2008-06-17 00:23:01 +0000
commitbdd0a41aed7edf21ec2a65cfa17a86af2ef8c48a (patch)
tree38a92061c0793434c4be189f1d70c3458b6bc41d /sandbox/ant/implementation-das
Move Tuscany from Incubator to top level.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@668359 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sandbox/ant/implementation-das')
-rw-r--r--sandbox/ant/implementation-das/pom.xml85
-rw-r--r--sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASImplementation.java62
-rw-r--r--sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASImplementationActivator.java52
-rw-r--r--sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASInvoker.java60
-rw-r--r--sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASInvokerFactory.java50
-rw-r--r--sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DataAccessEngine.java52
-rw-r--r--sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DataAccessEngineManager.java70
-rw-r--r--sandbox/ant/implementation-das/src/main/resources/META-INF/services/org.apache.tuscany.sca.spi.ImplementationActivator20
-rw-r--r--sandbox/ant/implementation-das/src/test/java/org/apache/tuscany/sca/implementation/das/company/CompanyService.java32
-rw-r--r--sandbox/ant/implementation-das/src/test/java/org/apache/tuscany/sca/implementation/das/company/CompanyServiceTestCase.java57
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/CompanyConfig.xml52
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/company.composite31
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/das.composite28
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/log/log.ctrlbin0 -> 48 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/log/log1.datbin0 -> 1048576 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/log/logmirror.ctrlbin0 -> 48 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c10.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c101.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c111.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c121.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c130.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c141.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c150.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c161.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c171.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c180.datbin0 -> 24576 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c191.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1a1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1b1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1c0.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1d1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1e0.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1f1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c20.datbin0 -> 24576 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c200.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c211.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c221.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c230.datbin0 -> 151552 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c241.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c251.datbin0 -> 12288 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c260.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c271.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c281.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c290.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2a1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2b1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2c1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2d0.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2e1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2f0.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c300.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c31.datbin0 -> 16384 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c311.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c320.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c331.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c340.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c351.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c360.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c371.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c380.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c391.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3a0.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3b1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3c0.datbin0 -> 24576 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3d1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3e0.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3f1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c400.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c41.datbin0 -> 16384 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c411.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c420.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c431.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c440.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c451.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c460.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c471.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c481.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c490.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c4a1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c51.datbin0 -> 16384 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c60.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c71.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c81.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c90.datbin0 -> 24576 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/ca1.datbin0 -> 24576 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cb1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cc0.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cd1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/ce1.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cf0.datbin0 -> 8192 bytes
-rw-r--r--sandbox/ant/implementation-das/src/test/resources/dastest/service.properties22
91 files changed, 673 insertions, 0 deletions
diff --git a/sandbox/ant/implementation-das/pom.xml b/sandbox/ant/implementation-das/pom.xml
new file mode 100644
index 0000000000..6edde7ea7c
--- /dev/null
+++ b/sandbox/ant/implementation-das/pom.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * 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.
+-->
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.apache.tuscany.sca</groupId>
+ <artifactId>tuscany-modules</artifactId>
+ <version>1.0-incubating-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+ <artifactId>tuscany-implementation-das</artifactId>
+ <name>Apache Tuscany Data Access Service Implementation</name>
+
+ <repositories>
+ <repository>
+ <id>apache.incubator</id>
+ <url>http://people.apache.org/repo/m2-incubating-repository</url>
+ </repository>
+ </repositories>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.tuscany.das</groupId>
+ <artifactId>tuscany-das-rdb</artifactId>
+ <version>1.0-incubating-SNAPSHOT</version>
+ <scope>compile</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>commonj</groupId>
+ <artifactId>sdo-api-r2.1</artifactId>
+ <version>1.0-incubating-SNAPSHOT</version>
+ <scope>compile</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.tuscany.sca</groupId>
+ <artifactId>tuscany-extension-helper</artifactId>
+ <version>1.0-incubating-SNAPSHOT</version>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>3.8.1</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.easymock</groupId>
+ <artifactId>easymock</artifactId>
+ <version>2.2</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.derby</groupId>
+ <artifactId>derby</artifactId>
+ <version>10.1.2.1</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <finalName>${artifactId}</finalName>
+ </build>
+
+</project>
diff --git a/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASImplementation.java b/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASImplementation.java
new file mode 100644
index 0000000000..3d5877cb21
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASImplementation.java
@@ -0,0 +1,62 @@
+/*
+ * 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.sca.implementation.das;
+
+/**
+ * The model representing a sample DAS implementation in an SCA assembly model.
+ */
+public class DASImplementation {
+
+ private String config;
+ private String dataAccessType;
+
+ /**
+ * Return the DAS configuration side file
+ *
+ * @return the name of the das configuration side file
+ */
+ public String getConfig() {
+ return config;
+ }
+
+ /**
+ * Sets the DAS configuration side file
+ *
+ * @param config The name of the das configuration side file
+ */
+ public void setConfig(String config) {
+ this.config = config;
+ }
+
+ /**
+ * Return the data store type being used
+ * @return The data store type
+ */
+ public String getDataAccessType() {
+ return dataAccessType;
+ }
+
+ /**
+ * Sets the data store type being used
+ * @param dataAccessType The data store type in use
+ */
+ public void setDataAccessType(String dataAccessType) {
+ this.dataAccessType = dataAccessType;
+ }
+}
diff --git a/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASImplementationActivator.java b/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASImplementationActivator.java
new file mode 100644
index 0000000000..184805188c
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASImplementationActivator.java
@@ -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.sca.implementation.das;
+
+import javax.xml.namespace.QName;
+
+import org.apache.tuscany.sca.assembly.ComponentType;
+import org.apache.tuscany.sca.assembly.xml.Constants;
+import org.apache.tuscany.sca.runtime.RuntimeComponent;
+import org.apache.tuscany.sca.spi.ImplementationActivator;
+import org.apache.tuscany.sca.spi.InvokerFactory;
+
+public class DASImplementationActivator implements ImplementationActivator<DASImplementation>{
+
+ private final DataAccessEngineManager dataAccessEngineManager;
+
+ private static final QName IMPLEMENTATION_DAS = new QName(Constants.SCA10_NS, "implementation.das");
+
+ public DASImplementationActivator() {
+ this.dataAccessEngineManager = new DataAccessEngineManager();
+ }
+
+ public InvokerFactory createInvokerFactory(RuntimeComponent rc, ComponentType ct, DASImplementation impl) {
+ return new DASInvokerFactory(rc, ct, impl, dataAccessEngineManager);
+ }
+
+ public Class<DASImplementation> getImplementationClass() {
+ return DASImplementation.class;
+ }
+
+ public QName getSCDLQName() {
+ return IMPLEMENTATION_DAS;
+ }
+
+}
diff --git a/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASInvoker.java b/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASInvoker.java
new file mode 100644
index 0000000000..0949b41f6e
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASInvoker.java
@@ -0,0 +1,60 @@
+/*
+ * 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.sca.implementation.das;
+
+import org.apache.tuscany.sca.interfacedef.Operation;
+import org.apache.tuscany.sca.invocation.Invoker;
+import org.apache.tuscany.sca.invocation.Message;
+
+/**
+ * Implements a target invoker for DAS component implementations.
+ *
+ * The target invoker is responsible for dispatching invocations to the particular
+ * component implementation logic. The current component implementation will
+ * dispatch calls to the DAS apis to retrieve the requested data from the backend store
+ *
+ */
+public class DASInvoker implements Invoker {
+
+ private final Operation operation;
+ private final DataAccessEngine dataAccessEngine;
+
+ public DASInvoker(Operation operation, DataAccessEngine dataAccessEngine) {
+ this.operation = operation;
+ this.dataAccessEngine = dataAccessEngine;
+ }
+
+ public Message invoke(Message msg) {
+ Object[] args = msg.getBody();
+ Object resp = doTheWork(args);
+ msg.setBody(resp);
+ return msg;
+ }
+
+ public Object doTheWork(Object[] args) {
+ //simple execute command by name
+ if(args==null || args.length < 1){
+ return this.dataAccessEngine.executeCommand(operation.getName());
+ } else {
+ String xPath = (String) args[0];
+ return this.dataAccessEngine.executeCommand(operation.getName(), xPath);
+ }
+ }
+}
diff --git a/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASInvokerFactory.java b/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASInvokerFactory.java
new file mode 100644
index 0000000000..f81cf29202
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASInvokerFactory.java
@@ -0,0 +1,50 @@
+/*
+ * 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.sca.implementation.das;
+
+import org.apache.tuscany.das.rdb.DAS;
+import org.apache.tuscany.sca.assembly.ComponentType;
+import org.apache.tuscany.sca.interfacedef.Operation;
+import org.apache.tuscany.sca.invocation.Invoker;
+import org.apache.tuscany.sca.runtime.RuntimeComponent;
+import org.apache.tuscany.sca.spi.InvokerFactory;
+import org.osoa.sca.ServiceRuntimeException;
+
+public class DASInvokerFactory implements InvokerFactory {
+
+ DASImplementation impl;
+ DataAccessEngineManager dataAccessEngineManager;
+
+ public DASInvokerFactory(RuntimeComponent rc, ComponentType ct, DASImplementation impl, DataAccessEngineManager dataAccessEngineManager) {
+ this.impl = impl;
+ this.dataAccessEngineManager = dataAccessEngineManager;
+ }
+
+ public Invoker createInvoker(Operation operation) {
+ DAS das = null;
+ try {
+ das = dataAccessEngineManager.getDAS(impl.getConfig());
+ } catch(Exception e) {
+ throw new ServiceRuntimeException(e);
+ }
+ return new DASInvoker(operation, new DataAccessEngine(das) );
+ }
+
+}
diff --git a/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DataAccessEngine.java b/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DataAccessEngine.java
new file mode 100644
index 0000000000..a847695480
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DataAccessEngine.java
@@ -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.sca.implementation.das;
+
+import org.apache.tuscany.das.rdb.Command;
+import org.apache.tuscany.das.rdb.DAS;
+
+import commonj.sdo.DataObject;
+
+/**
+ * Facade to hide DAS implementation details of handling commands
+ */
+public class DataAccessEngine {
+ private final DAS das;
+
+ public DataAccessEngine(DAS das) {
+ this.das = das;
+ }
+
+ public DataObject executeCommand(String commandName) {
+ try {
+ Command command = this.das.getCommand(commandName);
+ return command.executeQuery();
+ } catch (Exception e) {
+ e.printStackTrace();
+ return null;
+ }
+ }
+
+ public DataObject executeCommand(String commandName, String xPath) {
+ DataObject root = executeCommand(commandName);
+ return root.getDataObject(xPath);
+ }
+
+}
diff --git a/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DataAccessEngineManager.java b/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DataAccessEngineManager.java
new file mode 100644
index 0000000000..6701ca993c
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DataAccessEngineManager.java
@@ -0,0 +1,70 @@
+/*
+ * 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.sca.implementation.das;
+
+import java.io.InputStream;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.tuscany.das.rdb.DAS;
+import org.osoa.sca.ServiceRuntimeException;
+
+/**
+ * The DataAccessEngineManager acts like a registry and factory for DAS instances
+ * It holds DAS by it's config file name, reusing the same DAS for all components
+ * using the same config file.
+ *
+ * @version $Rev$ $Date$
+ */
+public class DataAccessEngineManager {
+
+ private final Map<String, DAS> registry = new HashMap<String, DAS>();
+
+ protected DAS initializeDAS(String config) {
+ //load the config file
+ System.out.println("Initializing DAS");
+ DAS das = DAS.FACTORY.createDAS(this.getConfigStream(config));
+
+ return das;
+ }
+
+ protected InputStream getConfigStream(String config) {
+ InputStream configStream = null;
+
+ try {
+ configStream = this.getClass().getResourceAsStream(config);
+ } catch (Exception e) {
+ throw new ServiceRuntimeException(e);
+ }
+
+ return configStream;
+ }
+
+ public DAS getDAS(String config) {
+ DAS das = registry.get(config);
+ if ( das == null) {
+ das = this.initializeDAS(config);
+ this.registry.put(config, das);
+ }
+ return das;
+ }
+
+
+}
diff --git a/sandbox/ant/implementation-das/src/main/resources/META-INF/services/org.apache.tuscany.sca.spi.ImplementationActivator b/sandbox/ant/implementation-das/src/main/resources/META-INF/services/org.apache.tuscany.sca.spi.ImplementationActivator
new file mode 100644
index 0000000000..4e48eb63dd
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/main/resources/META-INF/services/org.apache.tuscany.sca.spi.ImplementationActivator
@@ -0,0 +1,20 @@
+# 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.
+#
+# Implementation class for the ExtensionActivator
+#
+org.apache.tuscany.sca.implementation.das.DASImplementationActivator
diff --git a/sandbox/ant/implementation-das/src/test/java/org/apache/tuscany/sca/implementation/das/company/CompanyService.java b/sandbox/ant/implementation-das/src/test/java/org/apache/tuscany/sca/implementation/das/company/CompanyService.java
new file mode 100644
index 0000000000..c487352661
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/java/org/apache/tuscany/sca/implementation/das/company/CompanyService.java
@@ -0,0 +1,32 @@
+/*
+ * 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.sca.implementation.das.company;
+
+import commonj.sdo.DataObject;
+
+/**
+ *
+ * @version $Rev$ $Date$
+ */
+public interface CompanyService {
+
+ public DataObject getCompanies();
+
+}
diff --git a/sandbox/ant/implementation-das/src/test/java/org/apache/tuscany/sca/implementation/das/company/CompanyServiceTestCase.java b/sandbox/ant/implementation-das/src/test/java/org/apache/tuscany/sca/implementation/das/company/CompanyServiceTestCase.java
new file mode 100644
index 0000000000..24f941a06f
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/java/org/apache/tuscany/sca/implementation/das/company/CompanyServiceTestCase.java
@@ -0,0 +1,57 @@
+/*
+ * 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.sca.implementation.das.company;
+
+import junit.framework.TestCase;
+
+import org.apache.tuscany.sca.host.embedded.SCADomain;
+
+import commonj.sdo.DataObject;
+
+/**
+ * Tests the DAS service
+ */
+public class CompanyServiceTestCase extends TestCase {
+
+ private SCADomain scaDomain;
+ private CompanyService dasCompanyService;
+
+ /**
+ * @throws java.lang.Exception
+ */
+ protected void setUp() throws Exception {
+ scaDomain = SCADomain.newInstance("company.composite");
+ dasCompanyService = scaDomain.getService(CompanyService.class, "CompanyComponent");
+ }
+
+ /**
+ * @throws java.lang.Exception
+ */
+ protected void tearDown() throws Exception {
+ scaDomain.close();
+ }
+
+ public void testExecuteCommand() throws Exception {
+ DataObject root = dasCompanyService.getCompanies();
+ assertNotNull(root);
+ }
+
+
+}
diff --git a/sandbox/ant/implementation-das/src/test/resources/CompanyConfig.xml b/sandbox/ant/implementation-das/src/test/resources/CompanyConfig.xml
new file mode 100644
index 0000000000..2667f86f83
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/CompanyConfig.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+ -->
+<Config xmlns="http:///org.apache.tuscany.das.rdb/config.xsd">
+
+ <ConnectionInfo>
+ <ConnectionProperties
+ driverClass="org.apache.derby.jdbc.EmbeddedDriver"
+ databaseURL="jdbc:derby:target/test-classes/dastest; create = true"
+ loginTimeout="600000"/>
+ </ConnectionInfo>
+
+ <Command name="getCompanies" SQL="select * from COMPANY" kind="Select"/>
+
+ <Command name="all companies" SQL="select * from COMPANY" kind="Select"/>
+
+ <Command name="all companies and departments" SQL="select * from COMPANY left outer join DEPARTMENT on COMPANY.ID = DEPARTMENT.COMPANYID" kind="Select"/>
+
+ <Command name="all departments for company" SQL="select * from COMPANY inner join DEPARTMENT on COMPANY.ID = DEPARTMENT.COMPANYID where COMPANY.ID = ?" kind="Select"/>
+
+ <Command name="company by id with departments" SQL="select * from COMPANY left outer join DEPARTMENT on COMPANY.ID = DEPARTMENT.COMPANYID where COMPANY.ID = ?" kind="Select"/>
+
+ <Table tableName="COMPANY">
+ <Column columnName="ID" primaryKey="true" generated="true"/>
+ </Table>
+
+ <Table tableName="DEPARTMENT">
+ <Column columnName="ID" primaryKey="true" generated="true"/>
+ </Table>
+
+ <Relationship name="departments" primaryKeyTable="COMPANY" foreignKeyTable="DEPARTMENT" many="true">
+ <KeyPair primaryKeyColumn="ID" foreignKeyColumn="COMPANYID"/>
+ </Relationship>
+
+
+</Config>
diff --git a/sandbox/ant/implementation-das/src/test/resources/company.composite b/sandbox/ant/implementation-das/src/test/resources/company.composite
new file mode 100644
index 0000000000..98166bc7b6
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/company.composite
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * 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.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://sample/das"
+ name="das">
+
+ <service name="CompanyServiceComponent" promote="CompanyComponent">
+ <interface.java interface="org.apache.tuscany.sca.implementation.das.company.CompanyService"/>
+ </service>
+
+ <component name="CompanyComponent">
+ <implementation.das config="/CompanyConfig.xml" dataAccessType="rdb" />
+ </component>
+</composite>
diff --git a/sandbox/ant/implementation-das/src/test/resources/das.composite b/sandbox/ant/implementation-das/src/test/resources/das.composite
new file mode 100644
index 0000000000..a2b4096b9d
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/das.composite
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * 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.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://sample/das"
+ name="das">
+
+ <component name="DASServiceComponent">
+ <implementation.das config="/CompanyConfig.xml" dataAccessType="rdb" />
+ </component>
+
+</composite>
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/log/log.ctrl b/sandbox/ant/implementation-das/src/test/resources/dastest/log/log.ctrl
new file mode 100644
index 0000000000..ee27053d7a
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/log/log.ctrl
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/log/log1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/log/log1.dat
new file mode 100644
index 0000000000..0149980537
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/log/log1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/log/logmirror.ctrl b/sandbox/ant/implementation-das/src/test/resources/dastest/log/logmirror.ctrl
new file mode 100644
index 0000000000..ee27053d7a
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/log/logmirror.ctrl
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c10.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c10.dat
new file mode 100644
index 0000000000..5d8ecaa10f
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c10.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c101.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c101.dat
new file mode 100644
index 0000000000..0f79fa7574
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c101.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c111.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c111.dat
new file mode 100644
index 0000000000..39d49e3d19
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c111.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c121.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c121.dat
new file mode 100644
index 0000000000..2a4311779b
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c121.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c130.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c130.dat
new file mode 100644
index 0000000000..64e3c18d62
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c130.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c141.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c141.dat
new file mode 100644
index 0000000000..0632d04164
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c141.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c150.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c150.dat
new file mode 100644
index 0000000000..10b6a8db65
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c150.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c161.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c161.dat
new file mode 100644
index 0000000000..acee7bc80b
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c161.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c171.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c171.dat
new file mode 100644
index 0000000000..5f415d1c5c
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c171.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c180.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c180.dat
new file mode 100644
index 0000000000..cb9391aed1
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c180.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c191.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c191.dat
new file mode 100644
index 0000000000..d3cf1d6364
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c191.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1a1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1a1.dat
new file mode 100644
index 0000000000..a7a2d536e9
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1a1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1b1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1b1.dat
new file mode 100644
index 0000000000..19097e69e7
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1b1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1c0.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1c0.dat
new file mode 100644
index 0000000000..359525a31a
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1c0.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1d1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1d1.dat
new file mode 100644
index 0000000000..9f257df932
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1d1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1e0.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1e0.dat
new file mode 100644
index 0000000000..e43e52fb7f
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1e0.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1f1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1f1.dat
new file mode 100644
index 0000000000..7e6ee3b1e0
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c1f1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c20.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c20.dat
new file mode 100644
index 0000000000..1be6390f06
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c20.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c200.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c200.dat
new file mode 100644
index 0000000000..b15d56855c
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c200.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c211.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c211.dat
new file mode 100644
index 0000000000..84b0022312
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c211.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c221.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c221.dat
new file mode 100644
index 0000000000..63106a9523
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c221.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c230.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c230.dat
new file mode 100644
index 0000000000..0665ddc16b
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c230.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c241.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c241.dat
new file mode 100644
index 0000000000..835c645a16
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c241.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c251.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c251.dat
new file mode 100644
index 0000000000..d3d6adf4fb
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c251.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c260.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c260.dat
new file mode 100644
index 0000000000..8d7333df7d
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c260.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c271.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c271.dat
new file mode 100644
index 0000000000..af722f7d73
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c271.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c281.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c281.dat
new file mode 100644
index 0000000000..3972983c2e
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c281.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c290.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c290.dat
new file mode 100644
index 0000000000..31577b8124
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c290.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2a1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2a1.dat
new file mode 100644
index 0000000000..0f700d13a7
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2a1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2b1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2b1.dat
new file mode 100644
index 0000000000..1d6382fb3d
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2b1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2c1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2c1.dat
new file mode 100644
index 0000000000..3bc60d886b
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2c1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2d0.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2d0.dat
new file mode 100644
index 0000000000..c542d3c91c
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2d0.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2e1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2e1.dat
new file mode 100644
index 0000000000..16abd20b5f
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2e1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2f0.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2f0.dat
new file mode 100644
index 0000000000..eb26be5932
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c2f0.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c300.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c300.dat
new file mode 100644
index 0000000000..1214f1df4b
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c300.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c31.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c31.dat
new file mode 100644
index 0000000000..18c16f1123
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c31.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c311.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c311.dat
new file mode 100644
index 0000000000..926cbf25b5
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c311.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c320.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c320.dat
new file mode 100644
index 0000000000..07e7bc023c
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c320.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c331.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c331.dat
new file mode 100644
index 0000000000..fd827f9dc2
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c331.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c340.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c340.dat
new file mode 100644
index 0000000000..ca70319886
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c340.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c351.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c351.dat
new file mode 100644
index 0000000000..8fbe2a527c
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c351.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c360.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c360.dat
new file mode 100644
index 0000000000..dcf9c746e1
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c360.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c371.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c371.dat
new file mode 100644
index 0000000000..6f21a840ea
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c371.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c380.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c380.dat
new file mode 100644
index 0000000000..68a5643e15
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c380.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c391.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c391.dat
new file mode 100644
index 0000000000..27006e95a1
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c391.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3a0.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3a0.dat
new file mode 100644
index 0000000000..565dca97ac
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3a0.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3b1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3b1.dat
new file mode 100644
index 0000000000..36894c9818
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3b1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3c0.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3c0.dat
new file mode 100644
index 0000000000..ceedacf6f3
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3c0.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3d1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3d1.dat
new file mode 100644
index 0000000000..195be93689
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3d1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3e0.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3e0.dat
new file mode 100644
index 0000000000..bdab359420
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3e0.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3f1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3f1.dat
new file mode 100644
index 0000000000..dc2d278b57
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c3f1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c400.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c400.dat
new file mode 100644
index 0000000000..3072709cec
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c400.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c41.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c41.dat
new file mode 100644
index 0000000000..61086690f2
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c41.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c411.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c411.dat
new file mode 100644
index 0000000000..ca551d8249
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c411.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c420.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c420.dat
new file mode 100644
index 0000000000..f04de0840e
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c420.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c431.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c431.dat
new file mode 100644
index 0000000000..398b1672cc
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c431.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c440.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c440.dat
new file mode 100644
index 0000000000..af259d0872
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c440.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c451.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c451.dat
new file mode 100644
index 0000000000..772a18c658
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c451.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c460.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c460.dat
new file mode 100644
index 0000000000..505428362d
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c460.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c471.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c471.dat
new file mode 100644
index 0000000000..484d0df42d
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c471.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c481.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c481.dat
new file mode 100644
index 0000000000..faac073076
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c481.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c490.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c490.dat
new file mode 100644
index 0000000000..7585319d21
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c490.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c4a1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c4a1.dat
new file mode 100644
index 0000000000..4fe8b786e3
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c4a1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c51.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c51.dat
new file mode 100644
index 0000000000..7fc7937b15
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c51.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c60.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c60.dat
new file mode 100644
index 0000000000..d1fb08c946
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c60.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c71.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c71.dat
new file mode 100644
index 0000000000..d4c2090a3b
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c71.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c81.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c81.dat
new file mode 100644
index 0000000000..38b6ea6520
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c81.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c90.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c90.dat
new file mode 100644
index 0000000000..620732e253
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/c90.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/ca1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/ca1.dat
new file mode 100644
index 0000000000..51d32658ca
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/ca1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cb1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cb1.dat
new file mode 100644
index 0000000000..4e2c8aef68
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cb1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cc0.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cc0.dat
new file mode 100644
index 0000000000..d1eef3bb56
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cc0.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cd1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cd1.dat
new file mode 100644
index 0000000000..c7e6db3ef7
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cd1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/ce1.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/ce1.dat
new file mode 100644
index 0000000000..8fd3bf17a8
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/ce1.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cf0.dat b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cf0.dat
new file mode 100644
index 0000000000..332b3d9a8a
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/seg0/cf0.dat
Binary files differ
diff --git a/sandbox/ant/implementation-das/src/test/resources/dastest/service.properties b/sandbox/ant/implementation-das/src/test/resources/dastest/service.properties
new file mode 100644
index 0000000000..8cfe3b09a5
--- /dev/null
+++ b/sandbox/ant/implementation-das/src/test/resources/dastest/service.properties
@@ -0,0 +1,22 @@
+#C:\apacheSVN\java\target\dastest
+# ********************************************************************
+# *** Please do NOT edit this file. ***
+# *** CHANGING THE CONTENT OF THIS FILE MAY CAUSE DATA CORRUPTION. ***
+# ********************************************************************
+#Fri Feb 17 08:55:29 MST 2006
+SysschemasIndex2Identifier=225
+SyscolumnsIdentifier=144
+SysconglomeratesIndex1Identifier=49
+SysconglomeratesIdentifier=32
+SyscolumnsIndex2Identifier=177
+SysschemasIndex1Identifier=209
+SysconglomeratesIndex3Identifier=81
+SystablesIndex2Identifier=129
+SyscolumnsIndex1Identifier=161
+derby.serviceProtocol=org.apache.derby.database.Database
+SysschemasIdentifier=192
+derby.storage.propertiesId=16
+SysconglomeratesIndex2Identifier=65
+derby.serviceLocale=en_US
+SystablesIdentifier=96
+SystablesIndex1Identifier=113