summaryrefslogtreecommitdiffstats
path: root/branches/sca-java-1.x/samples/binding-echo/src
diff options
context:
space:
mode:
authorrfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68>2009-06-13 18:53:15 +0000
committerrfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68>2009-06-13 18:53:15 +0000
commit9aa6e3d0558327677d6a072633db47c35ef7d0c0 (patch)
treeeec15b42f6d264b09087bd1d77616d25f7510305 /branches/sca-java-1.x/samples/binding-echo/src
parentc5c2ad8739e959e3e847aec2659200d871ef1be2 (diff)
Refine echo binding to use EchoServer for the reference calls
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@784448 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'branches/sca-java-1.x/samples/binding-echo/src')
-rw-r--r--branches/sca-java-1.x/samples/binding-echo/src/main/java/echo/EchoBindingClient.java16
-rw-r--r--branches/sca-java-1.x/samples/binding-echo/src/main/java/echo/EchoComponentImpl.java10
-rw-r--r--branches/sca-java-1.x/samples/binding-echo/src/main/resources/EchoBinding.composite27
-rw-r--r--branches/sca-java-1.x/samples/binding-echo/src/test/java/echo/EchoBindingTestCase.java19
4 files changed, 35 insertions, 37 deletions
diff --git a/branches/sca-java-1.x/samples/binding-echo/src/main/java/echo/EchoBindingClient.java b/branches/sca-java-1.x/samples/binding-echo/src/main/java/echo/EchoBindingClient.java
index 0a767ee1f1..0b9d7acb79 100644
--- a/branches/sca-java-1.x/samples/binding-echo/src/main/java/echo/EchoBindingClient.java
+++ b/branches/sca-java-1.x/samples/binding-echo/src/main/java/echo/EchoBindingClient.java
@@ -6,15 +6,15 @@
* 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.
+ * under the License.
*/
package echo;
@@ -28,22 +28,22 @@ import echo.server.EchoServer;
* @version $Rev$ $Date$
*/
public class EchoBindingClient {
-
+
public static void main(String[] args) throws Exception {
SCADomain scaDomain = SCADomain.newInstance("EchoBinding.composite");
-
+
// Call the echo service component which will, in turn, call a reference
// with an echo binding. The echo binding will echo the given string.
Echo service = scaDomain.getService(Echo.class, "EchoComponent");
String echoString = service.echo("foo");
System.out.println("Echo reference = " + echoString );
- // Call the echo server. This will dispatch the call to a service with an
+ // Call the echo server. This will dispatch the call to a service with an
// echo binding. The echo binding will pass the call to the echo component.
- echoString = EchoServer.getServer().sendReceive("http://example.com/temp", "bar");
+ echoString = (String) EchoServer.getServer().call("http://example.com/server", new Object[] {"bar"});
System.out.println("Echo service = " + echoString );
-
+
scaDomain.close();
}
diff --git a/branches/sca-java-1.x/samples/binding-echo/src/main/java/echo/EchoComponentImpl.java b/branches/sca-java-1.x/samples/binding-echo/src/main/java/echo/EchoComponentImpl.java
index ba68dfe908..cec1c2bdbc 100644
--- a/branches/sca-java-1.x/samples/binding-echo/src/main/java/echo/EchoComponentImpl.java
+++ b/branches/sca-java-1.x/samples/binding-echo/src/main/java/echo/EchoComponentImpl.java
@@ -6,27 +6,29 @@
* 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.
+ * under the License.
*/
package echo;
import org.osoa.sca.annotations.Constructor;
import org.osoa.sca.annotations.Reference;
+import org.osoa.sca.annotations.Service;
/**
* A simple client component that uses a reference with an Echo binding.
- *
+ *
* @version $Rev$ $Date$
*/
+@Service(Echo.class)
public class EchoComponentImpl implements Echo {
private Echo echoReference;
diff --git a/branches/sca-java-1.x/samples/binding-echo/src/main/resources/EchoBinding.composite b/branches/sca-java-1.x/samples/binding-echo/src/main/resources/EchoBinding.composite
index b42d482912..7b3de1a1f0 100644
--- a/branches/sca-java-1.x/samples/binding-echo/src/main/resources/EchoBinding.composite
+++ b/branches/sca-java-1.x/samples/binding-echo/src/main/resources/EchoBinding.composite
@@ -7,15 +7,15 @@
* 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.
+ * under the License.
-->
<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
targetNamespace="http://sample/echo"
@@ -23,18 +23,15 @@
xmlns:e="http://echo"
name="EchoBinding">
- <service name="EchoService" promote="EchoComponent">
- <interface.java interface="echo.Echo"/>
- <e:binding.echo uri="http://example.com/temp" />
- </service>
-
<component name="EchoComponent">
- <implementation.java class="echo.EchoComponentImpl"/>
+ <implementation.java
+ class="echo.EchoComponentImpl" />
+ <service name="Echo">
+ <e:binding.echo uri="http://example.com/server" />
+ </service>
+ <reference name="echoReference">
+ <e:binding.echo uri="http://example.com/client"/>
+ </reference>
</component>
-
- <reference name="EchoReference" promote="EchoComponent/echoReference">
- <interface.java interface="echo.Echo"/>
- <e:binding.echo uri="http://example.com/temp" />
- </reference>
-
+
</composite>
diff --git a/branches/sca-java-1.x/samples/binding-echo/src/test/java/echo/EchoBindingTestCase.java b/branches/sca-java-1.x/samples/binding-echo/src/test/java/echo/EchoBindingTestCase.java
index 0f4961d3fd..2d29aed238 100644
--- a/branches/sca-java-1.x/samples/binding-echo/src/test/java/echo/EchoBindingTestCase.java
+++ b/branches/sca-java-1.x/samples/binding-echo/src/test/java/echo/EchoBindingTestCase.java
@@ -6,15 +6,15 @@
* 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.
+ * under the License.
*/
package echo;
@@ -23,18 +23,17 @@ import junit.framework.TestCase;
import org.apache.tuscany.sca.host.embedded.SCADomain;
-import echo.Echo;
import echo.server.EchoServer;
public class EchoBindingTestCase extends TestCase {
-
+
private SCADomain scaDomain;
-
+
@Override
protected void setUp() throws Exception {
scaDomain = SCADomain.newInstance("EchoBinding.composite");
}
-
+
@Override
protected void tearDown() throws Exception {
scaDomain.close();
@@ -47,11 +46,11 @@ public class EchoBindingTestCase extends TestCase {
String echoString = service.echo("foo");
assertEquals(echoString, "foo");
}
-
+
public void testService() throws Exception {
- // Call the echo server. This will dispatch the call to a service with an
+ // Call the echo server. This will dispatch the call to a service with an
// echo binding. The echo binding will pass the call to the echo component.
- String echoString = EchoServer.getServer().sendReceive("http://example.com/temp", "bar");
+ String echoString = (String) EchoServer.getServer().call("http://example.com/server", new Object[] {"bar"});
assertEquals(echoString, "bar");
}
}