diff options
author | kelvingoodson <kelvingoodson@13f79535-47bb-0310-9956-ffa450edef68> | 2010-09-22 15:44:02 +0000 |
---|---|---|
committer | kelvingoodson <kelvingoodson@13f79535-47bb-0310-9956-ffa450edef68> | 2010-09-22 15:44:02 +0000 |
commit | edd0185504c9a786973bf8886333fac5fc1fcbe3 (patch) | |
tree | cd96e5d772f522434b65c92ada69796cc427a8c5 /sca-java-2.x/trunk/contrib/samples/async/sample-contribution-implementation-java-calculator-async/src/main/java/calculator/CalculatorServiceProxyImpl.java | |
parent | 9019dcc139adeca37bb335cf508f50afc59b45b7 (diff) |
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1000051 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-java-2.x/trunk/contrib/samples/async/sample-contribution-implementation-java-calculator-async/src/main/java/calculator/CalculatorServiceProxyImpl.java')
-rw-r--r-- | sca-java-2.x/trunk/contrib/samples/async/sample-contribution-implementation-java-calculator-async/src/main/java/calculator/CalculatorServiceProxyImpl.java | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/sca-java-2.x/trunk/contrib/samples/async/sample-contribution-implementation-java-calculator-async/src/main/java/calculator/CalculatorServiceProxyImpl.java b/sca-java-2.x/trunk/contrib/samples/async/sample-contribution-implementation-java-calculator-async/src/main/java/calculator/CalculatorServiceProxyImpl.java deleted file mode 100644 index 69c96fe892..0000000000 --- a/sca-java-2.x/trunk/contrib/samples/async/sample-contribution-implementation-java-calculator-async/src/main/java/calculator/CalculatorServiceProxyImpl.java +++ /dev/null @@ -1,89 +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 calculator; - -import java.util.concurrent.ExecutionException; -import java.util.concurrent.Future; - -import org.oasisopen.sca.annotation.Reference; - -/** - * An implementation of the Calculator service which just proxies - * to sync and asyn versions of the calculator service. This proxy - * exercises the various async interface alternatives - */ -public class CalculatorServiceProxyImpl implements CalculatorService { - - @Reference - protected CalculateViaAsyncRef calculatorServiceRefSync; - - @Reference - protected CalculateViaAsyncRef calculatorServiceRefAsync; - - @Override - public String calculate(Integer n1) { - String result = null; - - // calculate using a sync service - System.out.println("Calling sync service"); - result = calculate(calculatorServiceRefSync, n1); - - // calculate using an aycn service - System.out.println("Calling async service"); - result += calculate(calculatorServiceRefAsync, n1); - - return result; - } - - // exercise sync and async versions of a service interface method - private String calculate(CalculateViaAsyncRef calculatorRef, Integer n1) { - - // sync - String result = calculatorRef.calculate(1); - System.out.println("Sync client patern: result = " + result); - - // async poll - Future<String> future = calculatorRef.calculateAsync(20); - - while (!future.isDone()){ - System.out.println("Waiting for poll"); - } - - try { - result = future.get(); - System.out.println("Async client poll patern: result = " + result); - } catch (InterruptedException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } catch (ExecutionException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - - // async callback - CalculatorAsyncHandler handler = new CalculatorAsyncHandler(); - future = calculatorRef.calculateAsync(3, handler); - - while (!future.isDone()){ - System.out.println("Waiting for callback"); - } - - return result; - } -} |