diff --git a/src/main/java/io/zipcoder/currencyconverterapplication/ConvertableCurrency.java b/src/main/java/io/zipcoder/currencyconverterapplication/ConvertableCurrency.java index 6498351..9a047a4 100644 --- a/src/main/java/io/zipcoder/currencyconverterapplication/ConvertableCurrency.java +++ b/src/main/java/io/zipcoder/currencyconverterapplication/ConvertableCurrency.java @@ -1,7 +1,10 @@ package io.zipcoder.currencyconverterapplication; +import io.zipcoder.currencyconverterapplication.currencies.UniversalCurrency; + public interface ConvertableCurrency { default Double convert(CurrencyType currencyType) { - return Double.MAX_VALUE; + + return currencyType.getRate() / CurrencyType.getTypeOfCurrency(this).getRate(); } } diff --git a/src/main/java/io/zipcoder/currencyconverterapplication/CurrencyType.java b/src/main/java/io/zipcoder/currencyconverterapplication/CurrencyType.java index 9acf5e8..46cb383 100644 --- a/src/main/java/io/zipcoder/currencyconverterapplication/CurrencyType.java +++ b/src/main/java/io/zipcoder/currencyconverterapplication/CurrencyType.java @@ -1,5 +1,7 @@ package io.zipcoder.currencyconverterapplication; +import java.util.Locale; + public enum CurrencyType { AUSTRALIAN_DOLLAR(2.70), CANADIAN_DOLLAR(2.64), @@ -25,6 +27,25 @@ public Double getRate() { } public static CurrencyType getTypeOfCurrency(ConvertableCurrency currency) { + for (CurrencyType value : CurrencyType.values()) { + String name = value.name().replace("_", ""); + String currencyName = currency.getClass().getSimpleName(); + if (name.equalsIgnoreCase(currencyName)) { + return value; + } + } return null; } } + + +// CurrencyType[] name = CurrencyType.values(); +// for (int i = 0; i < name.length; i++) { +// if (currency.equals(name[i])) { +// return name[i]; +// } +// } +// return null; +// //return CurrencyType.valueOf(currency.getClass().getSimpleName()); +// } +//} diff --git a/src/main/java/io/zipcoder/currencyconverterapplication/currencies/AustralianDollar.java b/src/main/java/io/zipcoder/currencyconverterapplication/currencies/AustralianDollar.java index 7ff9427..7f0f1de 100644 --- a/src/main/java/io/zipcoder/currencyconverterapplication/currencies/AustralianDollar.java +++ b/src/main/java/io/zipcoder/currencyconverterapplication/currencies/AustralianDollar.java @@ -3,4 +3,5 @@ import io.zipcoder.currencyconverterapplication.ConvertableCurrency; public class AustralianDollar implements ConvertableCurrency { + } diff --git a/target/classes/META-INF/tc-money-converter.kotlin_module b/target/classes/META-INF/tc-money-converter.kotlin_module deleted file mode 100644 index 8fb6019..0000000 Binary files a/target/classes/META-INF/tc-money-converter.kotlin_module and /dev/null differ diff --git a/target/classes/io/zipcoder/currencyconverterapplication/ConvertableCurrency.class b/target/classes/io/zipcoder/currencyconverterapplication/ConvertableCurrency.class index 0c98dc2..f0b31f6 100644 Binary files a/target/classes/io/zipcoder/currencyconverterapplication/ConvertableCurrency.class and b/target/classes/io/zipcoder/currencyconverterapplication/ConvertableCurrency.class differ diff --git a/target/classes/io/zipcoder/currencyconverterapplication/CurrencyType.class b/target/classes/io/zipcoder/currencyconverterapplication/CurrencyType.class index 8bd897e..b336d0a 100644 Binary files a/target/classes/io/zipcoder/currencyconverterapplication/CurrencyType.class and b/target/classes/io/zipcoder/currencyconverterapplication/CurrencyType.class differ diff --git a/target/test-classes/META-INF/tc-money-converter.kotlin_module b/target/test-classes/META-INF/tc-money-converter.kotlin_module deleted file mode 100644 index 8fb6019..0000000 Binary files a/target/test-classes/META-INF/tc-money-converter.kotlin_module and /dev/null differ