Issue 2407: Proposed interface changes to ExchangeRateManager (currency-rtf) Source: (, ) Nature: Revision Severity: Summary: Summary: Propose the following interface changes: ExchangeRate createExchangeRate( in wstring rateTypeId, in wstring sourceCurrencyMnemonic, in wstring targetCurrencyMnemonic, in CBO::Ddecimal conversionFactor, in CBO::Dtime beginDateTime, in CBO::Dtime endDateTime) Resolution: Close, no action Revised Text: Actions taken: January 11, 1999: received issue May 4, 2000: closed issue Discussion: End of Annotations:===== Return-Path: From: Robert_Mickley@CYBORG.COM X-Lotus-FromDomain: CYBORG@CYBORG_NET To: issues@omg.org cc: Robert_Mickley@CYBORG.COM, Amy_Griffis@CYBORG.COM Date: Mon, 11 Jan 1999 21:28:52 -0700 Subject: Currency RTF Issues Content-Disposition: inline Today is the deadline for comments for the Currency RTF. Below is an itemized list of additions to that list. Issue Title: Proposed interface changes to ExchangeRateManager Issue Type: IDL Revision Issue Description: Propose the following interface changes: ExchangeRate createExchangeRate( in wstring rateTypeId, in wstring sourceCurrencyMnemonic, in wstring targetCurrencyMnemonic, in CBO::Ddecimal conversionFactor, in CBO::Dtime beginDateTime, in CBO::Dtime endDateTime) createExchangeRate() should have the same preconditions as ExchangeRate.init() correct? i.e. source and target currency mnemonics must be different, beginDateTime < endDateTime, and conversionFactor must represent a value > 0.0. CBO::Dtime getPointInTime(in CosObjectIdentity::IdentifiableObject stateIdentifier). Also, an FbcException is thrown if this has been called and setPointInTime() has never been called for the given stateIdentifier. i.e. There is no default point in time. void setPointInTime(in CosObjectIdentity::IdentifiableObject stateIdentifier, in CBO::Dtime pointInTime) wstring getRateType(in CosObjectIdentity::IdentifiableObject stateIdentifier). Also, an FbcException is thrown if this has been called and setRateType() has never been called for the given stateIdentifier. i.e. There is no default rate type. void setRateType(in CosObjectIdentity::IdentifiableObject stateIdentifier, in wstring rateTypeId) ExchangeRate getExchangeRate(in CosObjectIdentity::IdentifiableObject stateIdentifier, in wstring sourceCurrencyMnemonic, in wstring targetCurrencyMnemonic) Delete the ExchangeRate getExchangeRateForRateType() interface. Thus, only one interface remains to search for one specific ExchangeRate. add additional interfaces and supporting textual description to retrieve all exchange rates: Get all interface already exists. Get all for a specific rate type Get all for a specific window in time Get all for a specific point in time Get all for a specific rate type and window in time Get all for a specific rate type and point in time Get all for a specific source/target currency pair Get all for a specific source/target currency pair and window in time