| Interface | osid.locale.CurrencyConversionSession | ||
|---|---|---|---|
| Implements | osid.OsidSession | ||
| Description | 
                 This session defines methods to convert currency.  | ||
| Method | getSourceCurrencyType | ||
| Description | 
                     Gets the source currency type used in this session.  | ||
| Return | osid.type.Type | the source currency | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getTargetCurrencyType | ||
| Description | 
                     Gets the target currency type used in this session.  | ||
| Return | osid.type.Type | the target currency | |
| Compliance | mandatory | This method must be implemented. | |
| Method | canConvertCurrency | ||
| Description | 
                     Tests if this user can perform currency conversions. A 
                    return of true does not guarantee successful 
                    authorization. A return of false indicates that it is 
                    known all methods in this session will result in a   | ||
| Return | boolean |  false  if conversion methods are not authorized,  true 
 otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | convertCurrency | ||
| Description | 
                     Converts currency.  | ||
| Parameters | osid.financials.Currency | sourceCurrencyAmount | the currency amount to convert | 
| Return | osid.financials.Currency | resulting currency units | |
| Errors | INVALID_ARGUMENT |  sourceCurrencyAmount.getCurrencyType() != getSourcecurrencyType() 
  |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | convertCurrencies | ||
| Description | 
                     Converts currencies.  | ||
| Parameters | osid.financials.Currency[] | sourceCurrencyAmounts | the currency amounts to convert | 
| Return | osid.financials.Currency[] | resulting currency units | |
| Errors | INVALID_ARGUMENT |  sourceCurrencyAmount.getCurrencyType() != getSourcecurrencyType() 
  |                 |
| NULL_ARGUMENT |  sourceCurrencyAmounts  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |