killbill-uncached

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 e8a3c97..f1be173 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
@@ -31,7 +31,7 @@ import com.google.common.base.Objects;
 public class AccountJson extends AccountJsonSimple {
 
     protected final String name;
-    protected final Integer length;
+    protected final Integer firstNameLength;
     protected final String email;
     protected final Integer billCycleDayLocal;
     protected final String currency;
@@ -52,7 +52,7 @@ public class AccountJson extends AccountJsonSimple {
     public AccountJson(final Account account) {
         super(account.getId().toString(), account.getExternalKey());
         this.name = account.getName();
-        this.length = account.getFirstNameLength();
+        this.firstNameLength = account.getFirstNameLength();
         this.email = account.getEmail();
         this.billCycleDayLocal = account.getBillCycleDayLocal();
         this.currency = account.getCurrency() != null ? account.getCurrency().toString() : null;
@@ -120,12 +120,12 @@ public class AccountJson extends AccountJsonSimple {
 
             @Override
             public Integer getFirstNameLength() {
-                if (length == null && name == null) {
+                if (firstNameLength == null && name == null) {
                     return 0;
-                } else if (length == null) {
+                } else if (firstNameLength == null) {
                     return name.length();
                 } else {
-                    return length;
+                    return firstNameLength;
                 }
             }
 
@@ -183,13 +183,13 @@ public class AccountJson extends AccountJsonSimple {
     @JsonCreator
     public AccountJson(@JsonProperty("accountId") final String accountId,
                        @JsonProperty("name") final String name,
-                       @JsonProperty("firstNameLength") final Integer length,
+                       @JsonProperty("firstNameLength") final Integer firstNameLength,
                        @JsonProperty("externalKey") final String externalKey,
                        @JsonProperty("email") final String email,
                        @JsonProperty("billCycleDayLocal") final Integer billCycleDayLocal,
                        @JsonProperty("currency") final String currency,
                        @JsonProperty("paymentMethodId") final String paymentMethodId,
-                       @JsonProperty("timezone") final String timeZone,
+                       @JsonProperty("timeZone") final String timeZone,
                        @JsonProperty("address1") final String address1,
                        @JsonProperty("address2") final String address2,
                        @JsonProperty("postalCode") final String postalCode,
@@ -203,7 +203,7 @@ public class AccountJson extends AccountJsonSimple {
                        @JsonProperty("isNotifiedForInvoices") final Boolean isNotifiedForInvoices) {
         super(accountId, externalKey);
         this.name = name;
-        this.length = length;
+        this.firstNameLength = firstNameLength;
         this.email = email;
         this.billCycleDayLocal = billCycleDayLocal;
         this.currency = currency;
@@ -226,8 +226,8 @@ public class AccountJson extends AccountJsonSimple {
         return name;
     }
 
-    public Integer getLength() {
-        return length;
+    public Integer getFirstNameLength() {
+        return firstNameLength;
     }
 
     public String getEmail() {
@@ -301,7 +301,7 @@ public class AccountJson extends AccountJsonSimple {
         final StringBuilder sb = new StringBuilder();
         sb.append("AccountJson");
         sb.append("{name='").append(name).append('\'');
-        sb.append(", length=").append(length);
+        sb.append(", firstNameLength=").append(firstNameLength);
         sb.append(", email='").append(email).append('\'');
         sb.append(", billCycleDayJson=").append(billCycleDayLocal);
         sb.append(", currency='").append(currency).append('\'');
@@ -375,7 +375,7 @@ public class AccountJson extends AccountJsonSimple {
         if (isNotifiedForInvoices != null ? !isNotifiedForInvoices.equals(that.isNotifiedForInvoices) : that.isNotifiedForInvoices != null) {
             return false;
         }
-        if (length != null ? !length.equals(that.length) : that.length != null) {
+        if (firstNameLength != null ? !firstNameLength.equals(that.firstNameLength) : that.firstNameLength != null) {
             return false;
         }
         if (locale != null ? !locale.equals(that.locale) : that.locale != null) {
@@ -407,7 +407,7 @@ public class AccountJson extends AccountJsonSimple {
     public int hashCode() {
         int result = super.hashCode();
         result = 31 * result + (name != null ? name.hashCode() : 0);
-        result = 31 * result + (length != null ? length.hashCode() : 0);
+        result = 31 * result + (firstNameLength != null ? firstNameLength.hashCode() : 0);
         result = 31 * result + (email != null ? email.hashCode() : 0);
         result = 31 * result + (billCycleDayLocal != null ? billCycleDayLocal.hashCode() : 0);
         result = 31 * result + (currency != null ? currency.hashCode() : 0);
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountJsonWithBalance.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountJsonWithBalance.java
index e25c86e..4c327cb 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountJsonWithBalance.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountJsonWithBalance.java
@@ -35,13 +35,13 @@ public class AccountJsonWithBalance extends AccountJson {
     @JsonCreator
     public AccountJsonWithBalance(@JsonProperty("accountId") final String accountId,
                                   @JsonProperty("name") final String name,
-                                  @JsonProperty("firstNameLength") final Integer length,
+                                  @JsonProperty("firstNameLength") final Integer firstNameLength,
                                   @JsonProperty("externalKey") final String externalKey,
                                   @JsonProperty("email") final String email,
                                   @JsonProperty("billCycleDayLocal") final Integer billCycleDayLocal,
                                   @JsonProperty("currency") final String currency,
                                   @JsonProperty("paymentMethodId") final String paymentMethodId,
-                                  @JsonProperty("timezone") final String timeZone,
+                                  @JsonProperty("timeZone") final String timeZone,
                                   @JsonProperty("address1") final String address1,
                                   @JsonProperty("address2") final String address2,
                                   @JsonProperty("postalCode") final String postalCode,
@@ -54,7 +54,7 @@ public class AccountJsonWithBalance extends AccountJson {
                                   @JsonProperty("isMigrated") final Boolean isMigrated,
                                   @JsonProperty("isNotifiedForInvoices") final Boolean isNotifiedForInvoices,
                                   @JsonProperty("accountBalance") final BigDecimal accountBalance) {
-        super(accountId, name, length, externalKey, email, billCycleDayLocal, currency, paymentMethodId, timeZone,
+        super(accountId, name, firstNameLength, externalKey, email, billCycleDayLocal, currency, paymentMethodId, timeZone,
               address1, address2, postalCode, company, city, state, country, locale, phone, isMigrated, isNotifiedForInvoices);
         this.accountBalance = accountBalance;
     }
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountJsonWithBalanceAndCBA.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountJsonWithBalanceAndCBA.java
index 4b00470..8fb4923 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountJsonWithBalanceAndCBA.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountJsonWithBalanceAndCBA.java
@@ -35,13 +35,13 @@ public class AccountJsonWithBalanceAndCBA extends AccountJsonWithBalance {
     @JsonCreator
     public AccountJsonWithBalanceAndCBA(@JsonProperty("accountId") final String accountId,
                                         @JsonProperty("name") final String name,
-                                        @JsonProperty("firstNameLength") final Integer length,
+                                        @JsonProperty("firstNameLength") final Integer firstNameLength,
                                         @JsonProperty("externalKey") final String externalKey,
                                         @JsonProperty("email") final String email,
                                         @JsonProperty("billCycleDayLocal") final Integer billCycleDayLocal,
                                         @JsonProperty("currency") final String currency,
                                         @JsonProperty("paymentMethodId") final String paymentMethodId,
-                                        @JsonProperty("timezone") final String timeZone,
+                                        @JsonProperty("timeZone") final String timeZone,
                                         @JsonProperty("address1") final String address1,
                                         @JsonProperty("address2") final String address2,
                                         @JsonProperty("postalCode") final String postalCode,
@@ -55,7 +55,7 @@ public class AccountJsonWithBalanceAndCBA extends AccountJsonWithBalance {
                                         @JsonProperty("isNotifiedForInvoices") final Boolean isNotifiedForInvoices,
                                         @JsonProperty("accountBalance") final BigDecimal accountBalance,
                                         @JsonProperty("accountCBA") final BigDecimal accountCBA) {
-        super(accountId, name, length, externalKey, email, billCycleDayLocal, currency, paymentMethodId, timeZone, address1,
+        super(accountId, name, firstNameLength, externalKey, email, billCycleDayLocal, currency, paymentMethodId, timeZone, address1,
               address2, postalCode, company, city, state, country, locale, phone, isMigrated, isNotifiedForInvoices, accountBalance);
         this.accountCBA = accountCBA;
     }
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BusinessInvoiceJson.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BusinessInvoiceJson.java
index 926a508..f730ec0 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BusinessInvoiceJson.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BusinessInvoiceJson.java
@@ -94,6 +94,7 @@ public class BusinessInvoiceJson extends JsonBase {
         }));
     }
 
+
     public static class BusinessInvoiceItemJson extends JsonBase {
 
         private final String itemId;
@@ -112,6 +113,7 @@ public class BusinessInvoiceJson extends JsonBase {
         private final String currency;
         private final String linkedItemId;
 
+        @JsonCreator
         private BusinessInvoiceItemJson(@JsonProperty("itemId") final String itemId,
                                         @JsonProperty("invoiceId") final String invoiceId,
                                         @JsonProperty("itemType") final String itemType,
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceItemJsonSimple.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceItemJsonSimple.java
index f433427..d879d96 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceItemJsonSimple.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceItemJsonSimple.java
@@ -26,6 +26,7 @@ import org.joda.time.LocalDate;
 import com.ning.billing.catalog.api.Currency;
 import com.ning.billing.invoice.api.InvoiceItem;
 
+import com.fasterxml.jackson.annotation.JsonCreator;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 public class InvoiceItemJsonSimple extends JsonBase {
@@ -44,6 +45,7 @@ public class InvoiceItemJsonSimple extends JsonBase {
     private final BigDecimal amount;
     private final Currency currency;
 
+    @JsonCreator
     public InvoiceItemJsonSimple(@JsonProperty("invoiceItemId") final String invoiceItemId,
                                  @JsonProperty("invoiceId") final String invoiceId,
                                  @JsonProperty("linkedInvoiceItemId") final String linkedInvoiceItemId,
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceJsonSimple.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceJsonSimple.java
index dce72c6..ca64d84 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceJsonSimple.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceJsonSimple.java
@@ -32,6 +32,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 public class InvoiceJsonSimple extends JsonBase {
 
     private final BigDecimal amount;
+    private final String currency;
     private final String invoiceId;
     private final LocalDate invoiceDate;
     private final LocalDate targetDate;
@@ -43,6 +44,7 @@ public class InvoiceJsonSimple extends JsonBase {
 
     @JsonCreator
     public InvoiceJsonSimple(@JsonProperty("amount") final BigDecimal amount,
+                             @JsonProperty("currency") final String currency,
                              @JsonProperty("creditAdj") final BigDecimal creditAdj,
                              @JsonProperty("refundAdj") final BigDecimal refundAdj,
                              @JsonProperty("invoiceId") @Nullable final String invoiceId,
@@ -54,6 +56,7 @@ public class InvoiceJsonSimple extends JsonBase {
                              @JsonProperty("auditLogs") @Nullable final List<AuditLogJson> auditLogs) {
         super(auditLogs);
         this.amount = amount;
+        this.currency = currency;
         this.creditAdj = creditAdj;
         this.refundAdj = refundAdj;
         this.invoiceId = invoiceId;
@@ -65,7 +68,7 @@ public class InvoiceJsonSimple extends JsonBase {
     }
 
     public InvoiceJsonSimple(final Invoice input, final List<AuditLog> auditLogs) {
-        this(input.getChargedAmount(), input.getCreditedAmount(), input.getRefundedAmount(),
+        this(input.getChargedAmount(), input.getCurrency().toString(), input.getCreditedAmount(), input.getRefundedAmount(),
              input.getId().toString(), input.getInvoiceDate(), input.getTargetDate(), String.valueOf(input.getInvoiceNumber()),
              input.getBalance(), input.getAccountId().toString(), toAuditLogJson(auditLogs));
     }
@@ -110,6 +113,10 @@ public class InvoiceJsonSimple extends JsonBase {
         return accountId;
     }
 
+    public String getCurrency() {
+        return currency;
+    }
+
     @Override
     public boolean equals(final Object o) {
         if (this == o) {
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceJsonWithBundleKeys.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceJsonWithBundleKeys.java
index 7483617..8ef8c2c 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceJsonWithBundleKeys.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceJsonWithBundleKeys.java
@@ -36,6 +36,7 @@ public class InvoiceJsonWithBundleKeys extends InvoiceJsonSimple {
 
     @JsonCreator
     public InvoiceJsonWithBundleKeys(@JsonProperty("amount") final BigDecimal amount,
+                                     @JsonProperty("currency") final String currency,
                                      @JsonProperty("creditAdj") final BigDecimal creditAdj,
                                      @JsonProperty("refundAdj") final BigDecimal refundAdj,
                                      @JsonProperty("invoiceId") final String invoiceId,
@@ -47,7 +48,7 @@ public class InvoiceJsonWithBundleKeys extends InvoiceJsonSimple {
                                      @JsonProperty("externalBundleKeys") final String bundleKeys,
                                      @JsonProperty("credits") final List<CreditJson> credits,
                                      @JsonProperty("auditLogs") @Nullable final List<AuditLogJson> auditLogs) {
-        super(amount, creditAdj, refundAdj, invoiceId, invoiceDate, targetDate, invoiceNumber, balance, accountId, auditLogs);
+        super(amount, currency, creditAdj, refundAdj, invoiceId, invoiceDate, targetDate, invoiceNumber, balance, accountId, auditLogs);
         this.bundleKeys = bundleKeys;
         this.credits = credits;
     }
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceJsonWithItems.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceJsonWithItems.java
index 0c343dd..52bae04 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceJsonWithItems.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/InvoiceJsonWithItems.java
@@ -37,6 +37,7 @@ public class InvoiceJsonWithItems extends InvoiceJsonSimple {
 
     @JsonCreator
     public InvoiceJsonWithItems(@JsonProperty("amount") final BigDecimal amount,
+                                @JsonProperty("currency") final String currency,
                                 @JsonProperty("creditAdj") final BigDecimal creditAdj,
                                 @JsonProperty("refundAdj") final BigDecimal refundAdj,
                                 @JsonProperty("invoiceId") final String invoiceId,
@@ -47,7 +48,7 @@ public class InvoiceJsonWithItems extends InvoiceJsonSimple {
                                 @JsonProperty("accountId") final String accountId,
                                 @JsonProperty("items") final List<InvoiceItemJsonSimple> items,
                                 @JsonProperty("auditLogs") @Nullable final List<AuditLogJson> auditLogs) {
-        super(amount, creditAdj, refundAdj, invoiceId, invoiceDate, targetDate, invoiceNumber, balance, accountId, auditLogs);
+        super(amount, currency, creditAdj, refundAdj, invoiceId, invoiceDate, targetDate, invoiceNumber, balance, accountId, auditLogs);
         this.items = new ArrayList<InvoiceItemJsonSimple>(items);
     }
 
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/CatalogResource.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/CatalogResource.java
index 40c76de..2a99340 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/CatalogResource.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/CatalogResource.java
@@ -32,7 +32,7 @@ import com.ning.billing.catalog.api.CatalogService;
 import com.ning.billing.catalog.api.Listing;
 import com.ning.billing.catalog.api.StaticCatalog;
 import com.ning.billing.jaxrs.json.CatalogJsonSimple;
-import com.ning.billing.jaxrs.json.PlanDetailJason;
+import com.ning.billing.jaxrs.json.PlanDetailJson;
 import com.ning.billing.jaxrs.util.Context;
 import com.ning.billing.jaxrs.util.JaxrsUriBuilder;
 import com.ning.billing.util.api.AuditUserApi;
@@ -98,9 +98,9 @@ public class CatalogResource extends JaxRsResourceBase {
                                        @javax.ws.rs.core.Context final HttpServletRequest request) throws CatalogApiException {
         final StaticCatalog catalog = catalogService.getCurrentCatalog();
         final List<Listing> listings = catalog.getAvailableAddonListings(baseProductName);
-        final List<PlanDetailJason> details = new ArrayList<PlanDetailJason>();
+        final List<PlanDetailJson> details = new ArrayList<PlanDetailJson>();
         for (final Listing listing : listings) {
-            details.add(new PlanDetailJason(listing));
+            details.add(new PlanDetailJson(listing));
         }
         return Response.status(Status.OK).entity(details).build();
     }
@@ -111,9 +111,9 @@ public class CatalogResource extends JaxRsResourceBase {
     public Response getAvailableBasePlans(@javax.ws.rs.core.Context final HttpServletRequest request) throws CatalogApiException {
         final StaticCatalog catalog = catalogService.getCurrentCatalog();
         final List<Listing> listings = catalog.getAvailableBasePlanListings();
-        final List<PlanDetailJason> details = new ArrayList<PlanDetailJason>();
+        final List<PlanDetailJson> details = new ArrayList<PlanDetailJson>();
         for (final Listing listing : listings) {
-            details.add(new PlanDetailJason(listing));
+            details.add(new PlanDetailJson(listing));
         }
         return Response.status(Status.OK).entity(details).build();
     }
diff --git a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestAccountJson.java b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestAccountJson.java
index 4c8bf55..81f3c1d 100644
--- a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestAccountJson.java
+++ b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestAccountJson.java
@@ -58,7 +58,7 @@ public class TestAccountJson extends JaxrsTestSuiteNoDB {
                                                         country, locale, phone, isMigrated, isNotifiedForInvoice);
         Assert.assertEquals(accountJson.getAccountId(), accountId);
         Assert.assertEquals(accountJson.getName(), name);
-        Assert.assertEquals(accountJson.getLength(), length);
+        Assert.assertEquals(accountJson.getFirstNameLength(), length);
         Assert.assertEquals(accountJson.getExternalKey(), externalKey);
         Assert.assertEquals(accountJson.getEmail(), email);
         Assert.assertEquals(accountJson.getBillCycleDayLocal(), billCycleDayLocal);
diff --git a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleTimelineJson.java b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleTimelineJson.java
index 28199e1..e20a1f9 100644
--- a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleTimelineJson.java
+++ b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleTimelineJson.java
@@ -27,6 +27,7 @@ import org.testng.Assert;
 import org.testng.annotations.Test;
 
 import com.ning.billing.catalog.api.BillingPeriod;
+import com.ning.billing.catalog.api.Currency;
 import com.ning.billing.catalog.api.PhaseType;
 import com.ning.billing.catalog.api.PlanPhaseSpecifier;
 import com.ning.billing.catalog.api.ProductCategory;
@@ -95,7 +96,7 @@ public class TestBundleTimelineJson extends JaxrsTestSuiteNoDB {
         final String invoiceNumber = UUID.randomUUID().toString();
         final BigDecimal balance = BigDecimal.ZERO;
 
-        return new InvoiceJsonSimple(invoiceAmount, creditAdj, refundAdj, invoiceId.toString(), invoiceDate,
+        return new InvoiceJsonSimple(invoiceAmount, Currency.USD.toString(), creditAdj, refundAdj, invoiceId.toString(), invoiceDate,
                                      targetDate, invoiceNumber, balance, accountId.toString(), null);
     }
 
diff --git a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestInvoiceJsonSimple.java b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestInvoiceJsonSimple.java
index 0d98220..5a5906e 100644
--- a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestInvoiceJsonSimple.java
+++ b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestInvoiceJsonSimple.java
@@ -25,6 +25,7 @@ import org.mockito.Mockito;
 import org.testng.Assert;
 import org.testng.annotations.Test;
 
+import com.ning.billing.catalog.api.Currency;
 import com.ning.billing.invoice.api.Invoice;
 import com.ning.billing.jaxrs.JaxrsTestSuiteNoDB;
 
@@ -44,7 +45,7 @@ public class TestInvoiceJsonSimple extends JaxrsTestSuiteNoDB {
         final BigDecimal balance = BigDecimal.ZERO;
         final String accountId = UUID.randomUUID().toString();
         final List<AuditLogJson> auditLogs = createAuditLogsJson(clock.getUTCNow());
-        final InvoiceJsonSimple invoiceJsonSimple = new InvoiceJsonSimple(amount, creditAdj, refundAdj, invoiceId, invoiceDate,
+        final InvoiceJsonSimple invoiceJsonSimple = new InvoiceJsonSimple(amount, Currency.USD.toString(), creditAdj, refundAdj, invoiceId, invoiceDate,
                                                                           targetDate, invoiceNumber, balance, accountId, auditLogs);
         Assert.assertEquals(invoiceJsonSimple.getAmount(), amount);
         Assert.assertEquals(invoiceJsonSimple.getCreditAdj(), creditAdj);
@@ -66,6 +67,7 @@ public class TestInvoiceJsonSimple extends JaxrsTestSuiteNoDB {
     public void testFromInvoice() throws Exception {
         final Invoice invoice = Mockito.mock(Invoice.class);
         Mockito.when(invoice.getChargedAmount()).thenReturn(BigDecimal.TEN);
+        Mockito.when(invoice.getCurrency()).thenReturn(Currency.MXN);
         Mockito.when(invoice.getCreditedAmount()).thenReturn(BigDecimal.ONE);
         Mockito.when(invoice.getRefundedAmount()).thenReturn(BigDecimal.ONE);
         Mockito.when(invoice.getId()).thenReturn(UUID.randomUUID());
diff --git a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestInvoiceJsonWithBundleKeys.java b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestInvoiceJsonWithBundleKeys.java
index e071f7e..9aa5e36 100644
--- a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestInvoiceJsonWithBundleKeys.java
+++ b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestInvoiceJsonWithBundleKeys.java
@@ -26,6 +26,7 @@ import org.mockito.Mockito;
 import org.testng.Assert;
 import org.testng.annotations.Test;
 
+import com.ning.billing.catalog.api.Currency;
 import com.ning.billing.invoice.api.Invoice;
 import com.ning.billing.jaxrs.JaxrsTestSuiteNoDB;
 
@@ -50,7 +51,7 @@ public class TestInvoiceJsonWithBundleKeys extends JaxrsTestSuiteNoDB {
         final CreditJson creditJson = createCreditJson();
         final List<CreditJson> credits = ImmutableList.<CreditJson>of(creditJson);
         final List<AuditLogJson> auditLogs = createAuditLogsJson(clock.getUTCNow());
-        final InvoiceJsonWithBundleKeys invoiceJsonSimple = new InvoiceJsonWithBundleKeys(amount, creditAdj, refundAdj, invoiceId, invoiceDate,
+        final InvoiceJsonWithBundleKeys invoiceJsonSimple = new InvoiceJsonWithBundleKeys(amount, Currency.USD.toString(), creditAdj, refundAdj, invoiceId, invoiceDate,
                                                                                           targetDate, invoiceNumber, balance, accountId, bundleKeys,
                                                                                           credits, auditLogs);
         Assert.assertEquals(invoiceJsonSimple.getAmount(), amount);
@@ -83,6 +84,8 @@ public class TestInvoiceJsonWithBundleKeys extends JaxrsTestSuiteNoDB {
         Mockito.when(invoice.getInvoiceNumber()).thenReturn(Integer.MAX_VALUE);
         Mockito.when(invoice.getBalance()).thenReturn(BigDecimal.ZERO);
         Mockito.when(invoice.getAccountId()).thenReturn(UUID.randomUUID());
+        Mockito.when(invoice.getCurrency()).thenReturn(Currency.MXN);
+
 
         final String bundleKeys = UUID.randomUUID().toString();
         final List<CreditJson> credits = ImmutableList.<CreditJson>of(createCreditJson());
diff --git a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestInvoiceJsonWithItems.java b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestInvoiceJsonWithItems.java
index 1bfeb6d..ec9453b 100644
--- a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestInvoiceJsonWithItems.java
+++ b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestInvoiceJsonWithItems.java
@@ -49,7 +49,7 @@ public class TestInvoiceJsonWithItems extends JaxrsTestSuiteNoDB {
         final String accountId = UUID.randomUUID().toString();
         final InvoiceItemJsonSimple invoiceItemJsonSimple = createInvoiceItemJson();
         final List<AuditLogJson> auditLogs = createAuditLogsJson(clock.getUTCNow());
-        final InvoiceJsonWithItems invoiceJsonWithItems = new InvoiceJsonWithItems(amount, creditAdj, refundAdj, invoiceId, invoiceDate,
+        final InvoiceJsonWithItems invoiceJsonWithItems = new InvoiceJsonWithItems(amount, Currency.USD.toString(), creditAdj, refundAdj, invoiceId, invoiceDate,
                                                                                    targetDate, invoiceNumber, balance, accountId,
                                                                                    ImmutableList.<InvoiceItemJsonSimple>of(invoiceItemJsonSimple), auditLogs);
         Assert.assertEquals(invoiceJsonWithItems.getAmount(), amount);
@@ -80,6 +80,7 @@ public class TestInvoiceJsonWithItems extends JaxrsTestSuiteNoDB {
         Mockito.when(invoice.getInvoiceNumber()).thenReturn(Integer.MAX_VALUE);
         Mockito.when(invoice.getBalance()).thenReturn(BigDecimal.ZERO);
         Mockito.when(invoice.getAccountId()).thenReturn(UUID.randomUUID());
+        Mockito.when(invoice.getCurrency()).thenReturn(Currency.MXN);
         final InvoiceItem invoiceItem = createInvoiceItem();
         Mockito.when(invoice.getInvoiceItems()).thenReturn(ImmutableList.<InvoiceItem>of(invoiceItem));
 
diff --git a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestPlanDetailJason.java b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestPlanDetailJason.java
index e4e5581..003b541 100644
--- a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestPlanDetailJason.java
+++ b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestPlanDetailJason.java
@@ -39,7 +39,7 @@ public class TestPlanDetailJason extends JaxrsTestSuiteNoDB {
         final String planName = UUID.randomUUID().toString();
         final BillingPeriod billingPeriod = BillingPeriod.ANNUAL;
         final String priceListName = UUID.randomUUID().toString();
-        final PlanDetailJason planDetailJason = new PlanDetailJason(productName, planName, billingPeriod, priceListName, null);
+        final PlanDetailJson planDetailJason = new PlanDetailJson(productName, planName, billingPeriod, priceListName, null);
         Assert.assertEquals(planDetailJason.getProductName(), productName);
         Assert.assertEquals(planDetailJason.getPlanName(), planName);
         Assert.assertEquals(planDetailJason.getBillingPeriod(), billingPeriod);
@@ -53,7 +53,7 @@ public class TestPlanDetailJason extends JaxrsTestSuiteNoDB {
                                     "\"priceListName\":\"" + planDetailJason.getPriceListName() + "\"," +
                                     "\"finalPhasePrice\":null}");
 
-        final PlanDetailJason fromJson = mapper.readValue(asJson, PlanDetailJason.class);
+        final PlanDetailJson fromJson = mapper.readValue(asJson, PlanDetailJson.class);
         Assert.assertEquals(fromJson, planDetailJason);
     }
 
@@ -79,7 +79,7 @@ public class TestPlanDetailJason extends JaxrsTestSuiteNoDB {
         Mockito.when(listing.getPlan()).thenReturn(plan);
         Mockito.when(listing.getPriceList()).thenReturn(priceList);
 
-        final PlanDetailJason planDetailJason = new PlanDetailJason(listing);
+        final PlanDetailJson planDetailJason = new PlanDetailJson(listing);
         Assert.assertEquals(planDetailJason.getProductName(), plan.getProduct().getName());
         Assert.assertEquals(planDetailJason.getPlanName(), plan.getName());
         Assert.assertEquals(planDetailJason.getBillingPeriod(), plan.getBillingPeriod());