diff options
author | antelder <antelder@13f79535-47bb-0310-9956-ffa450edef68> | 2012-02-16 15:43:08 +0000 |
---|---|---|
committer | antelder <antelder@13f79535-47bb-0310-9956-ffa450edef68> | 2012-02-16 15:43:08 +0000 |
commit | 08adcf2e783e4733e0fd646d353db3592c62140d (patch) | |
tree | 6e3df9c577025d7f1934b1a3523b20bc7a55df64 /sca-java-2.x/tags/2.0-Beta2-RC1/samples/extending-tuscany/implementation-sample/src/main/java/sample/impl/SampleWSDLInvoker.java | |
parent | 7c60dda128ad42687f78d62c43603bb5d9e9c263 (diff) |
Delete old RC tags
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1245046 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
-rw-r--r-- | sca-java-2.x/tags/2.0-Beta2-RC1/samples/extending-tuscany/implementation-sample/src/main/java/sample/impl/SampleWSDLInvoker.java | 134 |
1 files changed, 0 insertions, 134 deletions
diff --git a/sca-java-2.x/tags/2.0-Beta2-RC1/samples/extending-tuscany/implementation-sample/src/main/java/sample/impl/SampleWSDLInvoker.java b/sca-java-2.x/tags/2.0-Beta2-RC1/samples/extending-tuscany/implementation-sample/src/main/java/sample/impl/SampleWSDLInvoker.java deleted file mode 100644 index 5c76cfd90a..0000000000 --- a/sca-java-2.x/tags/2.0-Beta2-RC1/samples/extending-tuscany/implementation-sample/src/main/java/sample/impl/SampleWSDLInvoker.java +++ /dev/null @@ -1,134 +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 sample.impl; - -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.ObjectInputStream; -import java.io.ObjectOutputStream; -import java.lang.reflect.Method; - -import org.apache.tuscany.sca.core.invocation.AsyncResponseInvoker; -import org.apache.tuscany.sca.core.invocation.InterceptorAsyncImpl; -import org.apache.tuscany.sca.interfacedef.wsdl.WSDLOperation; -import org.apache.tuscany.sca.invocation.Invoker; -import org.apache.tuscany.sca.invocation.Message; -import org.apache.tuscany.sca.runtime.RuntimeEndpoint; -import org.oasisopen.sca.ServiceRuntimeException; -import org.w3c.dom.Element; - -/** - * Invoker for Sample components that implement a WSDL interface using a generic - * call method. - * - * @version $Rev$ $Date$ - */ -class SampleWSDLInvoker extends InterceptorAsyncImpl { - final String name; - final Object instance; - final Method method; - - SampleWSDLInvoker(final WSDLOperation op, final Class<?> clazz, final Object instance) throws SecurityException, NoSuchMethodException { - this.name = op.getName(); - this.instance = instance; - this.method = clazz.getMethod("call", String.class, Element.class); - } - - public Invoker getNext() { - // Can't get next for an implementation invoker - return null; - } - - public Message invoke(final Message msg) { - return processRequest(msg); - } - - public void invokeAsyncRequest(Message msg) { - if (msg.getOperation().getName().equals("upper")){ - // Retrieve the async callback information - AsyncResponseInvoker respInvoker = (AsyncResponseInvoker)msg.getHeaders().get("ASYNC_RESPONSE_INVOKER"); - if( respInvoker == null ) throw new ServiceRuntimeException("Async Implementation invoked with no response invoker"); - - Message responseMsg = processRequest(msg); - - // in this sample programming model we make the async - // response from the implementation provider. The - // component implementation itself doesn't get a chance to - // do async responses. - - // At this point we could serialize the AsyncResponseInvoker and pick it up again - // later to send the async response - - try { - FileOutputStream fos = new FileOutputStream("ari.dat"); - ObjectOutputStream oos = new ObjectOutputStream(fos); - oos.writeObject(respInvoker); - oos.close(); - respInvoker.invokeAsyncResponse(responseMsg); - } catch (Exception ex) { - ex.printStackTrace(); - } - - } else if (msg.getOperation().getName().equals("upper2")){ - Message responseMsg = processRequest(msg); - - // read the async response invoker back in and call it - FileInputStream fis = null; - ObjectInputStream ois = null; - try { - fis = new FileInputStream("ari.dat"); - ois = new ObjectInputStream(fis); - AsyncResponseInvoker respInvoker = (AsyncResponseInvoker) ois.readObject(); - ois.close(); - respInvoker.invokeAsyncResponse(responseMsg); - } catch (Exception ex) { - ex.printStackTrace(); - } - } else { - // Retrieve the async callback information - AsyncResponseInvoker respInvoker = (AsyncResponseInvoker)msg.getHeaders().get("ASYNC_RESPONSE_INVOKER"); - if( respInvoker == null ) throw new ServiceRuntimeException("Async Implementation invoked with no response invoker"); - - Message responseMsg = processRequest(msg); - - if (responseMsg.getBody() != null){ - respInvoker.invokeAsyncResponse(responseMsg); - } - } - - } // end method invokeAsyncRequest - - public Message processRequest(Message msg) { - try { - //AsyncHeader asyncHeader = (String) message.getHeaders().get("ASYNC-HEADER"); - // Invoke the generic call method - Object response = method.invoke(instance, name, ((Object[])msg.getBody())[0]); - msg.setBody(response); - } catch(Exception e) { - e.printStackTrace(); - msg.setFaultBody(e.getCause()); - } - return msg; - } - - public Message processResponse(Message msg) { - return msg; - } -} |