You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by ri...@apache.org on 2006/05/17 19:45:14 UTC

svn commit: r407340 - in /incubator/tuscany/java/sampleapps/bigbank/account/src/main: java/bigbank/account/services/account/AccountServiceImpl.java resources/sca.module

Author: rineholt
Date: Wed May 17 10:45:14 2006
New Revision: 407340

URL: http://svn.apache.org/viewvc?rev=407340&view=rev
Log:
put back currency conversions.

Modified:
    incubator/tuscany/java/sampleapps/bigbank/account/src/main/java/bigbank/account/services/account/AccountServiceImpl.java
    incubator/tuscany/java/sampleapps/bigbank/account/src/main/resources/sca.module

Modified: incubator/tuscany/java/sampleapps/bigbank/account/src/main/java/bigbank/account/services/account/AccountServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sampleapps/bigbank/account/src/main/java/bigbank/account/services/account/AccountServiceImpl.java?rev=407340&r1=407339&r2=407340&view=diff
==============================================================================
--- incubator/tuscany/java/sampleapps/bigbank/account/src/main/java/bigbank/account/services/account/AccountServiceImpl.java (original)
+++ incubator/tuscany/java/sampleapps/bigbank/account/src/main/java/bigbank/account/services/account/AccountServiceImpl.java Wed May 17 10:45:14 2006
@@ -36,6 +36,7 @@
 
 import com.bigbank.account.AccountReport;
 import com.bigbank.account.AccountService;
+import com.bigbank.account.AccountSummary;
 import com.bigbank.account.CustomerProfileData;
 import com.bigbank.account.StockSummary;
 
@@ -55,11 +56,26 @@
         AccountServiceImpl.tsformatXSDDateTime.setTimeZone(TimeZone.getTimeZone("UTC"));
     }
 
-    private String currency = "USD";
+    private float currencyConversion = 1.0f; 
+    private String currency= "USD";
 
     @Property
-    public void setCurrency(String currency) {
-        this.currency = currency;
+    public void setCurrency(final String currency) {
+        this.currency= currency == null ? this.currency:  currency.trim();
+
+        if ("USD".equals(this.currency))
+            currencyConversion= 1.0f;
+        else if ("EURO".equals(this.currency))
+            currencyConversion= 0.8f;
+        else{
+            try {
+                currencyConversion = Float.parseFloat(this.currency);
+            } catch (Exception e) {
+                currencyConversion= 1.0f;
+            }            
+           
+        }
+        
     }
 
     private AccountDataService accountDataService;
@@ -84,6 +100,12 @@
 
         try {
             AccountReport accountReport = accountDataService.getAccountReport(customerID);
+            //convert to local currency.
+            List<AccountSummary> accounts = accountReport.getAccountSummaries();
+            for(AccountSummary accountSummary : accounts){
+                accountSummary.setBalance(fromUSDollarToCurrency(accountSummary.getBalance()));
+                
+            }
             return updateStockInformation(accountReport);
         } catch (Exception e) {
             e.printStackTrace();
@@ -120,10 +142,10 @@
                 stock.setLowPrice(Float.NaN);
 
             } else {
-                stock.setCurrentPrice(convertToFloat(stockquote.getStockQuote()));
+                stock.setCurrentPrice(fromUSDollarToCurrency(convertToFloat(stockquote.getStockQuote())));
                 stock.setCompany(stockquote.getCompanyName());
-                stock.setHighPrice(convertToFloat(stockquote.getDayHighPrice()));
-                stock.setLowPrice(convertToFloat(stockquote.getDayLowPrice()));
+                stock.setHighPrice(fromUSDollarToCurrency(convertToFloat(stockquote.getDayHighPrice())));
+                stock.setLowPrice(fromUSDollarToCurrency(convertToFloat(stockquote.getDayLowPrice())));
             }
         }
 
@@ -141,14 +163,15 @@
     }
 
     private float fromUSDollarToCurrency(float value) {
+        return value * currencyConversion ;
+
+   
+    }
+    private float toUSDollarfromCurrency(float value) {
 
-        if (currency.equals("USD"))
-            return value;
-        else if (currency.equals("EURO"))
-            return value * 0.8f;
-        else
-            return 0.0f;
+        return  value /currencyConversion ; 
     }
+    
 
     public CustomerProfileData getCustomerProfile(String logonID) throws RemoteException {
 
@@ -166,7 +189,7 @@
 
     public float deposit(String account, float ammount) throws RemoteException {
         try {
-            return accountDataService.deposit(account, ammount);
+            return accountDataService.deposit(account, toUSDollarfromCurrency(ammount));
         } catch (RemoteException e) {
             e.printStackTrace();
             throw e;
@@ -212,7 +235,7 @@
 
     public float withdraw(String account, float ammount) throws RemoteException {
         try {
-            return accountDataService.withdraw(account, ammount);
+            return accountDataService.withdraw(account, toUSDollarfromCurrency(ammount));
         } catch (RemoteException e) {
             e.printStackTrace();
             throw e;

Modified: incubator/tuscany/java/sampleapps/bigbank/account/src/main/resources/sca.module
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sampleapps/bigbank/account/src/main/resources/sca.module?rev=407340&r1=407339&r2=407340&view=diff
==============================================================================
--- incubator/tuscany/java/sampleapps/bigbank/account/src/main/resources/sca.module (original)
+++ incubator/tuscany/java/sampleapps/bigbank/account/src/main/resources/sca.module Wed May 17 10:45:14 2006
@@ -33,7 +33,7 @@
     <component name="AccountServiceComponent">
         <implementation.java class="bigbank.account.services.account.AccountServiceImpl"/>
         <properties>
-            <v:currency>EURO</v:currency>
+            <v:currency>USD</v:currency>
         </properties>
         <references>
             <v:accountDataService>AccountDataServiceComponent</v:accountDataService>