Details
diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/json/PaymentMethodJson.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/json/PaymentMethodJson.java
index 50fe61d..376e613 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/json/PaymentMethodJson.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/json/PaymentMethodJson.java
@@ -25,6 +25,7 @@ import java.util.UUID;
import javax.annotation.Nullable;
+import com.google.common.collect.ImmutableList;
import org.joda.time.DateTime;
import org.killbill.billing.account.api.Account;
import org.killbill.billing.payment.api.PaymentMethod;
@@ -155,7 +156,7 @@ public class PaymentMethodJson extends JsonBase {
}
return result;
}
- return null;
+ return ImmutableList.of();
}
};
}
diff --git a/util/src/main/java/org/killbill/billing/util/PluginProperties.java b/util/src/main/java/org/killbill/billing/util/PluginProperties.java
index c7e4e4e..28cb032 100644
--- a/util/src/main/java/org/killbill/billing/util/PluginProperties.java
+++ b/util/src/main/java/org/killbill/billing/util/PluginProperties.java
@@ -38,9 +38,11 @@ public abstract class PluginProperties {
public static Map<String, Object> toMap(final Iterable<PluginProperty>... propertiesLists) {
final Map<String, Object> mergedProperties = new HashMap<String, Object>();
for (final Iterable<PluginProperty> propertiesList : propertiesLists) {
- for (final PluginProperty pluginProperty : propertiesList) {
- if (pluginProperty.getKey() != null) {
- mergedProperties.put(pluginProperty.getKey(), pluginProperty.getValue());
+ if(propertiesList != null) {
+ for (final PluginProperty pluginProperty : propertiesList) {
+ if (pluginProperty != null && pluginProperty.getKey() != null) {
+ mergedProperties.put(pluginProperty.getKey(), pluginProperty.getValue());
+ }
}
}
}
diff --git a/util/src/test/java/org/killbill/billing/util/TestPluginProperties.java b/util/src/test/java/org/killbill/billing/util/TestPluginProperties.java
index 0978e16..e316a1b 100644
--- a/util/src/test/java/org/killbill/billing/util/TestPluginProperties.java
+++ b/util/src/test/java/org/killbill/billing/util/TestPluginProperties.java
@@ -63,6 +63,14 @@ public class TestPluginProperties extends UtilTestSuiteNoDB {
}
@Test(groups = "fast")
+ public void testToMapHandlesNull() throws Exception {
+ final Map<String, Object> properties = PluginProperties.toMap(null, pluginProperties1, pluginProperties2, null);
+ Assert.assertEquals(properties.get("baz"), (Long) 12L);
+ Assert.assertEquals(properties.get("baz2"), "something else");
+ Assert.assertEquals(properties.get("foo"), "override");
+ }
+
+ @Test(groups = "fast")
public void testBuildPluginProperties() throws Exception {
Assert.assertEquals(pluginProperties1.size(), 2);
Assert.assertEquals(pluginProperties1.get(0).getKey(), "foo");