summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/main/java/sampleasync/impl/SampleJavaInvoker.java
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/main/java/sampleasync/impl/SampleJavaInvoker.java13
1 files changed, 12 insertions, 1 deletions
diff --git a/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/main/java/sampleasync/impl/SampleJavaInvoker.java b/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/main/java/sampleasync/impl/SampleJavaInvoker.java
index 437d141be0..063fe166eb 100644
--- a/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/main/java/sampleasync/impl/SampleJavaInvoker.java
+++ b/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/src/main/java/sampleasync/impl/SampleJavaInvoker.java
@@ -23,6 +23,8 @@ import java.lang.reflect.Method;
import org.apache.tuscany.sca.interfacedef.java.JavaOperation;
import org.apache.tuscany.sca.invocation.Invoker;
+import org.apache.tuscany.sca.invocation.InvokerAsyncRequest;
+import org.apache.tuscany.sca.invocation.InvokerAsyncResponse;
import org.apache.tuscany.sca.invocation.Message;
/**
@@ -30,7 +32,7 @@ import org.apache.tuscany.sca.invocation.Message;
*
* @version $Rev$ $Date$
*/
-class SampleJavaInvoker implements Invoker {
+class SampleJavaInvoker implements Invoker, InvokerAsyncRequest {
final Object instance;
final Method method;
@@ -40,6 +42,15 @@ class SampleJavaInvoker implements Invoker {
}
public Message invoke(final Message msg) {
+ return processRequest(msg);
+ }
+
+ public void invokeAsyncRequest(Message msg) {
+ processRequest(msg);
+ // TODO - need to do something about exceptions
+ }
+
+ public Message processRequest(Message msg) {
try {
// Call the method that implements the operation
msg.setBody(method.invoke(instance, (Object[])msg.getBody()));