summaryrefslogtreecommitdiffstats
path: root/sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl
diff options
context:
space:
mode:
Diffstat (limited to 'sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl')
-rw-r--r--sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/DomainImplTestCaseOFF.java133
-rw-r--r--sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/TestCallableReferenceImpl.java84
-rw-r--r--sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/TestNodeManagerServiceImpl.java68
3 files changed, 285 insertions, 0 deletions
diff --git a/sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/DomainImplTestCaseOFF.java b/sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/DomainImplTestCaseOFF.java
new file mode 100644
index 0000000000..d84bd4e17a
--- /dev/null
+++ b/sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/DomainImplTestCaseOFF.java
@@ -0,0 +1,133 @@
+/*
+ * 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.domain.impl;
+
+import java.io.Externalizable;
+
+import javax.xml.namespace.QName;
+
+import org.apache.tuscany.sca.domain.SCADomain;
+import org.apache.tuscany.sca.domain.SCADomainFactory;
+import org.apache.tuscany.sca.domain.spi.SCADomainEventService;
+import org.apache.tuscany.sca.node.management.SCANodeManagerService;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.osoa.sca.CallableReference;
+
+
+/**
+ * This server program that loads a composite to provide simple registry function.
+ * This server can be replaced with any registry that is appropriate but the components
+ * in each node that talk to the registry should be replaced also.
+ *
+ * @version $Rev$ $Date$
+ */
+public class DomainImplTestCaseOFF {
+
+ private static SCADomain domain;
+ private static SCADomainEventService domainEventService;
+ private static ClassLoader cl;
+
+ @BeforeClass
+ public static void init() throws Exception {
+
+ try {
+ cl = DomainImplTestCaseOFF.class.getClassLoader();
+ SCADomainFactory domainFactory = SCADomainFactory.newInstance();
+ domain = domainFactory.createSCADomain("http://localhost:9999");
+ domainEventService = (SCADomainEventService)domain;
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ System.out.println("Domain started");
+ }
+
+ @AfterClass
+ public static void destroy() throws Exception {
+ // stop the domain
+ domain.destroy();
+ System.out.println("Domain stopped");
+ }
+
+ @Test
+ public void testRegisterNodes() throws Exception {
+ CallableReference<SCANodeManagerService> node1Ref = new TestCallableReferenceImpl<SCANodeManagerService>();
+ domainEventService.registerNode("http://localhost:8100/mynode1", "http://localhost:9999", (Externalizable)node1Ref);
+
+ CallableReference<SCANodeManagerService> node2Ref = new TestCallableReferenceImpl<SCANodeManagerService>();
+ domainEventService.registerNode("http://localhost:8200/mynode2", "http://localhost:9999", (Externalizable)node2Ref);
+ }
+
+ @Test
+ public void testAddContributionWithMetaData() throws Exception {
+ domain.addContribution("contributionNodeA", cl.getResource("nodeA/"));
+ }
+
+ @Test
+ public void testAddContributionWithoutMetaData() throws Exception {
+ domain.addContribution("contributionNodeB", cl.getResource("nodeB/"));
+ }
+
+ @Test
+ public void testAddToDomainLevelComposite() throws Exception {
+ domain.addToDomainLevelComposite(new QName("http://sample", "CalculatorA"));
+ }
+
+ @Test
+ public void testGetDomainLevelComposite() throws Exception {
+ System.out.println(domain.getDomainLevelComposite());
+ }
+
+ @Test
+ public void testGetComposite() throws Exception {
+ System.out.println(((SCADomainImpl)domain).getComposite(new QName("http://sample", "CalculatorA")));
+ }
+
+ @Test
+ public void testStartComposite() throws Exception {
+ domain.startComposite(new QName("http://sample", "CalculatorA"));
+ }
+
+ @Test
+ public void testStopComposite() throws Exception {
+ domain.stopComposite(new QName("http://sample", "CalculatorA"));
+ }
+
+ @Test
+ public void testRemoveContributions() throws Exception {
+ domain.removeContribution("contributionNodeA");
+ domain.removeContribution("contributionNodeB");
+ }
+
+ @Test
+ public void testUnregisterNodes() throws Exception {
+ domainEventService.unregisterNode("http://localhost:8100/mynode1");
+ domainEventService.unregisterNode("http://localhost:8200/mynode2");
+ }
+
+ //@Test
+ public void testKeepServerRunning() throws Exception {
+ System.out.println("press enter to continue");
+ System.in.read();
+ }
+
+}
diff --git a/sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/TestCallableReferenceImpl.java b/sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/TestCallableReferenceImpl.java
new file mode 100644
index 0000000000..ff4b96ac0e
--- /dev/null
+++ b/sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/TestCallableReferenceImpl.java
@@ -0,0 +1,84 @@
+/*
+ * 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.domain.impl;
+
+import java.io.Externalizable;
+import java.io.IOException;
+import java.io.ObjectInput;
+import java.io.ObjectOutput;
+
+import org.apache.tuscany.sca.core.factory.ObjectCreationException;
+import org.apache.tuscany.sca.runtime.RuntimeWire;
+import org.osoa.sca.CallableReference;
+import org.osoa.sca.Conversation;
+
+/**
+ * Test Callablereference used to test the domain when no nodes are running
+ *
+ * @param <B> the type of the business interface
+ * @version $Rev$ $Date$
+ */
+public class TestCallableReferenceImpl<B> implements CallableReference<B>, Externalizable {
+
+ protected TestCallableReferenceImpl() {
+ super();
+ }
+
+ public RuntimeWire getRuntimeWire() {
+ return null;
+ }
+
+ public B getProxy() throws ObjectCreationException {
+ return null;
+ }
+
+ public B getService() {
+ return (B) new TestNodeManagerServiceImpl();
+ }
+
+ public Class<B> getBusinessInterface() {
+ return null;
+ }
+
+ public boolean isConversational() {
+ return false;
+ }
+
+ public Conversation getConversation() {
+ return null;
+ }
+
+ public Object getCallbackID() {
+ return null;
+ }
+
+ /**
+ * @see java.io.Externalizable#readExternal(java.io.ObjectInput)
+ */
+ public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+ }
+
+
+ /**
+ * @see java.io.Externalizable#writeExternal(java.io.ObjectOutput)
+ */
+ public void writeExternal(ObjectOutput out) throws IOException {
+
+ }
+}
diff --git a/sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/TestNodeManagerServiceImpl.java b/sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/TestNodeManagerServiceImpl.java
new file mode 100644
index 0000000000..11deef5906
--- /dev/null
+++ b/sandbox/sebastien/java/sca-node/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/TestNodeManagerServiceImpl.java
@@ -0,0 +1,68 @@
+/*
+ * 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.domain.impl;
+
+import org.apache.tuscany.sca.databinding.impl.XSDDataTypeConverter.Base64Binary;
+import org.apache.tuscany.sca.node.NodeException;
+import org.apache.tuscany.sca.node.management.SCANodeManagerService;
+
+/**
+ * A dummy interface for the domain to talk to when testing the domain and no nodes are running
+ *
+ * @version $Rev: 552343 $ $Date: 2007-09-11 18:45:36 +0100 (Tue, 11 Sep 2007) $
+ */
+public class TestNodeManagerServiceImpl implements SCANodeManagerService {
+
+
+
+ // SCANodeManagerService methods
+
+ public String getURI() {
+ return null;
+ }
+
+ public void addContribution(String contributionURI, String contributionURL) throws NodeException {
+ System.out.println("addContribution " + contributionURI + " " + contributionURL);
+ }
+
+ public void removeContribution(String contributionURI) throws NodeException {
+ System.out.println("addContribution " + contributionURI);
+ }
+
+ public void addToDomainLevelComposite(String compositeName) throws NodeException {
+ System.out.println("addToDomainLevelComposite " + compositeName);
+ }
+
+ public void start() throws NodeException {
+ System.out.println("start");
+ }
+
+ public void stop() throws NodeException {
+ System.out.println("stop");
+ }
+
+ public void destroyNode() {
+ System.out.println("destroy");
+ }
+
+ public void updateComposite(String compositeQName, String compositeXMLBase64) throws NodeException {
+ System.out.println("updateComposite " + compositeQName + " " + Base64Binary.decode(compositeXMLBase64).toString());
+ }
+}