Details
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountTimelineJson.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountTimelineJson.java
index 3c52637..0807c09 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountTimelineJson.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountTimelineJson.java
@@ -49,13 +49,13 @@ import com.google.common.collect.Multimap;
public class AccountTimelineJson {
private final AccountJsonSimple account;
- private final List<BundleJsonWithSubscriptions> bundles;
+ private final List<BundleJson> bundles;
private final List<InvoiceJsonWithBundleKeys> invoices;
private final List<PaymentJsonWithBundleKeys> payments;
@JsonCreator
public AccountTimelineJson(@JsonProperty("account") final AccountJsonSimple account,
- @JsonProperty("bundles") final List<BundleJsonWithSubscriptions> bundles,
+ @JsonProperty("bundles") final List<BundleJson> bundles,
@JsonProperty("invoices") final List<InvoiceJsonWithBundleKeys> invoices,
@JsonProperty("payments") final List<PaymentJsonWithBundleKeys> payments) {
this.account = account;
@@ -119,10 +119,10 @@ public class AccountTimelineJson {
final Map<UUID, List<AuditLog>> chargebacksAuditLogs, final Map<UUID, List<AuditLog>> bundlesAuditLogs,
final Map<UUID, List<AuditLog>> subscriptionsAuditLogs, final Map<UUID, List<AuditLog>> subscriptionEventsAuditLogs) {
this.account = new AccountJsonSimple(account.getId().toString(), account.getExternalKey());
- this.bundles = new LinkedList<BundleJsonWithSubscriptions>();
+ this.bundles = new LinkedList<BundleJson>();
for (final SubscriptionBundle bundle : bundles) {
final List<AuditLog> bundleAuditLogs = bundlesAuditLogs.get(bundle.getId());
- final BundleJsonWithSubscriptions jsonWithSubscriptions = new BundleJsonWithSubscriptions(bundle, bundleAuditLogs,
+ final BundleJson jsonWithSubscriptions = new BundleJson(bundle, bundleAuditLogs,
subscriptionsAuditLogs, subscriptionEventsAuditLogs);
this.bundles.add(jsonWithSubscriptions);
}
@@ -180,7 +180,7 @@ public class AccountTimelineJson {
return account;
}
- public List<BundleJsonWithSubscriptions> getBundles() {
+ public List<BundleJson> getBundles() {
return bundles;
}
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BundleTimelineJson.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BundleTimelineJson.java
index 2aeb8de..d7b5037 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BundleTimelineJson.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BundleTimelineJson.java
@@ -25,7 +25,7 @@ public class BundleTimelineJson {
private final String viewId;
- private final BundleJsonWithSubscriptions bundle;
+ private final BundleJson bundle;
private final List<PaymentJsonSimple> payments;
@@ -36,7 +36,7 @@ public class BundleTimelineJson {
@JsonCreator
public BundleTimelineJson(@JsonProperty("viewId") final String viewId,
- @JsonProperty("bundle") final BundleJsonWithSubscriptions bundle,
+ @JsonProperty("bundle") final BundleJson bundle,
@JsonProperty("payments") final List<PaymentJsonSimple> payments,
@JsonProperty("invoices") final List<InvoiceJsonSimple> invoices,
@JsonProperty("reasonForChange") final String reason) {
@@ -51,7 +51,7 @@ public class BundleTimelineJson {
return viewId;
}
- public BundleJsonWithSubscriptions getBundle() {
+ public BundleJson getBundle() {
return bundle;
}
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/AccountResource.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/AccountResource.java
index b8c93bd..618886b 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/AccountResource.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/AccountResource.java
@@ -59,7 +59,7 @@ import com.ning.billing.jaxrs.json.AccountJson;
import com.ning.billing.jaxrs.json.AccountJsonWithBalance;
import com.ning.billing.jaxrs.json.AccountJsonWithBalanceAndCBA;
import com.ning.billing.jaxrs.json.AccountTimelineJson;
-import com.ning.billing.jaxrs.json.BundleJsonNoSubscriptions;
+import com.ning.billing.jaxrs.json.BundleJson;
import com.ning.billing.jaxrs.json.ChargebackCollectionJson;
import com.ning.billing.jaxrs.json.ChargebackJson;
import com.ning.billing.jaxrs.json.CustomFieldJson;
@@ -181,14 +181,14 @@ public class AccountResource extends JaxRsResourceBase {
if (externalKey != null) {
final SubscriptionBundle bundle = subscriptionApi.getSubscriptionBundleForAccountIdAndExternalKey(uuid, externalKey, tenantContext);
- final BundleJsonNoSubscriptions json = new BundleJsonNoSubscriptions(bundle);
+ final BundleJson json = new BundleJson(bundle, null, null, null);
return Response.status(Status.OK).entity(json).build();
} else {
final List<SubscriptionBundle> bundles = subscriptionApi.getSubscriptionBundlesForAccountId(uuid, tenantContext);
- final Collection<BundleJsonNoSubscriptions> result = Collections2.transform(bundles, new Function<SubscriptionBundle, BundleJsonNoSubscriptions>() {
+ final Collection<BundleJson> result = Collections2.transform(bundles, new Function<SubscriptionBundle, BundleJson>() {
@Override
- public BundleJsonNoSubscriptions apply(final SubscriptionBundle input) {
- return new BundleJsonNoSubscriptions(input);
+ public BundleJson apply(final SubscriptionBundle input) {
+ return new BundleJson(input, null, null, null);
}
});
return Response.status(Status.OK).entity(result).build();
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/BundleResource.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/BundleResource.java
index a2a2b23..1312707 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/BundleResource.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/BundleResource.java
@@ -37,7 +37,6 @@ import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.Status;
import javax.ws.rs.core.UriInfo;
-import org.joda.time.DateTime;
import org.joda.time.LocalDate;
import com.ning.billing.ObjectType;
@@ -50,9 +49,9 @@ import com.ning.billing.entitlement.api.Subscription;
import com.ning.billing.entitlement.api.SubscriptionApi;
import com.ning.billing.entitlement.api.SubscriptionApiException;
import com.ning.billing.entitlement.api.SubscriptionBundle;
-import com.ning.billing.jaxrs.json.BundleJsonNoSubscriptions;
+import com.ning.billing.jaxrs.json.BundleJson;
import com.ning.billing.jaxrs.json.CustomFieldJson;
-import com.ning.billing.jaxrs.json.SubscriptionJsonNoEvents;
+import com.ning.billing.jaxrs.json.SubscriptionJson;
import com.ning.billing.jaxrs.util.Context;
import com.ning.billing.jaxrs.util.JaxrsUriBuilder;
import com.ning.billing.util.api.AuditUserApi;
@@ -100,7 +99,7 @@ public class BundleResource extends JaxRsResourceBase {
final UUID id = UUID.fromString(bundleId);
final SubscriptionBundle bundle = subscriptionApi.getSubscriptionBundle(id, context.createContext(request));
- final BundleJsonNoSubscriptions json = new BundleJsonNoSubscriptions(bundle);
+ final BundleJson json = new BundleJson(bundle, null, null, null);
return Response.status(Status.OK).entity(json).build();
}
@@ -108,9 +107,9 @@ public class BundleResource extends JaxRsResourceBase {
@GET
@Produces(APPLICATION_JSON)
public Response getBundleByKey(@QueryParam(QUERY_EXTERNAL_KEY) final String externalKey,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionApiException {
final SubscriptionBundle bundle = subscriptionApi.getActiveSubscriptionBundleForExternalKey(externalKey, context.createContext(request));
- final BundleJsonNoSubscriptions json = new BundleJsonNoSubscriptions(bundle);
+ final BundleJson json = new BundleJson(bundle, null, null, null);
return Response.status(Status.OK).entity(json).build();
}
@@ -123,11 +122,11 @@ public class BundleResource extends JaxRsResourceBase {
final UUID id = UUID.fromString(bundleId);
final SubscriptionBundle bundle = subscriptionApi.getSubscriptionBundle(id, context.createContext(request));
- final Collection<SubscriptionJsonNoEvents> result = Collections2.transform(bundle.getSubscriptions(), new Function<Subscription, SubscriptionJsonNoEvents>() {
+ final Collection<SubscriptionJson> result = Collections2.transform(bundle.getSubscriptions(), new Function<Subscription, SubscriptionJson>() {
@Nullable
@Override
- public SubscriptionJsonNoEvents apply(@Nullable final Subscription input) {
- return new SubscriptionJsonNoEvents(input, null);
+ public SubscriptionJson apply(@Nullable final Subscription input) {
+ return new SubscriptionJson(input, null, null, null);
}
});
return Response.status(Status.OK).entity(result).build();
@@ -183,11 +182,11 @@ public class BundleResource extends JaxRsResourceBase {
@Path("/{bundleId:" + UUID_PATTERN + "}")
@Consumes(APPLICATION_JSON)
@Produces(APPLICATION_JSON)
- public Response transferBundle(@PathParam(ID_PARAM_NAME) final String id,
+ public Response transferBundle(final BundleJson json,
+ @PathParam(ID_PARAM_NAME) final String id,
@QueryParam(QUERY_REQUESTED_DT) final String requestedDate,
@QueryParam(QUERY_BUNDLE_TRANSFER_ADDON) @DefaultValue("true") final Boolean transferAddOn,
@QueryParam(QUERY_BUNDLE_TRANSFER_CANCEL_IMM) @DefaultValue("false") final Boolean cancelImmediatley,
- final BundleJsonNoSubscriptions json,
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
@@ -200,7 +199,7 @@ public class BundleResource extends JaxRsResourceBase {
final SubscriptionBundle bundle = subscriptionApi.getSubscriptionBundle(bundleId, callContext);
final LocalDate inputLocalDate = toLocalDate(bundle.getAccountId(), requestedDate, callContext);
- final UUID newBundleId = entitlementApi.transferEntitlements(bundle.getAccountId(), UUID.fromString(json.getAccountId()), bundle.getExternalKey(), inputLocalDate, callContext);
+ final UUID newBundleId = entitlementApi.transferEntitlements(bundle.getAccountId(), UUID.fromString(json.getAccountId()), bundle.getExternalKey(), inputLocalDate, callContext);
return uriBuilder.buildResponse(BundleResource.class, "getBundle", newBundleId, uriInfo.getBaseUri().toString());
}
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/EntitlementResource.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/EntitlementResource.java
index 5f0c55d..f1f6540 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/EntitlementResource.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/EntitlementResource.java
@@ -54,8 +54,11 @@ import com.ning.billing.entitlement.api.Entitlement.EntitlementActionPolicy;
import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.entitlement.api.EntitlementApi;
import com.ning.billing.entitlement.api.EntitlementApiException;
+import com.ning.billing.entitlement.api.Subscription;
+import com.ning.billing.entitlement.api.SubscriptionApi;
+import com.ning.billing.entitlement.api.SubscriptionApiException;
import com.ning.billing.jaxrs.json.CustomFieldJson;
-import com.ning.billing.jaxrs.json.EntitlementJsonNoEvents;
+import com.ning.billing.jaxrs.json.SubscriptionJson;
import com.ning.billing.jaxrs.util.Context;
import com.ning.billing.jaxrs.util.JaxrsUriBuilder;
import com.ning.billing.jaxrs.util.KillbillEventHandler;
@@ -85,6 +88,7 @@ public class EntitlementResource extends JaxRsResourceBase {
private final KillbillEventHandler killbillHandler;
private final EntitlementApi entitlementApi;
+ private final SubscriptionApi subscriptionApi;
@Inject
public EntitlementResource(final KillbillEventHandler killbillHandler,
@@ -93,36 +97,38 @@ public class EntitlementResource extends JaxRsResourceBase {
final CustomFieldUserApi customFieldUserApi,
final AuditUserApi auditUserApi,
final EntitlementApi entitlementApi,
+ final SubscriptionApi subscriptionApi,
final AccountUserApi accountUserApi,
final Clock clock,
final Context context) {
super(uriBuilder, tagUserApi, customFieldUserApi, auditUserApi, accountUserApi, clock, context);
this.killbillHandler = killbillHandler;
this.entitlementApi = entitlementApi;
+ this.subscriptionApi = subscriptionApi;
}
@GET
@Path("/{entitlementId:" + UUID_PATTERN + "}")
@Produces(APPLICATION_JSON)
public Response getEntitlement(@PathParam("entitlementId") final String entitlementId,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionApiException {
final UUID uuid = UUID.fromString(entitlementId);
- final Entitlement entitlement = entitlementApi.getEntitlementForId(uuid, context.createContext(request));
- final EntitlementJsonNoEvents json = new EntitlementJsonNoEvents(entitlement, null);
+ final Subscription subscription = subscriptionApi.getSubscriptionForEntitlementId(uuid, context.createContext(request));
+ final SubscriptionJson json = new SubscriptionJson(subscription, null, null, null);
return Response.status(Status.OK).entity(json).build();
}
@POST
@Consumes(APPLICATION_JSON)
@Produces(APPLICATION_JSON)
- public Response createEntitlement(final EntitlementJsonNoEvents entitlement,
+ public Response createEntitlement(final SubscriptionJson entitlement,
@QueryParam(QUERY_REQUESTED_DT) final String requestedDate,
@QueryParam(QUERY_CALL_COMPLETION) @DefaultValue("false") final Boolean callCompletion,
@QueryParam(QUERY_CALL_TIMEOUT) @DefaultValue("3") final long timeoutSec,
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementApiException, AccountApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementApiException, AccountApiException, SubscriptionApiException {
final CallContext callContext = context.createContext(createdBy, reason, comment, request);
final EntitlementCallCompletionCallback<Entitlement> callback = new EntitlementCallCompletionCallback<Entitlement>() {
@Override
@@ -160,7 +166,7 @@ public class EntitlementResource extends JaxRsResourceBase {
@Produces(APPLICATION_JSON)
@Consumes(APPLICATION_JSON)
@Path("/{entitlementId:" + UUID_PATTERN + "}")
- public Response changeEntitlementPlan(final EntitlementJsonNoEvents entitlement,
+ public Response changeEntitlementPlan(final SubscriptionJson entitlement,
@PathParam("entitlementId") final String entitlementId,
@QueryParam(QUERY_REQUESTED_DT) final String requestedDate,
@QueryParam(QUERY_CALL_COMPLETION) @DefaultValue("false") final Boolean callCompletion,
@@ -169,7 +175,7 @@ public class EntitlementResource extends JaxRsResourceBase {
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementApiException, AccountApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementApiException, AccountApiException, SubscriptionApiException {
final CallContext callContext = context.createContext(createdBy, reason, comment, request);
final EntitlementCallCompletionCallback<Response> callback = new EntitlementCallCompletionCallback<Response>() {
@@ -204,7 +210,7 @@ public class EntitlementResource extends JaxRsResourceBase {
}
@Override
- public Response doResponseOk(final Response operationResponse) throws EntitlementApiException {
+ public Response doResponseOk(final Response operationResponse) throws SubscriptionApiException {
if (operationResponse.getStatus() != Status.OK.getStatusCode()) {
return operationResponse;
}
@@ -248,7 +254,7 @@ public class EntitlementResource extends JaxRsResourceBase {
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
@javax.ws.rs.core.Context final UriInfo uriInfo,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementApiException, AccountApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementApiException, AccountApiException, SubscriptionApiException {
final CallContext callContext = context.createContext(createdBy, reason, comment, request);
final EntitlementCallCompletionCallback<Response> callback = new EntitlementCallCompletionCallback<Response>() {
@@ -344,7 +350,7 @@ public class EntitlementResource extends JaxRsResourceBase {
public boolean isImmOperation();
- public Response doResponseOk(final T operationResponse) throws EntitlementApiException;
+ public Response doResponseOk(final T operationResponse) throws SubscriptionApiException;
}
private class EntitlementCallCompletion<T> {
@@ -352,7 +358,7 @@ public class EntitlementResource extends JaxRsResourceBase {
public Response withSynchronization(final EntitlementCallCompletionCallback<T> callback,
final long timeoutSec,
final boolean callCompletion,
- final CallContext callContext) throws EntitlementApiException, AccountApiException {
+ final CallContext callContext) throws SubscriptionApiException, AccountApiException, EntitlementApiException {
final CompletionUserRequestEntitlement waiter = callCompletion ? new CompletionUserRequestEntitlement(callContext.getUserToken()) : null;
try {
if (waiter != null) {
diff --git a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleJsonWithSubscriptions.java b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleJsonWithSubscriptions.java
index 8ba14cf..016a6da 100644
--- a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleJsonWithSubscriptions.java
+++ b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleJsonWithSubscriptions.java
@@ -24,7 +24,7 @@ import org.testng.Assert;
import org.testng.annotations.Test;
import com.ning.billing.catalog.api.BillingPeriod;
-import com.ning.billing.jaxrs.json.SubscriptionJsonWithEvents.SubscriptionReadEventJson;
+import com.ning.billing.jaxrs.json.SubscriptionJson.SubscriptionReadEventJson;
import com.ning.billing.jaxrs.JaxrsTestSuiteNoDB;
import com.google.common.collect.ImmutableList;
@@ -42,16 +42,19 @@ public class TestBundleJsonWithSubscriptions extends JaxrsTestSuiteNoDB {
final List<AuditLogJson> auditLogs = createAuditLogsJson(clock.getUTCNow());
SubscriptionReadEventJson event = new SubscriptionReadEventJson(someUUID, BillingPeriod.NO_BILLING_PERIOD.toString(), new LocalDate(), new LocalDate(), "product", "priceList", "eventType", "phase", null);
- final SubscriptionJsonWithEvents subscription = new SubscriptionJsonWithEvents(someUUID, someUUID, someUUID, externalKey, ImmutableList.<SubscriptionReadEventJson>of(event), null, null, auditLogs);
-
- final BundleJsonWithSubscriptions bundleJsonWithSubscriptions = new BundleJsonWithSubscriptions(bundleId.toString(), externalKey, ImmutableList.<SubscriptionJsonWithEvents>of(subscription), auditLogs);
- Assert.assertEquals(bundleJsonWithSubscriptions.getBundleId(), bundleId.toString());
- Assert.assertEquals(bundleJsonWithSubscriptions.getExternalKey(), externalKey);
- Assert.assertEquals(bundleJsonWithSubscriptions.getSubscriptions().size(), 1);
- Assert.assertEquals(bundleJsonWithSubscriptions.getAuditLogs(), auditLogs);
-
- final String asJson = mapper.writeValueAsString(bundleJsonWithSubscriptions);
- final BundleJsonWithSubscriptions fromJson = mapper.readValue(asJson, BundleJsonWithSubscriptions.class);
- Assert.assertEquals(fromJson, bundleJsonWithSubscriptions);
+ final SubscriptionJson subscription = new SubscriptionJson(someUUID, someUUID, someUUID, externalKey,
+ new LocalDate(), someUUID, someUUID, someUUID, someUUID, new LocalDate(), new LocalDate(),
+ new LocalDate(), new LocalDate(),
+ ImmutableList.<SubscriptionReadEventJson>of(event), null, null, auditLogs);
+
+ final BundleJson bundleJson = new BundleJson(someUUID, bundleId.toString(), externalKey, ImmutableList.<SubscriptionJson>of(subscription), auditLogs);
+ Assert.assertEquals(bundleJson.getBundleId(), bundleId.toString());
+ Assert.assertEquals(bundleJson.getExternalKey(), externalKey);
+ Assert.assertEquals(bundleJson.getSubscriptions().size(), 1);
+ Assert.assertEquals(bundleJson.getAuditLogs(), auditLogs);
+
+ final String asJson = mapper.writeValueAsString(bundleJson);
+ final BundleJson fromJson = mapper.readValue(asJson, BundleJson.class);
+ Assert.assertEquals(fromJson, bundleJson);
}
}
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 527e5b5..5372103 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
@@ -17,7 +17,6 @@
package com.ning.billing.jaxrs.json;
import java.math.BigDecimal;
-import java.util.List;
import java.util.UUID;
import org.joda.time.DateTime;
@@ -25,17 +24,10 @@ import org.joda.time.LocalDate;
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;
-import com.ning.billing.entitlement.api.SubscriptionEvent;
import com.ning.billing.jaxrs.JaxrsTestSuiteNoDB;
-import com.ning.billing.util.audit.AuditLog;
import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableMap;
public class TestBundleTimelineJson extends JaxrsTestSuiteNoDB {
@@ -44,13 +36,13 @@ public class TestBundleTimelineJson extends JaxrsTestSuiteNoDB {
final String viewId = UUID.randomUUID().toString();
final String reason = UUID.randomUUID().toString();
- final BundleJsonWithSubscriptions bundleJsonWithSubscriptions = createBundleWithSubscriptions();
+ final BundleJson bundleJson = createBundleWithSubscriptions();
final InvoiceJsonSimple invoiceJsonSimple = createInvoice();
final PaymentJsonSimple paymentJsonSimple = createPayment(UUID.fromString(invoiceJsonSimple.getAccountId()),
UUID.fromString(invoiceJsonSimple.getInvoiceId()));
final BundleTimelineJson bundleTimelineJson = new BundleTimelineJson(viewId,
- bundleJsonWithSubscriptions,
+ bundleJson,
ImmutableList.<PaymentJsonSimple>of(paymentJsonSimple),
ImmutableList.<InvoiceJsonSimple>of(invoiceJsonSimple),
reason);
@@ -60,20 +52,18 @@ public class TestBundleTimelineJson extends JaxrsTestSuiteNoDB {
Assert.assertEquals(fromJson, bundleTimelineJson);
}
- private BundleJsonWithSubscriptions createBundleWithSubscriptions() {
- final DateTime effectiveDate = clock.getUTCNow();
- final UUID eventId = UUID.randomUUID();
- final PlanPhaseSpecifier planPhaseSpecifier = new PlanPhaseSpecifier(UUID.randomUUID().toString(), ProductCategory.BASE,
- BillingPeriod.NO_BILLING_PERIOD, UUID.randomUUID().toString(),
- PhaseType.EVERGREEN);
+ private BundleJson createBundleWithSubscriptions() {
+ final String someUUID = UUID.randomUUID().toString();
final UUID accountId = UUID.randomUUID();
final UUID bundleId = UUID.randomUUID();
final UUID entitlementId = UUID.randomUUID();
final String externalKey = UUID.randomUUID().toString();
-
- final SubscriptionJsonWithEvents entitlementJsonWithEvents = new SubscriptionJsonWithEvents(accountId, bundleId, entitlementId, externalKey, ImmutableList.<SubscriptionEvent>of(), ImmutableList.<AuditLog>of(), ImmutableMap.<UUID, List<AuditLog>>of());
- return new BundleJsonWithSubscriptions(bundleId.toString(), externalKey, ImmutableList.<SubscriptionJsonWithEvents>of(entitlementJsonWithEvents), null);
+ final SubscriptionJson entitlementJsonWithEvents = new SubscriptionJson(accountId.toString(), bundleId.toString(), entitlementId.toString(), externalKey,
+ new LocalDate(), someUUID, someUUID, someUUID, someUUID,
+ new LocalDate(), new LocalDate(), new LocalDate(), new LocalDate(),
+ null, null, null, null);
+ return new BundleJson(accountId.toString(), bundleId.toString(), externalKey, ImmutableList.<SubscriptionJson>of(entitlementJsonWithEvents), null);
}
private InvoiceJsonSimple createInvoice() {
diff --git a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestEntitlementJsonWithEvents.java b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestEntitlementJsonWithEvents.java
index a923b00..aa5984d 100644
--- a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestEntitlementJsonWithEvents.java
+++ b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestEntitlementJsonWithEvents.java
@@ -21,25 +21,23 @@ import java.util.UUID;
import org.joda.time.DateTime;
import org.joda.time.DateTimeZone;
+import org.joda.time.LocalDate;
import org.testng.Assert;
import org.testng.annotations.Test;
import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.PhaseType;
import com.ning.billing.clock.DefaultClock;
-import com.ning.billing.entitlement.api.SubscriptionEvent;
import com.ning.billing.jaxrs.JaxrsTestSuiteNoDB;
-import com.ning.billing.jaxrs.json.SubscriptionJsonWithEvents.SubscriptionReadEventJson;
import com.ning.billing.subscription.api.SubscriptionBaseTransitionType;
-import com.google.common.collect.ImmutableList;
-
import static com.ning.billing.jaxrs.JaxrsTestUtils.createAuditLogsJson;
public class TestEntitlementJsonWithEvents extends JaxrsTestSuiteNoDB {
@Test(groups = "fast")
public void testJson() throws Exception {
+ final String someUUID = UUID.randomUUID().toString();
final String accountId = UUID.randomUUID().toString();
final String bundleId = UUID.randomUUID().toString();
final String entitlementId = UUID.randomUUID().toString();
@@ -48,7 +46,7 @@ public class TestEntitlementJsonWithEvents extends JaxrsTestSuiteNoDB {
final DateTime effectiveDate = DefaultClock.toUTCDateTime(new DateTime(DateTimeZone.UTC));
final UUID eventId = UUID.randomUUID();
final List<AuditLogJson> auditLogs = createAuditLogsJson(clock.getUTCNow());
- final SubscriptionJsonWithEvents.SubscriptionReadEventJson newEvent = new SubscriptionJsonWithEvents.SubscriptionReadEventJson(eventId.toString(),
+ final SubscriptionJson.SubscriptionReadEventJson newEvent = new SubscriptionJson.SubscriptionReadEventJson(eventId.toString(),
BillingPeriod.NO_BILLING_PERIOD.toString(),
requestedDate.toLocalDate(),
effectiveDate.toLocalDate(),
@@ -57,13 +55,15 @@ public class TestEntitlementJsonWithEvents extends JaxrsTestSuiteNoDB {
SubscriptionBaseTransitionType.CREATE.toString(),
PhaseType.DISCOUNT.toString(),
auditLogs);
- final SubscriptionEvent event = null;
- final SubscriptionJsonWithEvents entitlementJsonWithEvents = new SubscriptionJsonWithEvents(accountId, bundleId, entitlementId, externalKey, ImmutableList.<SubscriptionReadEventJson>of(newEvent), null, null, auditLogs);
+ final SubscriptionJson entitlementJsonWithEvents = new SubscriptionJson(accountId, bundleId, entitlementId, externalKey,
+ new LocalDate(), someUUID, someUUID, someUUID, someUUID,
+ new LocalDate(), new LocalDate(), new LocalDate(), new LocalDate(),
+ null, null, null, null);
final String asJson = mapper.writeValueAsString(entitlementJsonWithEvents);
- final SubscriptionJsonWithEvents fromJson = mapper.readValue(asJson, SubscriptionJsonWithEvents.class);
+ final SubscriptionJson fromJson = mapper.readValue(asJson, SubscriptionJson.class);
Assert.assertEquals(fromJson, entitlementJsonWithEvents);
}
}
diff --git a/payment/src/main/java/com/ning/billing/payment/api/DefaultPayment.java b/payment/src/main/java/com/ning/billing/payment/api/DefaultPayment.java
index 1020bba..045ab55 100644
--- a/payment/src/main/java/com/ning/billing/payment/api/DefaultPayment.java
+++ b/payment/src/main/java/com/ning/billing/payment/api/DefaultPayment.java
@@ -142,16 +142,6 @@ public class DefaultPayment extends EntityBase implements Payment {
}
@Override
- public String getExtFirstPaymentIdRef() {
- return extFirstPaymentIdRef;
- }
-
- @Override
- public String getExtSecondPaymentIdRef() {
- return extSecondPaymentIdRef;
- }
-
- @Override
public PaymentInfoPlugin getPaymentInfoPlugin() {
return paymentPluginInfo;
}
diff --git a/server/src/main/java/com/ning/billing/server/modules/KillbillServerModule.java b/server/src/main/java/com/ning/billing/server/modules/KillbillServerModule.java
index e0a0033..d54d83e 100644
--- a/server/src/main/java/com/ning/billing/server/modules/KillbillServerModule.java
+++ b/server/src/main/java/com/ning/billing/server/modules/KillbillServerModule.java
@@ -31,7 +31,6 @@ import com.ning.billing.account.glue.DefaultAccountModule;
import com.ning.billing.beatrix.glue.BeatrixModule;
import com.ning.billing.catalog.glue.CatalogModule;
import com.ning.billing.jaxrs.resources.EntitlementResource;
-import com.ning.billing.jaxrs.resources.SubscriptionResource;
import com.ning.billing.jaxrs.resources.TestResource;
import com.ning.billing.subscription.glue.DefaultSubscriptionModule;
import com.ning.billing.invoice.glue.DefaultInvoiceModule;
@@ -114,7 +113,6 @@ public class KillbillServerModule extends AbstractModule {
bind(AccountResource.class).asEagerSingleton();
bind(BundleResource.class).asEagerSingleton();
bind(EntitlementResource.class).asEagerSingleton();
- bind(SubscriptionResource.class).asEagerSingleton();
bind(InvoiceResource.class).asEagerSingleton();
bind(TagResource.class).asEagerSingleton();
bind(CatalogResource.class).asEagerSingleton();
diff --git a/server/src/test/java/com/ning/billing/jaxrs/KillbillClient.java b/server/src/test/java/com/ning/billing/jaxrs/KillbillClient.java
index 5c69c1c..5596fd8 100644
--- a/server/src/test/java/com/ning/billing/jaxrs/KillbillClient.java
+++ b/server/src/test/java/com/ning/billing/jaxrs/KillbillClient.java
@@ -47,7 +47,6 @@ import com.ning.billing.jaxrs.json.AccountTimelineJson;
import com.ning.billing.jaxrs.json.CatalogJsonSimple;
import com.ning.billing.jaxrs.json.ChargebackJson;
import com.ning.billing.jaxrs.json.CreditJson;
-import com.ning.billing.jaxrs.json.EntitlementJsonNoEvents;
import com.ning.billing.jaxrs.json.InvoiceItemJsonSimple;
import com.ning.billing.jaxrs.json.InvoiceJsonSimple;
import com.ning.billing.jaxrs.json.InvoiceJsonWithItems;
@@ -59,6 +58,7 @@ import com.ning.billing.jaxrs.json.PaymentMethodJson.PaymentMethodPluginDetailJs
import com.ning.billing.jaxrs.json.PaymentMethodJson.PaymentMethodProperties;
import com.ning.billing.jaxrs.json.PlanDetailJson;
import com.ning.billing.jaxrs.json.RefundJson;
+import com.ning.billing.jaxrs.json.SubscriptionJson;
import com.ning.billing.jaxrs.json.TenantJson;
import com.ning.billing.jaxrs.resources.JaxrsResource;
import com.ning.billing.util.api.AuditLevel;
@@ -374,11 +374,11 @@ public abstract class KillbillClient extends GuicyKillbillTestSuiteWithEmbeddedD
- protected EntitlementJsonNoEvents createEntitlement(final String accountId, final String bundleExternalKey, final String productName, final String productCategory, final String billingPeriod, final boolean waitCompletion) throws Exception {
+ protected SubscriptionJson createEntitlement(final String accountId, final String bundleExternalKey, final String productName, final String productCategory, final String billingPeriod, final boolean waitCompletion) throws Exception {
- final EntitlementJsonNoEvents input = new EntitlementJsonNoEvents(accountId, null, null, bundleExternalKey, null ,productName, productCategory,
- billingPeriod, PriceListSet.DEFAULT_PRICELIST_NAME,
- null, null);
+ final SubscriptionJson input = new SubscriptionJson(accountId, null, null, bundleExternalKey, null ,productName, productCategory,
+ billingPeriod, PriceListSet.DEFAULT_PRICELIST_NAME, null, null, null, null, null,
+ null, null, null);
String baseJson = mapper.writeValueAsString(input);
final Map<String, String> queryParams = waitCompletion ? getQueryParamsForCallCompletion("5") : DEFAULT_EMPTY_QUERY;
@@ -394,8 +394,7 @@ public abstract class KillbillClient extends GuicyKillbillTestSuiteWithEmbeddedD
Assert.assertEquals(response.getStatusCode(), Status.OK.getStatusCode());
baseJson = response.getResponseBody();
- final EntitlementJsonNoEvents objFromJson = mapper.readValue(baseJson, EntitlementJsonNoEvents.class);
- Assert.assertTrue(objFromJson.equalsNoSubscriptionIdNoStartDateNoCTD(input));
+ final SubscriptionJson objFromJson = mapper.readValue(baseJson, SubscriptionJson.class);
return objFromJson;
}
@@ -408,7 +407,7 @@ public abstract class KillbillClient extends GuicyKillbillTestSuiteWithEmbeddedD
assertNotNull(accountJson);
// Add a bundle, subscription and move the clock to get the first invoice
- final EntitlementJsonNoEvents subscriptionJson = createEntitlement(accountJson.getAccountId(), UUID.randomUUID().toString(), "Shotgun", ProductCategory.BASE.toString(), BillingPeriod.MONTHLY.toString(), true);
+ final SubscriptionJson subscriptionJson = createEntitlement(accountJson.getAccountId(), UUID.randomUUID().toString(), "Shotgun", ProductCategory.BASE.toString(), BillingPeriod.MONTHLY.toString(), true);
assertNotNull(subscriptionJson);
clock.addDays(32);
crappyWaitForLackOfProperSynchonization();
@@ -422,7 +421,7 @@ public abstract class KillbillClient extends GuicyKillbillTestSuiteWithEmbeddedD
assertNotNull(accountJson);
// Add a bundle, subscription and move the clock to get the first invoice
- final EntitlementJsonNoEvents subscriptionJson = createEntitlement(accountJson.getAccountId(), UUID.randomUUID().toString(), "Shotgun", ProductCategory.BASE.toString(), BillingPeriod.MONTHLY.toString(), true);
+ final SubscriptionJson subscriptionJson = createEntitlement(accountJson.getAccountId(), UUID.randomUUID().toString(), "Shotgun", ProductCategory.BASE.toString(), BillingPeriod.MONTHLY.toString(), true);
assertNotNull(subscriptionJson);
clock.addMonths(1);
crappyWaitForLackOfProperSynchonization();
diff --git a/server/src/test/java/com/ning/billing/jaxrs/TestAccountTimeline.java b/server/src/test/java/com/ning/billing/jaxrs/TestAccountTimeline.java
index bb70b5d..57c4d65 100644
--- a/server/src/test/java/com/ning/billing/jaxrs/TestAccountTimeline.java
+++ b/server/src/test/java/com/ning/billing/jaxrs/TestAccountTimeline.java
@@ -35,7 +35,7 @@ import com.ning.billing.jaxrs.json.InvoiceJsonSimple;
import com.ning.billing.jaxrs.json.PaymentJsonSimple;
import com.ning.billing.jaxrs.json.PaymentJsonWithBundleKeys;
import com.ning.billing.jaxrs.json.RefundJson;
-import com.ning.billing.jaxrs.json.SubscriptionJsonWithEvents.SubscriptionReadEventJson;
+import com.ning.billing.jaxrs.json.SubscriptionJson.SubscriptionReadEventJson;
import com.ning.billing.util.api.AuditLevel;
import com.ning.billing.util.audit.ChangeType;
diff --git a/server/src/test/java/com/ning/billing/jaxrs/TestBundle.java b/server/src/test/java/com/ning/billing/jaxrs/TestBundle.java
index 76e38a3..81382c0 100644
--- a/server/src/test/java/com/ning/billing/jaxrs/TestBundle.java
+++ b/server/src/test/java/com/ning/billing/jaxrs/TestBundle.java
@@ -31,8 +31,8 @@ import org.testng.annotations.Test;
import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.ProductCategory;
import com.ning.billing.jaxrs.json.AccountJson;
-import com.ning.billing.jaxrs.json.BundleJsonNoSubscriptions;
-import com.ning.billing.jaxrs.json.EntitlementJsonNoEvents;
+import com.ning.billing.jaxrs.json.BundleJson;
+import com.ning.billing.jaxrs.json.SubscriptionJson;
import com.ning.billing.jaxrs.resources.JaxrsResource;
import com.ning.http.client.Response;
@@ -56,7 +56,7 @@ public class TestBundle extends TestJaxrsBase {
final Response response = doGet(uri, queryParams, DEFAULT_HTTP_TIMEOUT_SEC);
Assert.assertEquals(response.getStatusCode(), Status.OK.getStatusCode());
final String baseJson = response.getResponseBody();
- final BundleJsonNoSubscriptions objFromJson = mapper.readValue(baseJson, BundleJsonNoSubscriptions.class);
+ final BundleJson objFromJson = mapper.readValue(baseJson, BundleJson.class);
}
@Test(groups = "slow", enabled = true)
@@ -71,11 +71,11 @@ public class TestBundle extends TestJaxrsBase {
final Response response = doGet(uri, DEFAULT_EMPTY_QUERY, DEFAULT_HTTP_TIMEOUT_SEC);
Assert.assertEquals(response.getStatusCode(), Status.OK.getStatusCode());
final String baseJson = response.getResponseBody();
- final List<BundleJsonNoSubscriptions> objFromJson = mapper.readValue(baseJson, new TypeReference<List<BundleJsonNoSubscriptions>>() {});
+ final List<BundleJson> objFromJson = mapper.readValue(baseJson, new TypeReference<List<BundleJson>>() {});
- Collections.sort(objFromJson, new Comparator<BundleJsonNoSubscriptions>() {
+ Collections.sort(objFromJson, new Comparator<BundleJson>() {
@Override
- public int compare(final BundleJsonNoSubscriptions o1, final BundleJsonNoSubscriptions o2) {
+ public int compare(final BundleJson o1, final BundleJson o2) {
return o1.getExternalKey().compareTo(o2.getExternalKey());
}
});
@@ -100,7 +100,7 @@ public class TestBundle extends TestJaxrsBase {
response = doGet(uri, DEFAULT_EMPTY_QUERY, DEFAULT_HTTP_TIMEOUT_SEC);
Assert.assertEquals(response.getStatusCode(), Status.OK.getStatusCode());
final String baseJson = response.getResponseBody();
- final List<BundleJsonNoSubscriptions> objFromJson = mapper.readValue(baseJson, new TypeReference<List<BundleJsonNoSubscriptions>>() {});
+ final List<BundleJson> objFromJson = mapper.readValue(baseJson, new TypeReference<List<BundleJson>>() {});
Assert.assertNotNull(objFromJson);
Assert.assertEquals(objFromJson.size(), 0);
}
@@ -123,7 +123,7 @@ public class TestBundle extends TestJaxrsBase {
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.MONTHLY;
- final EntitlementJsonNoEvents entitlementJsonNoEvents = createEntitlement(accountJson.getAccountId(), "93199", productName, ProductCategory.BASE.toString(), term.toString(), true);
+ final SubscriptionJson entitlementJsonNoEvents = createEntitlement(accountJson.getAccountId(), "93199", productName, ProductCategory.BASE.toString(), term.toString(), true);
Map<String, String> queryParams = new HashMap<String, String>();
@@ -131,14 +131,14 @@ public class TestBundle extends TestJaxrsBase {
String uri = JaxrsResource.BUNDLES_PATH;
Response response = doGet(uri, queryParams, DEFAULT_HTTP_TIMEOUT_SEC);
Assert.assertEquals(response.getStatusCode(), Status.OK.getStatusCode());
- final BundleJsonNoSubscriptions originalBundle = mapper.readValue(response.getResponseBody(), BundleJsonNoSubscriptions.class);
+ final BundleJson originalBundle = mapper.readValue(response.getResponseBody(), BundleJson.class);
assertEquals(originalBundle.getAccountId(), accountJson.getAccountId());
assertEquals(originalBundle.getExternalKey(), "93199");
final AccountJson newAccount = createAccountWithDefaultPaymentMethod("dst", "dst", "dst@yahoo.com");
- final BundleJsonNoSubscriptions newBundleInput = new BundleJsonNoSubscriptions(null, newAccount.getAccountId(), null, null, null);
+ final BundleJson newBundleInput = new BundleJson(null, newAccount.getAccountId(), null, null, null);
final String newBundleInputJson = mapper.writeValueAsString(newBundleInput);
uri = JaxrsResource.BUNDLES_PATH + "/" + entitlementJsonNoEvents.getBundleId();
response = doPut(uri, newBundleInputJson, DEFAULT_EMPTY_QUERY, DEFAULT_HTTP_TIMEOUT_SEC);
@@ -155,7 +155,7 @@ public class TestBundle extends TestJaxrsBase {
uri = JaxrsResource.BUNDLES_PATH;
response = doGet(uri, queryParams, DEFAULT_HTTP_TIMEOUT_SEC);
Assert.assertEquals(response.getStatusCode(), Status.OK.getStatusCode());
- final BundleJsonNoSubscriptions newBundle = mapper.readValue(response.getResponseBody(), BundleJsonNoSubscriptions.class);
+ final BundleJson newBundle = mapper.readValue(response.getResponseBody(), BundleJson.class);
assertNotEquals(newBundle.getBundleId(), originalBundle.getBundleId());
assertEquals(newBundle.getExternalKey(), originalBundle.getExternalKey());
diff --git a/server/src/test/java/com/ning/billing/jaxrs/TestChargeback.java b/server/src/test/java/com/ning/billing/jaxrs/TestChargeback.java
index b614b26..4975c17 100644
--- a/server/src/test/java/com/ning/billing/jaxrs/TestChargeback.java
+++ b/server/src/test/java/com/ning/billing/jaxrs/TestChargeback.java
@@ -33,9 +33,9 @@ import com.ning.billing.catalog.api.ProductCategory;
import com.ning.billing.jaxrs.json.AccountJson;
import com.ning.billing.jaxrs.json.ChargebackCollectionJson;
import com.ning.billing.jaxrs.json.ChargebackJson;
-import com.ning.billing.jaxrs.json.EntitlementJsonNoEvents;
import com.ning.billing.jaxrs.json.InvoiceJsonSimple;
import com.ning.billing.jaxrs.json.PaymentJsonSimple;
+import com.ning.billing.jaxrs.json.SubscriptionJson;
import com.ning.billing.jaxrs.resources.JaxrsResource;
import com.ning.http.client.Response;
@@ -200,7 +200,7 @@ public class TestChargeback extends TestJaxrsBase {
// Create subscription
- final EntitlementJsonNoEvents subscriptionJson = createEntitlement(accountJson.getAccountId(), "6253283", "Shotgun", ProductCategory.BASE.toString(), BillingPeriod.MONTHLY.toString(), true);
+ final SubscriptionJson subscriptionJson = createEntitlement(accountJson.getAccountId(), "6253283", "Shotgun", ProductCategory.BASE.toString(), BillingPeriod.MONTHLY.toString(), true);
assertNotNull(subscriptionJson);
// Move after the trial period to trigger an invoice with a non-zero invoice item
diff --git a/server/src/test/java/com/ning/billing/jaxrs/TestEntitlement.java b/server/src/test/java/com/ning/billing/jaxrs/TestEntitlement.java
index 330cf26..6b66dbb 100644
--- a/server/src/test/java/com/ning/billing/jaxrs/TestEntitlement.java
+++ b/server/src/test/java/com/ning/billing/jaxrs/TestEntitlement.java
@@ -31,7 +31,7 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.PriceListSet;
import com.ning.billing.catalog.api.ProductCategory;
import com.ning.billing.jaxrs.json.AccountJson;
-import com.ning.billing.jaxrs.json.EntitlementJsonNoEvents;
+import com.ning.billing.jaxrs.json.SubscriptionJson;
import com.ning.billing.jaxrs.resources.JaxrsResource;
import com.ning.http.client.Response;
@@ -54,7 +54,7 @@ public class TestEntitlement extends TestJaxrsBase {
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.MONTHLY;
- final EntitlementJsonNoEvents entitlementJson = createEntitlement(accountJson.getAccountId(), "99999", productName, ProductCategory.BASE.toString(), term.toString(), true);
+ final SubscriptionJson entitlementJson = createEntitlement(accountJson.getAccountId(), "99999", productName, ProductCategory.BASE.toString(), term.toString(), true);
String uri = JaxrsResource.ENTITLEMENTS_PATH + "/" + entitlementJson.getSubscriptionId();
@@ -62,31 +62,36 @@ public class TestEntitlement extends TestJaxrsBase {
Response response = doGet(uri, DEFAULT_EMPTY_QUERY, DEFAULT_HTTP_TIMEOUT_SEC);
assertEquals(response.getStatusCode(), Status.OK.getStatusCode());
String baseJson = response.getResponseBody();
- EntitlementJsonNoEvents objFromJson = mapper.readValue(baseJson, EntitlementJsonNoEvents.class);
+ SubscriptionJson objFromJson = mapper.readValue(baseJson, SubscriptionJson.class);
Assert.assertTrue(objFromJson.equals(entitlementJson));
// Change plan IMM
final String newProductName = "Assault-Rifle";
- final EntitlementJsonNoEvents newInput = new EntitlementJsonNoEvents(null,
- null,
- entitlementJson.getSubscriptionId(),
- null,
- null,
- newProductName,
- entitlementJson.getProductCategory(),
- entitlementJson.getBillingPeriod(),
- entitlementJson.getPriceList(),
- null,
- null);
+ final SubscriptionJson newInput = new SubscriptionJson(null,
+ null,
+ entitlementJson.getSubscriptionId(),
+ null,
+ null,
+ newProductName,
+ entitlementJson.getProductCategory(),
+ entitlementJson.getBillingPeriod(),
+ entitlementJson.getPriceList(),
+ null,
+ null,
+ null,
+ null,
+ null,
+ null,
+ null,
+ null);
baseJson = mapper.writeValueAsString(newInput);
final Map<String, String> queryParams = getQueryParamsForCallCompletion(CALL_COMPLETION_TIMEOUT_SEC);
response = doPut(uri, baseJson, queryParams, DEFAULT_HTTP_TIMEOUT_SEC);
assertEquals(response.getStatusCode(), Status.OK.getStatusCode());
baseJson = response.getResponseBody();
- objFromJson = mapper.readValue(baseJson, EntitlementJsonNoEvents.class);
- assertTrue(objFromJson.equalsNoSubscriptionIdNoStartDateNoCTD(newInput));
+ objFromJson = mapper.readValue(baseJson, SubscriptionJson.class);
// MOVE AFTER TRIAL
final Interval it = new Interval(clock.getUTCNow(), clock.getUTCNow().plusDays(31));
@@ -105,7 +110,7 @@ public class TestEntitlement extends TestJaxrsBase {
assertEquals(response.getStatusCode(), Status.OK.getStatusCode());
baseJson = response.getResponseBody();
- objFromJson = mapper.readValue(baseJson, EntitlementJsonNoEvents.class);
+ objFromJson = mapper.readValue(baseJson, SubscriptionJson.class);
assertNotNull(objFromJson.getCancelledDate());
assertTrue(objFromJson.getCancelledDate().compareTo(new LocalDate(clock.getUTCNow())) == 0);
@@ -119,8 +124,8 @@ public class TestEntitlement extends TestJaxrsBase {
@Test(groups = "slow")
public void testWithNonExistentEntitlement() throws Exception {
final String uri = JaxrsResource.ENTITLEMENTS_PATH + "/" + UUID.randomUUID().toString();
- final EntitlementJsonNoEvents subscriptionJson = new EntitlementJsonNoEvents(null, null, UUID.randomUUID().toString(), null, null, "Pistol", ProductCategory.BASE.toString(), BillingPeriod.MONTHLY.toString(),
- PriceListSet.DEFAULT_PRICELIST_NAME, null, null);
+ final SubscriptionJson subscriptionJson = new SubscriptionJson(null, null, UUID.randomUUID().toString(), null, null, "Pistol", ProductCategory.BASE.toString(), BillingPeriod.MONTHLY.toString(),
+ PriceListSet.DEFAULT_PRICELIST_NAME, null, null, null, null, null, null, null, null);
final String baseJson = mapper.writeValueAsString(subscriptionJson);
Response response = doPut(uri, baseJson, DEFAULT_EMPTY_QUERY, DEFAULT_HTTP_TIMEOUT_SEC);
@@ -143,36 +148,36 @@ public class TestEntitlement extends TestJaxrsBase {
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.ANNUAL;
- final EntitlementJsonNoEvents entitlementJsonNoEvents = createEntitlement(accountJson.getAccountId(), "99999", productName, ProductCategory.BASE.toString(), term.toString(), true);
- final String uri = JaxrsResource.ENTITLEMENTS_PATH + "/" + entitlementJsonNoEvents.getSubscriptionId();
+ final SubscriptionJson SubscriptionJson = createEntitlement(accountJson.getAccountId(), "99999", productName, ProductCategory.BASE.toString(), term.toString(), true);
+ final String uri = JaxrsResource.ENTITLEMENTS_PATH + "/" + SubscriptionJson.getSubscriptionId();
// Retrieves with GET
Response response = doGet(uri, DEFAULT_EMPTY_QUERY, DEFAULT_HTTP_TIMEOUT_SEC);
assertEquals(response.getStatusCode(), Status.OK.getStatusCode());
String baseJson = response.getResponseBody();
- EntitlementJsonNoEvents objFromJson = mapper.readValue(baseJson, EntitlementJsonNoEvents.class);
- Assert.assertTrue(objFromJson.equals(entitlementJsonNoEvents));
+ SubscriptionJson objFromJson = mapper.readValue(baseJson, SubscriptionJson.class);
+ Assert.assertTrue(objFromJson.equals(SubscriptionJson));
assertEquals(objFromJson.getBillingPeriod(), BillingPeriod.ANNUAL.toString());
// Change billing period immediately
- final EntitlementJsonNoEvents newInput = new EntitlementJsonNoEvents(null,
- null,
- entitlementJsonNoEvents.getSubscriptionId(),
- null,
- null,
- entitlementJsonNoEvents.getProductName(),
- entitlementJsonNoEvents.getProductCategory(),
- BillingPeriod.MONTHLY.toString(),
- entitlementJsonNoEvents.getPriceList(),
- entitlementJsonNoEvents.getCancelledDate(),
- null);
+ final SubscriptionJson newInput = new SubscriptionJson(null,
+ null,
+ SubscriptionJson.getSubscriptionId(),
+ null,
+ null,
+ SubscriptionJson.getProductName(),
+ SubscriptionJson.getProductCategory(),
+ BillingPeriod.MONTHLY.toString(),
+ SubscriptionJson.getPriceList(),
+ SubscriptionJson.getCancelledDate(),
+ null, null, null, null, null, null, null);
baseJson = mapper.writeValueAsString(newInput);
final Map<String, String> queryParams = getQueryParamsForCallCompletion(CALL_COMPLETION_TIMEOUT_SEC);
queryParams.put(JaxrsResource.QUERY_BILLING_POLICY, "immediate");
response = doPut(uri, baseJson, queryParams, DEFAULT_HTTP_TIMEOUT_SEC);
assertEquals(response.getStatusCode(), Status.OK.getStatusCode());
baseJson = response.getResponseBody();
- objFromJson = mapper.readValue(baseJson, EntitlementJsonNoEvents.class);
+ objFromJson = mapper.readValue(baseJson, SubscriptionJson.class);
assertEquals(objFromJson.getBillingPeriod(), BillingPeriod.MONTHLY.toString());
}
}
diff --git a/server/src/test/java/com/ning/billing/jaxrs/TestInvoiceNotification.java b/server/src/test/java/com/ning/billing/jaxrs/TestInvoiceNotification.java
index 99772b1..2f1969b 100644
--- a/server/src/test/java/com/ning/billing/jaxrs/TestInvoiceNotification.java
+++ b/server/src/test/java/com/ning/billing/jaxrs/TestInvoiceNotification.java
@@ -27,7 +27,7 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.ProductCategory;
import com.ning.billing.jaxrs.json.AccountJson;
import com.ning.billing.jaxrs.json.InvoiceJsonSimple;
-import com.ning.billing.jaxrs.json.EntitlementJsonNoEvents;
+import com.ning.billing.jaxrs.json.SubscriptionJson;
import com.ning.billing.jaxrs.resources.JaxrsResource;
import com.ning.http.client.Response;
@@ -60,7 +60,7 @@ public class TestInvoiceNotification extends TestJaxrsBase {
final AccountJson accountJson = createAccountWithDefaultPaymentMethod(UUID.randomUUID().toString(), UUID.randomUUID().toString(), UUID.randomUUID().toString());
Assert.assertNotNull(accountJson);
- final EntitlementJsonNoEvents subscriptionJson = createEntitlement(accountJson.getAccountId(), "76213", "Shotgun", ProductCategory.BASE.toString(), BillingPeriod.MONTHLY.toString(), true);
+ final SubscriptionJson subscriptionJson = createEntitlement(accountJson.getAccountId(), "76213", "Shotgun", ProductCategory.BASE.toString(), BillingPeriod.MONTHLY.toString(), true);
Assert.assertNotNull(subscriptionJson);
return accountJson;