diff options
Diffstat (limited to '')
-rw-r--r-- | sca-java-2.x/tags/2.0-Beta1-RC2/testing/itest/async-interactions/src/main/java/test/client/CreditCardPaymentClientImpl.java | 188 |
1 files changed, 0 insertions, 188 deletions
diff --git a/sca-java-2.x/tags/2.0-Beta1-RC2/testing/itest/async-interactions/src/main/java/test/client/CreditCardPaymentClientImpl.java b/sca-java-2.x/tags/2.0-Beta1-RC2/testing/itest/async-interactions/src/main/java/test/client/CreditCardPaymentClientImpl.java deleted file mode 100644 index 69a6203045..0000000000 --- a/sca-java-2.x/tags/2.0-Beta1-RC2/testing/itest/async-interactions/src/main/java/test/client/CreditCardPaymentClientImpl.java +++ /dev/null @@ -1,188 +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 test.client; - -import java.util.HashMap; -import java.util.Map; -import java.util.concurrent.Future; - -import javax.xml.ws.AsyncHandler; -import javax.xml.ws.Response; - -import org.oasisopen.sca.annotation.Reference; -import org.oasisopen.sca.annotation.Service; - -import com.example.test.jaxb.client.AuthorizeResponse; -import com.example.test.jaxb.client.CreditCardDetailsType; -import com.example.test.jaxb.client.ObjectFactory; -import com.example.test.jaxb.client.PayerType; -import com.example.test.jaxws.client.AuthorizeFault; -import com.example.test.jaxws.client.CreditCardPayment; - -/** - * Mocked implementation of CreditCardPaymentClient - */ -@Service(CreditCardClient.class) -public class CreditCardPaymentClientImpl implements CreditCardClient, CreditCardPaymentCallback, - CreditCardPaymentCallbackSync { - - @Reference - private CreditCardPayment proxy; - - @Reference - private CreditCardPaymentRequestClient asyncProxy; - - @Reference - private CreditCardPaymentRequestClientSync syncProxy; - - @Override - public String authorize(String creditCardNumber, String holder, float amount) { - CreditCardDetailsType creditCard = createCreditCard(creditCardNumber, holder); - - try { - return proxy.authorize(creditCard, amount); - } catch (AuthorizeFault e) { - return "FAIL: " + e.getFaultInfo().getErrorCode(); - } - - } - - private CreditCardDetailsType createCreditCard(String creditCardNumber, String holder) { - ObjectFactory factory = new ObjectFactory(); - CreditCardDetailsType creditCard = factory.createCreditCardDetailsType(); - creditCard.setCreditCardNumber(creditCardNumber); - PayerType payer = factory.createPayerType(); - payer.setName(holder); - creditCard.setCardOwner(payer); - return creditCard; - } - - public String authorizeAsync(String creditCardNumber, String holder, float amount) { - CreditCardDetailsType creditCard = createCreditCard(creditCardNumber, holder); - - Response<AuthorizeResponse> respone = proxy.authorizeAsync(creditCard, amount); - try { - return respone.get().getStatus(); - } catch (Exception e) { - e.printStackTrace(); - return "FAIL: " + e.getMessage(); - } - - } - - public String authorizeAsyncWithCallback(String creditCardNumber, String holder, float amount) { - CreditCardDetailsType creditCard = createCreditCard(creditCardNumber, holder); - - Future<?> respone = proxy.authorizeAsync(creditCard, amount, new AsyncHandler<AuthorizeResponse>() { - - @Override - public void handleResponse(Response<AuthorizeResponse> res) { - try { - System.out.println(Thread.currentThread() + " Response has arrived: " + res.get().getStatus()); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - - while (!(respone.isDone() || respone.isCancelled())) { - try { - Thread.sleep(1000); - } catch (InterruptedException e) { - e.printStackTrace(); - return "FAIL: " + e.getMessage(); - } - } - - System.out.println(Thread.currentThread() + " The task is done"); - try { - return ((AuthorizeResponse)respone.get()).getStatus(); - } catch (Exception e) { - e.printStackTrace(); - return "FAIL: " + e.getMessage(); - } - } - - /** - * A map that host the result for a given credit card - */ - private static Map<String, String> statusMap = new HashMap<String, String>(); - - public String authorizeSCAAsyncWithCallback(String creditCardNumber, String holder, float amount) { - CreditCardDetailsType creditCard = createCreditCard(creditCardNumber, holder); - asyncProxy.authorizeRequestOneway(creditCard, amount); - synchronized (statusMap) { - while (true) { - String status = statusMap.remove("ASYNC:" + creditCardNumber); - if (status != null) { - System.out.println("Response found for " + creditCardNumber + " :" + status); - return status; - } else { - try { - statusMap.wait(); - } catch (InterruptedException e) { - e.printStackTrace(); - return "FAIL: " + e.getMessage(); - } - } - } - } - } - - @Override - public void authorizeResponseOneway(String creditCardNumber, String status) { - System.out.println("SCA one callback: CreditCard: " + creditCardNumber + " Status: " + status); - synchronized (statusMap) { - statusMap.put("ASYNC:" + creditCardNumber, status); - statusMap.notifyAll(); - } - } - - public String authorizeSCAWithCallback(String creditCardNumber, String holder, float amount) { - CreditCardDetailsType creditCard = createCreditCard(creditCardNumber, holder); - syncProxy.authorizeRequest(creditCard, amount); - synchronized (statusMap) { - while (true) { - String status = statusMap.remove("SYNC:" + creditCardNumber); - if (status != null) { - System.out.println("Response found for " + creditCardNumber + " :" + status); - return status; - } else { - try { - statusMap.wait(); - } catch (InterruptedException e) { - e.printStackTrace(); - return "FAIL: " + e.getMessage(); - } - } - } - } - } - - @Override - public String authorizeResponse(String creditCardNumber, String status) { - System.out.println("SCA synchronous callback: CreditCard: " + creditCardNumber + " Status: " + status); - synchronized (statusMap) { - statusMap.put("SYNC:" + creditCardNumber, status); - statusMap.notifyAll(); - } - return "ACK"; - } - -} |