From b5183938ecb94be45e21c37cb7b7f6b940fa31f5 Mon Sep 17 00:00:00 2001 From: slaws Date: Wed, 1 Dec 2010 17:17:56 +0000 Subject: Make space for testing native as well as generic async support in bindings git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1041090 13f79535-47bb-0310-9956-ffa450edef68 --- .../java/sampleasync/impl/SampleAsyncInvoker.java | 68 ---------------------- .../impl/SampleAsyncReferenceTestCase.java | 63 -------------------- .../impl/SampleGenericAsyncTestCase.java | 63 ++++++++++++++++++++ .../impl/SampleNativeAsyncTestCase.java | 63 ++++++++++++++++++++ .../src/test/resources/testasync.composite | 45 -------------- .../src/test/resources/testgenericasync.composite | 45 ++++++++++++++ .../src/test/resources/testnativeasync.composite | 35 +++++++++++ 7 files changed, 206 insertions(+), 176 deletions(-) delete mode 100644 sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/main/java/sampleasync/impl/SampleAsyncInvoker.java delete mode 100644 sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/java/sampleasync/impl/SampleAsyncReferenceTestCase.java create mode 100644 sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/java/sampleasync/impl/SampleGenericAsyncTestCase.java create mode 100644 sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/java/sampleasync/impl/SampleNativeAsyncTestCase.java delete mode 100644 sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/resources/testasync.composite create mode 100644 sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/resources/testgenericasync.composite create mode 100644 sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/resources/testnativeasync.composite (limited to 'sca-java-2.x/trunk') diff --git a/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/main/java/sampleasync/impl/SampleAsyncInvoker.java b/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/main/java/sampleasync/impl/SampleAsyncInvoker.java deleted file mode 100644 index 74ac0467cf..0000000000 --- a/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/main/java/sampleasync/impl/SampleAsyncInvoker.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * 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 sampleasync.impl; - -import java.lang.reflect.Method; -import java.util.Map; - -import org.apache.tuscany.sca.core.invocation.Constants; -import org.apache.tuscany.sca.interfacedef.Operation; -import org.apache.tuscany.sca.interfacedef.wsdl.WSDLOperation; -import org.apache.tuscany.sca.invocation.Invoker; -import org.apache.tuscany.sca.invocation.Message; -import org.w3c.dom.Element; - -/** - * Invoker for Sample components that implement a WSDL interface using a generic - * call method. - * - * @version $Rev$ $Date$ - */ -class SampleAsyncInvoker implements Invoker { - final String name; - final Object instance; - final Operation op; - Map asyncMessageMap; - - SampleAsyncInvoker(Map asyncMessageMap, final Operation op, final Class clazz, final Object instance) { - this.asyncMessageMap = asyncMessageMap; - this.name = op.getName(); - this.instance = instance; - this.op = op; - } - - public Message invoke(final Message msg) { - try { - String messageID = (String) msg.getHeaders().get(Constants.MESSAGE_ID); - String forwardOpName = (String)asyncMessageMap.get(messageID); - - // process the async response - Object reponse = ((Object[])msg.getBody())[0]; - - //Method method = instance.getClass().getMethod(forwardOpName + "Callback", Element.class); - Method method = instance.getClass().getMethod(forwardOpName + "Callback", String.class); - method.invoke(instance, reponse); - } catch(Exception e) { - e.printStackTrace(); - msg.setFaultBody(e.getCause()); - } - return msg; - } -} diff --git a/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/java/sampleasync/impl/SampleAsyncReferenceTestCase.java b/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/java/sampleasync/impl/SampleAsyncReferenceTestCase.java deleted file mode 100644 index 6511f3ddf3..0000000000 --- a/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/java/sampleasync/impl/SampleAsyncReferenceTestCase.java +++ /dev/null @@ -1,63 +0,0 @@ -/* - * 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 sampleasync.impl; - -import static org.junit.Assert.assertEquals; - -import org.apache.tuscany.sca.node.Contribution; -import org.apache.tuscany.sca.node.Node; -import org.apache.tuscany.sca.node.NodeFactory; -import org.junit.AfterClass; -import org.junit.BeforeClass; -import org.junit.Test; - -import sampleasync.Upper; - -/** - * Test how to run an SCA contribution containing a test composite on a - * Tuscany runtime node. - * - * @version $Rev$ $Date$ - */ -public class SampleAsyncReferenceTestCase { - static Node node; - - @BeforeClass - public static void setUp() throws Exception { - final NodeFactory nf = NodeFactory.newInstance(); - String here = SampleAsyncReferenceTestCase.class.getProtectionDomain().getCodeSource().getLocation().toString(); - node = nf.createNode(new Contribution("test", here)); - node.start(); - } - - @AfterClass - public static void tearDown() throws Exception { - node.stop(); - } - - @Test - public void testReference() { - System.out.println("SampleAsyncReferenceTestCase.testReference"); - Upper upper = node.getService(Upper.class, "SampleAsyncReference"); - final String r = upper.upper("async"); - System.out.println(r); - assertEquals("ASYNC", r); - } -} diff --git a/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/java/sampleasync/impl/SampleGenericAsyncTestCase.java b/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/java/sampleasync/impl/SampleGenericAsyncTestCase.java new file mode 100644 index 0000000000..36fdb76424 --- /dev/null +++ b/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/java/sampleasync/impl/SampleGenericAsyncTestCase.java @@ -0,0 +1,63 @@ +/* + * 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 sampleasync.impl; + +import static org.junit.Assert.assertEquals; + +import org.apache.tuscany.sca.node.Contribution; +import org.apache.tuscany.sca.node.Node; +import org.apache.tuscany.sca.node.NodeFactory; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Test; + +import sampleasync.Upper; + +/** + * Test how to run an SCA contribution containing a test composite on a + * Tuscany runtime node. + * + * @version $Rev$ $Date$ + */ +public class SampleGenericAsyncTestCase { + static Node node; + + @BeforeClass + public static void setUp() throws Exception { + final NodeFactory nf = NodeFactory.newInstance(); + String here = SampleGenericAsyncTestCase.class.getProtectionDomain().getCodeSource().getLocation().toString(); + node = nf.createNode(new Contribution("test", here)); + node.start(); + } + + @AfterClass + public static void tearDown() throws Exception { + node.stop(); + } + + @Test + public void testReference() { + System.out.println("SampleAsyncReferenceTestCase.testReference"); + Upper upper = node.getService(Upper.class, "SampleAsyncReference"); + final String r = upper.upper("async"); + System.out.println(r); + assertEquals("ASYNC", r); + } +} diff --git a/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/java/sampleasync/impl/SampleNativeAsyncTestCase.java b/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/java/sampleasync/impl/SampleNativeAsyncTestCase.java new file mode 100644 index 0000000000..bc35a637d1 --- /dev/null +++ b/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/java/sampleasync/impl/SampleNativeAsyncTestCase.java @@ -0,0 +1,63 @@ +/* + * 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 sampleasync.impl; + +import static org.junit.Assert.assertEquals; + +import org.apache.tuscany.sca.node.Contribution; +import org.apache.tuscany.sca.node.Node; +import org.apache.tuscany.sca.node.NodeFactory; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Test; + +import sampleasync.Upper; + +/** + * Test how to run an SCA contribution containing a test composite on a + * Tuscany runtime node. + * + * @version $Rev$ $Date$ + */ +public class SampleNativeAsyncTestCase { + static Node node; + + @BeforeClass + public static void setUp() throws Exception { + final NodeFactory nf = NodeFactory.newInstance(); + String here = SampleNativeAsyncTestCase.class.getProtectionDomain().getCodeSource().getLocation().toString(); + node = nf.createNode(new Contribution("test", here)); + node.start(); + } + + @AfterClass + public static void tearDown() throws Exception { + node.stop(); + } + + @Test + public void testReference() { + System.out.println("SampleNaiveAsyncTestCase.testReference"); + Upper upper = node.getService(Upper.class, "SampleNativeAsyncReference"); + final String r = upper.upper("async"); + System.out.println(r); + assertEquals("ASYNC", r); + } +} diff --git a/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/resources/testasync.composite b/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/resources/testasync.composite deleted file mode 100644 index c289a1ab32..0000000000 --- a/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/resources/testasync.composite +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/resources/testgenericasync.composite b/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/resources/testgenericasync.composite new file mode 100644 index 0000000000..c289a1ab32 --- /dev/null +++ b/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/resources/testgenericasync.composite @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/resources/testnativeasync.composite b/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/resources/testnativeasync.composite new file mode 100644 index 0000000000..f9c077e272 --- /dev/null +++ b/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/test/resources/testnativeasync.composite @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + -- cgit v1.2.3