killbill-memoizeit

Merge branch 'new-paymentpluginapi' of github.com:killbill/killbill

3/1/2013 3:24:48 PM

Details

diff --git a/api/src/main/java/com/ning/billing/osgi/api/OSGIUserApi.java b/api/src/main/java/com/ning/billing/osgi/api/OSGIUserApi.java
index 60067be..edde588 100644
--- a/api/src/main/java/com/ning/billing/osgi/api/OSGIUserApi.java
+++ b/api/src/main/java/com/ning/billing/osgi/api/OSGIUserApi.java
@@ -18,5 +18,5 @@ package com.ning.billing.osgi.api;
 
 public interface OSGIUserApi {
 
-    public <S> S getService(Class<S> serviceClass) throws LiveTrackerException;
+    public <S> S getService(final String serviceClassName) throws LiveTrackerException;
 }
diff --git a/osgi/src/main/java/com/ning/billing/osgi/api/DefaultOSGIUserApi.java b/osgi/src/main/java/com/ning/billing/osgi/api/DefaultOSGIUserApi.java
index be9050b..7f28a9c 100644
--- a/osgi/src/main/java/com/ning/billing/osgi/api/DefaultOSGIUserApi.java
+++ b/osgi/src/main/java/com/ning/billing/osgi/api/DefaultOSGIUserApi.java
@@ -30,7 +30,7 @@ public class DefaultOSGIUserApi implements OSGIUserApi {
     }
 
     @Override
-    public <S> S getService(final Class<S> serviceClass) throws LiveTrackerException {
-        return liveTracker.getRegisteredOSGIService(serviceClass);
+    public <S> S getService(final String serviceClassName) throws LiveTrackerException {
+        return liveTracker.getRegisteredOSGIService(serviceClassName );
     }
 }
diff --git a/osgi/src/main/java/com/ning/billing/osgi/KillbillActivator.java b/osgi/src/main/java/com/ning/billing/osgi/KillbillActivator.java
index 07d2ec6..2c25c32 100644
--- a/osgi/src/main/java/com/ning/billing/osgi/KillbillActivator.java
+++ b/osgi/src/main/java/com/ning/billing/osgi/KillbillActivator.java
@@ -132,19 +132,19 @@ public class KillbillActivator implements BundleActivator, ServiceListener, Live
     }
 
     @Override
-    public <S> S getRegisteredOSGIService(final Class<S> serviceType) throws LiveTrackerException {
+    public <S> S getRegisteredOSGIService(final String serviceClassName) throws LiveTrackerException {
         try {
-            ServiceTracker tracker = liveTrackers.get(serviceType.getName());
+            ServiceTracker tracker = liveTrackers.get(serviceClassName);
             if (tracker == null) {
-                throw new LiveTrackerException("No live tracker for service " + serviceType.getName());
+                throw new LiveTrackerException("No live tracker for service " + serviceClassName);
             }
             S result = (S) tracker.getService();
             if (result == null) {
-                throw new LiveTrackerException("Live tracker found a null service for " + serviceType.getName());
+                throw new LiveTrackerException("Live tracker found a null service for " + serviceClassName);
             }
             return result;
         } catch (ClassCastException e) {
-            throw new LiveTrackerException("Live tracker got ClassCastException for " + serviceType.getName(), e);
+            throw new LiveTrackerException("Live tracker got ClassCastException for " + serviceClassName, e);
         }
     }
 
diff --git a/osgi/src/main/java/com/ning/billing/osgi/LiveTracker.java b/osgi/src/main/java/com/ning/billing/osgi/LiveTracker.java
index 110c937..187579b 100644
--- a/osgi/src/main/java/com/ning/billing/osgi/LiveTracker.java
+++ b/osgi/src/main/java/com/ning/billing/osgi/LiveTracker.java
@@ -20,5 +20,5 @@ import com.ning.billing.osgi.api.LiveTrackerException;
 
 public interface LiveTracker {
 
-    public <S> S getRegisteredOSGIService(final Class<S> serviceType) throws LiveTrackerException;
+    public <S> S getRegisteredOSGIService(final String serviceClassName) throws LiveTrackerException;
 }