killbill-uncached

Set inflightQ algorithm for bus by default Fix EhCacheCacheManagerProvider

4/11/2014 4:19:38 PM

Details

diff --git a/beatrix/src/main/java/org/killbill/billing/beatrix/glue/ExternalPersistentBusConfig.java b/beatrix/src/main/java/org/killbill/billing/beatrix/glue/ExternalPersistentBusConfig.java
index a1bc7b5..d2c3160 100644
--- a/beatrix/src/main/java/org/killbill/billing/beatrix/glue/ExternalPersistentBusConfig.java
+++ b/beatrix/src/main/java/org/killbill/billing/beatrix/glue/ExternalPersistentBusConfig.java
@@ -49,6 +49,9 @@ public class ExternalPersistentBusConfig extends PersistentBusConfig {
     }
 
     @Override
+    public boolean isSticky() { return externalPersistentBusConfig.isSticky(); }
+
+    @Override
     public int getMaxFailureRetries() {
         return externalPersistentBusConfig.getMaxFailureRetries();
     }
@@ -89,11 +92,6 @@ public class ExternalPersistentBusConfig extends PersistentBusConfig {
     }
 
     @Override
-    public boolean isSticky() {
-        return externalPersistentBusConfig.isSticky();
-    }
-
-    @Override
     public String getTableName() {
         if (internalPersistentBusConfig.getTableName().equals(externalPersistentBusConfig.getTableName())) {
             if (TABLE_NAME_DEFAULT_VALUE.equals(externalPersistentBusConfig.getTableName())) {
diff --git a/server/src/main/resources/killbill-server.properties b/server/src/main/resources/killbill-server.properties
index 6164d4c..ee0fd14 100644
--- a/server/src/main/resources/killbill-server.properties
+++ b/server/src/main/resources/killbill-server.properties
@@ -34,6 +34,8 @@ org.killbill.notificationq.main.sleep=100
 org.killbill.persistent.bus.main.sleep=100
 org.killbill.persistent.bus.main.nbThreads=1
 org.killbill.persistent.bus.main.claimed=1
+org.killbill.persistent.bus.main.sitcky=true
+org.killbill.persistent.bus.main.useInflightQ=true
 
 org.killbill.persistent.bus.external.sleep=100
 org.killbill.persistent.bus.external.nbThreads=1
diff --git a/util/src/main/java/org/killbill/billing/util/cache/EhCacheCacheManagerProvider.java b/util/src/main/java/org/killbill/billing/util/cache/EhCacheCacheManagerProvider.java
index a4f50f9..b8dc978 100644
--- a/util/src/main/java/org/killbill/billing/util/cache/EhCacheCacheManagerProvider.java
+++ b/util/src/main/java/org/killbill/billing/util/cache/EhCacheCacheManagerProvider.java
@@ -17,6 +17,8 @@
 package org.killbill.billing.util.cache;
 
 import java.io.IOException;
+import java.io.InputStream;
+import java.net.URISyntaxException;
 import java.util.Collection;
 import java.util.LinkedList;
 
@@ -24,6 +26,7 @@ import javax.inject.Inject;
 import javax.inject.Provider;
 
 import org.killbill.billing.util.config.CacheConfig;
+import org.killbill.billing.util.config.catalog.UriAccessor;
 
 import net.sf.ehcache.Cache;
 import net.sf.ehcache.CacheManager;
@@ -54,9 +57,12 @@ public class EhCacheCacheManagerProvider implements Provider<CacheManager> {
     public CacheManager get() {
         final CacheManager cacheManager;
         try {
-            cacheManager = CacheManager.create(EhCacheCacheManagerProvider.class.getResource(cacheConfig.getCacheConfigLocation()).openStream());
+            final InputStream inputStream = UriAccessor.accessUri(cacheConfig.getCacheConfigLocation());
+            cacheManager = CacheManager.create(inputStream);
         } catch (IOException e) {
             throw new RuntimeException(e);
+        } catch (URISyntaxException e) {
+            throw new RuntimeException(e);
         }
 
         for (final BaseCacheLoader cacheLoader : cacheLoaders) {
diff --git a/util/src/main/java/org/killbill/billing/util/config/CacheConfig.java b/util/src/main/java/org/killbill/billing/util/config/CacheConfig.java
index b3ee5a9..7e7c9fd 100644
--- a/util/src/main/java/org/killbill/billing/util/config/CacheConfig.java
+++ b/util/src/main/java/org/killbill/billing/util/config/CacheConfig.java
@@ -23,7 +23,7 @@ import org.skife.config.Description;
 public interface CacheConfig extends KillbillConfig {
 
     @Config("org.killbill.cache.config.location")
-    @Default("/ehcache.xml")
+    @Default("ehcache.xml")
     @Description("Path to Ehcache XML configuration")
     public String getCacheConfigLocation();
 
diff --git a/util/src/test/java/org/killbill/billing/TestKillbillConfigSource.java b/util/src/test/java/org/killbill/billing/TestKillbillConfigSource.java
index 08a24d1..e9000fb 100644
--- a/util/src/test/java/org/killbill/billing/TestKillbillConfigSource.java
+++ b/util/src/test/java/org/killbill/billing/TestKillbillConfigSource.java
@@ -68,12 +68,12 @@ public class TestKillbillConfigSource extends KillbillConfigSource {
         properties.put("org.killbill.persistent.bus.main.nbThreads", "1");
         properties.put("org.killbill.persistent.bus.main.prefetch", "1");
         properties.put("org.killbill.persistent.bus.main.claimed", "1");
-        properties.put("org.killbill.persistent.bus.main.useInFlightQ", "false");
+        properties.put("org.killbill.persistent.bus.main.useInFlightQ", "true");
         properties.put("org.killbill.persistent.bus.external.sleep", "100");
         properties.put("org.killbill.persistent.bus.external.nbThreads", "1");
         properties.put("org.killbill.persistent.bus.external.prefetch", "1");
         properties.put("org.killbill.persistent.bus.external.claimed", "1");
-        properties.put("org.killbill.persistent.bus.external.useInFlightQ", "false");
+        properties.put("org.killbill.persistent.bus.external.useInFlightQ", "true");
 
         if (extraDefaults != null) {
             for (final String key : extraDefaults.keySet()) {