package gw.lang.enhancements uses gw.api.util.MultiCurrencySummation uses gw.pl.currency.MonetaryAmount uses java.util.Date /** * Adds multi-currency summation enhancements. */ @ReadOnly enhancement PCIterableOfMonetaryAmountEnhancement : java.lang.Iterable { function sumDifferentCurriences(currency : Currency) : MonetaryAmount { // sum up like currencies var summation = new MultiCurrencySummation() this.each(\ c -> {summation.add(c)}) // sum up like currency summations converted to currency... return summation.sum(currency) } function sumDifferentCurrencies(currency : Currency, market : FXRateMarket, rateDate : Date = null) : MonetaryAmount { // sum up like currencies var summation = new MultiCurrencySummation() this.each(\ c -> {summation.add(c)}) // sum up like currency summations converted to currency... return summation.sum(currency, market, rateDate) } }