killbill-memoizeit

jaxrs: set sane default values in AccountJson For unspecified

3/1/2013 7:27:05 PM

Details

diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountJson.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountJson.java
index f57124f..e8a3c97 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountJson.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountJson.java
@@ -26,6 +26,7 @@ import com.ning.billing.catalog.api.Currency;
 
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.fasterxml.jackson.annotation.JsonProperty;
+import com.google.common.base.Objects;
 
 public class AccountJson extends AccountJsonSimple {
 
@@ -94,12 +95,12 @@ public class AccountJson extends AccountJsonSimple {
 
             @Override
             public Boolean isMigrated() {
-                return isMigrated;
+                return Objects.firstNonNull(isMigrated, false);
             }
 
             @Override
             public Boolean isNotifiedForInvoices() {
-                return isNotifiedForInvoices;
+                return Objects.firstNonNull(isNotifiedForInvoices, false);
             }
 
             @Override
@@ -119,7 +120,13 @@ public class AccountJson extends AccountJsonSimple {
 
             @Override
             public Integer getFirstNameLength() {
-                return length;
+                if (length == null && name == null) {
+                    return 0;
+                } else if (length == null) {
+                    return name.length();
+                } else {
+                    return length;
+                }
             }
 
             @Override