killbill-memoizeit

Details

diff --git a/osgi/src/main/java/com/ning/billing/osgi/DefaultOSGIKillbill.java b/osgi/src/main/java/com/ning/billing/osgi/DefaultOSGIKillbill.java
index df276e0..a54509e 100644
--- a/osgi/src/main/java/com/ning/billing/osgi/DefaultOSGIKillbill.java
+++ b/osgi/src/main/java/com/ning/billing/osgi/DefaultOSGIKillbill.java
@@ -20,6 +20,7 @@ import javax.inject.Inject;
 
 import com.ning.billing.account.api.AccountUserApi;
 import com.ning.billing.catalog.api.CatalogUserApi;
+import com.ning.billing.currency.api.CurrencyConversionApi;
 import com.ning.billing.entitlement.api.EntitlementApi;
 import com.ning.billing.entitlement.api.SubscriptionApi;
 import com.ning.billing.invoice.api.InvoicePaymentApi;
@@ -50,6 +51,7 @@ public class DefaultOSGIKillbill implements OSGIKillbill {
     private final TagUserApi tagUserApi;
     private final EntitlementApi entitlementApi;
     private final SubscriptionApi subscriptionApi;
+    private final CurrencyConversionApi currencyConversionApi;
     private final RecordIdApi recordIdApi;
 
     private final PluginConfigServiceApi configServiceApi;
@@ -69,6 +71,7 @@ public class DefaultOSGIKillbill implements OSGIKillbill {
                                final EntitlementApi entitlementApi,
                                final SubscriptionApi subscriptionApi,
                                final RecordIdApi recordIdApi,
+                               final CurrencyConversionApi currencyConversionApi,
                                final PluginConfigServiceApi configServiceApi) {
         this.accountUserApi = accountUserApi;
         this.catalogUserApi = catalogUserApi;
@@ -83,6 +86,7 @@ public class DefaultOSGIKillbill implements OSGIKillbill {
         this.tagUserApi = tagUserApi;
         this.entitlementApi = entitlementApi;
         this.subscriptionApi = subscriptionApi;
+        this.currencyConversionApi = currencyConversionApi;
         this.recordIdApi = recordIdApi;
         this.configServiceApi = configServiceApi;
     }
@@ -158,6 +162,11 @@ public class DefaultOSGIKillbill implements OSGIKillbill {
     }
 
     @Override
+    public CurrencyConversionApi getCurrencyConversionApi() {
+        return currencyConversionApi;
+    }
+
+    @Override
     public PluginConfigServiceApi getPluginConfigServiceApi() {
         return configServiceApi;
     }
diff --git a/osgi-bundles/libs/killbill/src/main/java/com/ning/killbill/osgi/libs/killbill/OSGIKillbillAPI.java b/osgi-bundles/libs/killbill/src/main/java/com/ning/killbill/osgi/libs/killbill/OSGIKillbillAPI.java
index 3f289a6..033e369 100644
--- a/osgi-bundles/libs/killbill/src/main/java/com/ning/killbill/osgi/libs/killbill/OSGIKillbillAPI.java
+++ b/osgi-bundles/libs/killbill/src/main/java/com/ning/killbill/osgi/libs/killbill/OSGIKillbillAPI.java
@@ -21,6 +21,8 @@ import org.osgi.util.tracker.ServiceTracker;
 
 import com.ning.billing.account.api.AccountUserApi;
 import com.ning.billing.catalog.api.CatalogUserApi;
+import com.ning.billing.currency.api.CurrencyConversion;
+import com.ning.billing.currency.api.CurrencyConversionApi;
 import com.ning.billing.entitlement.api.EntitlementApi;
 import com.ning.billing.entitlement.api.SubscriptionApi;
 import com.ning.billing.invoice.api.InvoicePaymentApi;
@@ -196,6 +198,16 @@ public class OSGIKillbillAPI extends OSGIKillbillLibraryBase implements OSGIKill
     }
 
     @Override
+    public CurrencyConversionApi getCurrencyConversionApi() {
+        return withServiceTracker(killbillTracker, new APICallback<CurrencyConversionApi, OSGIKillbill>(KILLBILL_SERVICE_NAME) {
+            @Override
+            public CurrencyConversionApi executeWithService(final OSGIKillbill service) {
+                return service.getCurrencyConversionApi();
+            }
+        });
+    }
+
+    @Override
     public PluginConfigServiceApi getPluginConfigServiceApi() {
         return withServiceTracker(killbillTracker, new APICallback<PluginConfigServiceApi, OSGIKillbill>(KILLBILL_SERVICE_NAME) {
             @Override