package com.example.demo.exchange import com.example.demo.domain.Currency import com.example.demo.domain.Money import com.example.demo.domain.StdMoney class MoneyExchange ( private val exchangeAdapter: ExchangeAdapter ) { fun exchange(source: StdMoney, toCurrency: String): StdMoney { val exchangeRate = exchangeAdapter.exchange(source.getMoneyCurrency(), source.getMoneyValue(), toCurrency) return Money(value = exchangeRate, currency = Currency.create(toCurrency)) } }