killbill-aplcache
Changes
.idea/libraries/Maven__com_ning_billing_killbill_entitlement_test_jar_tests_0_3_6_SNAPSHOT.xml 2(+2 -0)
beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyNotificationPlugin.java 5(+3 -2)
beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyPaymentPlugin.java 19(+10 -9)
beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueIntegration.java 4(+2 -2)
beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithOverdueEnforcementOffTag.java 4(+2 -2)
beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithSubscriptionCancellation.java 6(+3 -3)
entitlement/src/main/java/com/ning/billing/entitlement/api/svcs/DefaultInternalBlockingApi.java 12(+11 -1)
entitlement/src/test/java/com/ning/billing/entitlement/api/TestDefaultEntitlementApi.java 19(+19 -0)
entitlement/src/test/java/com/ning/billing/entitlement/block/TestDefaultBlockingApi.java 24(+11 -13)
subscription/src/main/java/com/ning/billing/subscription/api/svcs/DefaultSubscriptionInternalApi.java 2(+1 -1)
subscription/src/main/java/com/ning/billing/subscription/api/timeline/SubscriptionDataRepair.java 2(+1 -1)
subscription/src/main/java/com/ning/billing/subscription/api/transfer/DefaultSubscriptionBaseTransferApi.java 2(+1 -1)
subscription/src/main/java/com/ning/billing/subscription/api/user/DefaultSubscriptionBaseApiService.java 6(+3 -3)
subscription/src/test/java/com/ning/billing/subscription/api/migration/TestMigration.java 20(+10 -10)
subscription/src/test/java/com/ning/billing/subscription/api/timeline/TestRepairWithAO.java 50(+25 -25)
Details
diff --git a/.idea/libraries/Maven__com_ning_billing_killbill_entitlement_test_jar_tests_0_3_6_SNAPSHOT.xml b/.idea/libraries/Maven__com_ning_billing_killbill_entitlement_test_jar_tests_0_3_6_SNAPSHOT.xml
index a75657f..0892582 100644
--- a/.idea/libraries/Maven__com_ning_billing_killbill_entitlement_test_jar_tests_0_3_6_SNAPSHOT.xml
+++ b/.idea/libraries/Maven__com_ning_billing_killbill_entitlement_test_jar_tests_0_3_6_SNAPSHOT.xml
@@ -4,9 +4,11 @@
<root url="jar://$MAVEN_REPOSITORY$/com/ning/billing/killbill-entitlement/0.3.6-SNAPSHOT/killbill-entitlement-0.3.6-SNAPSHOT-tests.jar!/" />
</CLASSES>
<JAVADOC>
+ <root url="jar://$PROJECT_DIR$/entitlement/killbill-entitlement-0.3.6-SNAPSHOT-test-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/com/ning/billing/killbill-entitlement/0.3.6-SNAPSHOT/killbill-entitlement-0.3.6-SNAPSHOT-test-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
+ <root url="jar://$PROJECT_DIR$/entitlement/killbill-entitlement-0.3.6-SNAPSHOT-test-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/com/ning/billing/killbill-entitlement/0.3.6-SNAPSHOT/killbill-entitlement-0.3.6-SNAPSHOT-test-sources.jar!/" />
</SOURCES>
</library>
diff --git a/api/src/main/java/com/ning/billing/subscription/api/SubscriptionBase.java b/api/src/main/java/com/ning/billing/subscription/api/SubscriptionBase.java
index c1964c4..b3028d4 100644
--- a/api/src/main/java/com/ning/billing/subscription/api/SubscriptionBase.java
+++ b/api/src/main/java/com/ning/billing/subscription/api/SubscriptionBase.java
@@ -18,7 +18,7 @@ import com.ning.billing.entitlement.api.Entitlement.EntitlementSourceType;
import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.subscription.api.user.SubscriptionBaseApiException;
import com.ning.billing.subscription.api.user.SubscriptionBaseTransition;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.util.callcontext.CallContext;
import com.ning.billing.util.entity.Entity;
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyNotificationPlugin.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyNotificationPlugin.java
index 0fc051d..cab1821 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyNotificationPlugin.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyNotificationPlugin.java
@@ -34,7 +34,8 @@ public class TestJrubyNotificationPlugin extends TestOSGIBase {
private final String BUNDLE_TEST_RESOURCE_PREFIX = "killbill-notification-test";
private final String BUNDLE_TEST_RESOURCE = BUNDLE_TEST_RESOURCE_PREFIX + ".tar.gz";
- @BeforeClass(groups = "slow", enabled = true)
+ // STEPH_ENT reenable All tests
+ @BeforeClass(groups = "slow", enabled = false)
public void beforeClass() throws Exception {
// OSGIDataSourceConfig
@@ -47,7 +48,7 @@ public class TestJrubyNotificationPlugin extends TestOSGIBase {
setupTest.setupJrubyBundle();
}
- @Test(groups = "slow", enabled = true)
+ @Test(groups = "slow", enabled = false)
public void testOnEventForAccountCreation() throws Exception {
// Once we create the account we give the hand to the jruby notification plugin
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyPaymentPlugin.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyPaymentPlugin.java
index 441e21e..f392726 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyPaymentPlugin.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyPaymentPlugin.java
@@ -52,7 +52,8 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
@Inject
private OSGIServiceRegistration<PaymentPluginApi> paymentPluginApiOSGIServiceRegistration;
- @BeforeClass(groups = "slow", enabled = true)
+ // STEPH_ENT reenable All tests
+ @BeforeClass(groups = "slow", enabled = false)
public void beforeClass() throws Exception {
@@ -67,7 +68,7 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
}
- @Test(groups = "slow", enabled = true)
+ @Test(groups = "slow", enabled = false)
public void testProcessPayment() throws Exception {
PaymentPluginApi api = getTestPluginPaymentApi();
@@ -92,7 +93,7 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
assertEquals(res.getStatus(), PaymentPluginStatus.PROCESSED);
}
- @Test(groups = "slow", enabled = true)
+ @Test(groups = "slow", enabled = false)
public void testGetPaymentInfo() throws Exception {
PaymentPluginApi api = getTestPluginPaymentApi();
@@ -116,7 +117,7 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
}
- @Test(groups = "slow", enabled = true)
+ @Test(groups = "slow", enabled = false)
public void testProcessRefund() throws Exception {
PaymentPluginApi api = getTestPluginPaymentApi();
@@ -139,7 +140,7 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
assertEquals(res.getStatus(), RefundPluginStatus.PROCESSED);
}
- @Test(groups = "slow", enabled = true)
+ @Test(groups = "slow", enabled = false)
public void testAddPaymentMethod() throws Exception {
PaymentPluginApi api = getTestPluginPaymentApi();
@@ -151,14 +152,14 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
}
- @Test(groups = "slow", enabled = true)
+ @Test(groups = "slow", enabled = false)
public void testDeletePaymentMethod() throws Exception {
PaymentPluginApi api = getTestPluginPaymentApi();
api.deletePaymentMethod(UUID.randomUUID(), UUID.randomUUID(), callContext);
}
- @Test(groups = "slow", enabled = true)
+ @Test(groups = "slow", enabled = false)
public void testGetPaymentMethodDetail() throws Exception {
PaymentPluginApi api = getTestPluginPaymentApi();
@@ -173,7 +174,7 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
assertEquals(res.getProperties().get(1).getValue(), "value2");
}
- @Test(groups = "slow", enabled = true)
+ @Test(groups = "slow", enabled = false)
public void testSetDefaultPaymentMethod() throws Exception {
PaymentPluginApi api = getTestPluginPaymentApi();
@@ -181,7 +182,7 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
api.setDefaultPaymentMethod(UUID.randomUUID(), UUID.randomUUID(), callContext);
}
- @Test(groups = "slow", enabled = true)
+ @Test(groups = "slow", enabled = false)
public void testGetPaymentMethods() throws Exception {
PaymentPluginApi api = getTestPluginPaymentApi();
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueIntegration.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueIntegration.java
index c63b49f..329cd57 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueIntegration.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueIntegration.java
@@ -51,7 +51,7 @@ public class TestOverdueIntegration extends TestOverdueBase {
@Override
public String getOverdueConfig() {
final String configXml = "<overdueConfig>" +
- " <bundleOverdueStates>" +
+ " <accountOverdueStates>" +
" <state name=\"OD3\">" +
" <condition>" +
" <timeSinceEarliestUnpaidInvoiceEqualsOrExceeds>" +
@@ -91,7 +91,7 @@ public class TestOverdueIntegration extends TestOverdueBase {
" <unit>DAYS</unit><number>5</number>" +
" </autoReevaluationInterval>" +
" </state>" +
- " </bundleOverdueStates>" +
+ " </accountOverdueStates>" +
"</overdueConfig>";
return configXml;
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithOverdueEnforcementOffTag.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithOverdueEnforcementOffTag.java
index 9a82224..abbaa15 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithOverdueEnforcementOffTag.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithOverdueEnforcementOffTag.java
@@ -38,7 +38,7 @@ public class TestOverdueWithOverdueEnforcementOffTag extends TestOverdueBase {
@Override
public String getOverdueConfig() {
final String configXml = "<overdueConfig>" +
- " <bundleOverdueStates>" +
+ " <accountOverdueStates>" +
" <state name=\"OD1\">" +
" <condition>" +
" <timeSinceEarliestUnpaidInvoiceEqualsOrExceeds>" +
@@ -52,7 +52,7 @@ public class TestOverdueWithOverdueEnforcementOffTag extends TestOverdueBase {
" <unit>DAYS</unit><number>5</number>" +
" </autoReevaluationInterval>" +
" </state>" +
- " </bundleOverdueStates>" +
+ " </accountOverdueStates>" +
"</overdueConfig>";
return configXml;
}
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithSubscriptionCancellation.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithSubscriptionCancellation.java
index e82a158..d433ef7 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithSubscriptionCancellation.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithSubscriptionCancellation.java
@@ -29,7 +29,7 @@ import com.ning.billing.entitlement.api.DefaultEntitlement;
import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.invoice.api.InvoiceItemType;
import com.ning.billing.subscription.api.SubscriptionBase;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.util.svcapi.junction.DefaultBlockingState;
import static junit.framework.Assert.assertTrue;
@@ -41,7 +41,7 @@ public class TestOverdueWithSubscriptionCancellation extends TestOverdueBase {
@Override
public String getOverdueConfig() {
final String configXml = "<overdueConfig>" +
- " <bundleOverdueStates>" +
+ " <accountOverdueStates>" +
" <state name=\"OD1\">" +
" <condition>" +
" <timeSinceEarliestUnpaidInvoiceEqualsOrExceeds>" +
@@ -56,7 +56,7 @@ public class TestOverdueWithSubscriptionCancellation extends TestOverdueBase {
" <unit>DAYS</unit><number>5</number>" +
" </autoReevaluationInterval>" +
" </state>" +
- " </bundleOverdueStates>" +
+ " </accountOverdueStates>" +
"</overdueConfig>";
return configXml;
}
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestRepairIntegration.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestRepairIntegration.java
index ca2653b..31f113d 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestRepairIntegration.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestRepairIntegration.java
@@ -43,7 +43,7 @@ import com.ning.billing.subscription.api.user.SubscriptionEvents;
import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline.DeletedEvent;
import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline.ExistingEvent;
import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline.NewEvent;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
@@ -135,18 +135,18 @@ public class TestRepairIntegration extends TestIntegrationBase {
final DefaultSubscriptionBase newAoSubscription = (DefaultSubscriptionBase) aoEntitlement1.getSubscriptionBase();
- assertEquals(newAoSubscription.getState(), SubscriptionState.CANCELLED);
+ assertEquals(newAoSubscription.getState(), EntitlementState.CANCELLED);
assertEquals(newAoSubscription.getAllTransitions().size(), 2);
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
final DefaultSubscriptionBase newAoSubscription2 = (DefaultSubscriptionBase) aoEntitlement2.getSubscriptionBase();
- assertEquals(newAoSubscription2.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newAoSubscription2.getState(), EntitlementState.ACTIVE);
assertEquals(newAoSubscription2.getAllTransitions().size(), 2);
assertEquals(newAoSubscription2.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
final DefaultSubscriptionBase newBaseSubscription = (DefaultSubscriptionBase) bpEntitlement.getSubscriptionBase();
- assertEquals(newBaseSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newBaseSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newBaseSubscription.getAllTransitions().size(), 3);
assertEquals(newBaseSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
diff --git a/entitlement/src/main/java/com/ning/billing/entitlement/api/DefaultEntitlement.java b/entitlement/src/main/java/com/ning/billing/entitlement/api/DefaultEntitlement.java
index 4f98224..f17d56b 100644
--- a/entitlement/src/main/java/com/ning/billing/entitlement/api/DefaultEntitlement.java
+++ b/entitlement/src/main/java/com/ning/billing/entitlement/api/DefaultEntitlement.java
@@ -186,7 +186,7 @@ public class DefaultEntitlement extends EntityBase implements Entitlement {
@Override
- public boolean cancelEntitlementWithPolicy(final EntitlementActionPolicy entitlementBillingActionPolicy, final CallContext callContext) throws EntitlementApiException {
+ public boolean cancelEntitlementWithPolicy(final EntitlementActionPolicy entitlementPolicy, final CallContext callContext) throws EntitlementApiException {
return false;
}
@@ -196,7 +196,7 @@ public class DefaultEntitlement extends EntityBase implements Entitlement {
}
@Override
- public boolean cancelEntitlementWithPolicyOverrideBillingPolicy(final EntitlementActionPolicy policy, final BillingActionPolicy billingPolicy, final CallContext context) throws EntitlementApiException {
+ public boolean cancelEntitlementWithPolicyOverrideBillingPolicy(final EntitlementActionPolicy entitlementPolicy, final BillingActionPolicy billingPolicy, final CallContext context) throws EntitlementApiException {
return false; //To change body of implemented methods use File | Settings | File Templates.
}
diff --git a/entitlement/src/main/java/com/ning/billing/entitlement/api/DefaultEntitlementApi.java b/entitlement/src/main/java/com/ning/billing/entitlement/api/DefaultEntitlementApi.java
index df1ce61..f838d8d 100644
--- a/entitlement/src/main/java/com/ning/billing/entitlement/api/DefaultEntitlementApi.java
+++ b/entitlement/src/main/java/com/ning/billing/entitlement/api/DefaultEntitlementApi.java
@@ -30,6 +30,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.ning.billing.ErrorCode;
+import com.ning.billing.ObjectType;
import com.ning.billing.account.api.Account;
import com.ning.billing.account.api.AccountApiException;
import com.ning.billing.catalog.api.BillingActionPolicy;
@@ -44,7 +45,7 @@ import com.ning.billing.entitlement.dao.BlockingStateDao;
import com.ning.billing.subscription.api.SubscriptionBase;
import com.ning.billing.subscription.api.user.SubscriptionBaseApiException;
import com.ning.billing.subscription.api.user.SubscriptionBaseBundle;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.util.callcontext.CallContext;
import com.ning.billing.util.callcontext.InternalCallContext;
import com.ning.billing.util.callcontext.InternalCallContextFactory;
@@ -224,23 +225,25 @@ public class DefaultEntitlementApi implements EntitlementApi {
@Override
public void block(final UUID bundleId, final LocalDate effectiveDate, final CallContext context) throws EntitlementApiException {
- final InternalCallContext internalContext = internalCallContextFactory.createInternalCallContext(context);
- final BlockingState currentState = blockingStateDao.getBlockingStateForService(bundleId, EntitlementService.ENTITLEMENT_SERVICE_NAME, internalContext);
+
+ final InternalCallContext contextWithValidAccountRecordId = internalCallContextFactory.createInternalCallContext(bundleId, ObjectType.BUNDLE, context);
+ final BlockingState currentState = blockingStateDao.getBlockingStateForService(bundleId, EntitlementService.ENTITLEMENT_SERVICE_NAME, contextWithValidAccountRecordId);
if (currentState != null && currentState.getStateName().equals(ENT_STATE_BLOCKED)) {
throw new EntitlementApiException(ErrorCode.ENT_ALREADY_BLOCKED, bundleId);
}
- blockingStateDao.setBlockingState(new DefaultBlockingState(bundleId, BlockingStateType.BUNDLE, ENT_STATE_BLOCKED, EntitlementService.ENTITLEMENT_SERVICE_NAME, true, true, true), clock, internalContext);
+ blockingStateDao.setBlockingState(new DefaultBlockingState(bundleId, BlockingStateType.BUNDLE, ENT_STATE_BLOCKED, EntitlementService.ENTITLEMENT_SERVICE_NAME, true, true, true, clock.getUTCNow()), clock, contextWithValidAccountRecordId);
}
@Override
public void unblock(final UUID bundleId, final LocalDate effectiveDate, final CallContext context) throws EntitlementApiException {
- final InternalCallContext internalContext = internalCallContextFactory.createInternalCallContext(context);
- final BlockingState currentState = blockingStateDao.getBlockingStateForService(bundleId, EntitlementService.ENTITLEMENT_SERVICE_NAME, internalContext);
+
+ final InternalCallContext contextWithValidAccountRecordId = internalCallContextFactory.createInternalCallContext(bundleId, ObjectType.BUNDLE, context);
+ final BlockingState currentState = blockingStateDao.getBlockingStateForService(bundleId, EntitlementService.ENTITLEMENT_SERVICE_NAME, contextWithValidAccountRecordId);
if (currentState == null || currentState.getStateName().equals(ENT_STATE_CLEAR)) {
// Nothing to do.
return;
}
- blockingStateDao.setBlockingState(new DefaultBlockingState(bundleId, BlockingStateType.BUNDLE, ENT_STATE_CLEAR, EntitlementService.ENTITLEMENT_SERVICE_NAME, false, false, false), clock, internalContext);
+ blockingStateDao.setBlockingState(new DefaultBlockingState(bundleId, BlockingStateType.BUNDLE, ENT_STATE_CLEAR, EntitlementService.ENTITLEMENT_SERVICE_NAME, false, false, false, clock.getUTCNow()), clock, contextWithValidAccountRecordId);
}
diff --git a/entitlement/src/main/java/com/ning/billing/entitlement/api/svcs/DefaultInternalBlockingApi.java b/entitlement/src/main/java/com/ning/billing/entitlement/api/svcs/DefaultInternalBlockingApi.java
index 89e27c7..e2ae80c 100644
--- a/entitlement/src/main/java/com/ning/billing/entitlement/api/svcs/DefaultInternalBlockingApi.java
+++ b/entitlement/src/main/java/com/ning/billing/entitlement/api/svcs/DefaultInternalBlockingApi.java
@@ -47,7 +47,7 @@ public class DefaultInternalBlockingApi implements BlockingInternalApi {
public BlockingState getBlockingStateForService(final Blockable overdueable, final String serviceName, final InternalTenantContext context) {
BlockingState state = dao.getBlockingStateForService(overdueable.getId(), serviceName, context);
if (state == null) {
- state = DefaultBlockingState.getClearState(getBlockingStateType(overdueable));
+ state = DefaultBlockingState.getClearState(getBlockingStateType(overdueable), clock);
}
return state;
}
@@ -68,6 +68,16 @@ public class DefaultInternalBlockingApi implements BlockingInternalApi {
}
@Override
+ public List<BlockingState> getBlockingHistory(final Blockable overdueable, final InternalTenantContext context) {
+ return dao.getBlockingHistory(overdueable.getId(), context);
+ }
+
+ @Override
+ public List<BlockingState> getBlockingHistory(final UUID overdueableId, final InternalTenantContext context) {
+ return dao.getBlockingHistory(overdueableId, context);
+ }
+
+ @Override
public void setBlockingState(final BlockingState state, final InternalCallContext context) {
dao.setBlockingState(state, clock, context);
}
diff --git a/entitlement/src/test/java/com/ning/billing/entitlement/api/TestDefaultEntitlementApi.java b/entitlement/src/test/java/com/ning/billing/entitlement/api/TestDefaultEntitlementApi.java
index 9c06450..4bff189 100644
--- a/entitlement/src/test/java/com/ning/billing/entitlement/api/TestDefaultEntitlementApi.java
+++ b/entitlement/src/test/java/com/ning/billing/entitlement/api/TestDefaultEntitlementApi.java
@@ -1,5 +1,7 @@
package com.ning.billing.entitlement.api;
+import java.net.URL;
+import java.net.URLClassLoader;
import java.util.List;
import org.joda.time.LocalDate;
@@ -23,10 +25,13 @@ import static org.testng.Assert.assertNull;
public class TestDefaultEntitlementApi extends EntitlementTestSuiteWithEmbeddedDB {
+
@Test(groups = "slow")
public void testCreateEntitlementWithCheck() {
try {
+
+
final LocalDate initialDate = new LocalDate(2013, 8, 7);
clock.setDay(initialDate);
@@ -198,6 +203,15 @@ public class TestDefaultEntitlementApi extends EntitlementTestSuiteWithEmbeddedD
final Entitlement telescopicEntitlement2 = entitlementApi.getEntitlementForId(telescopicEntitlement.getId(), callContext);
assertEquals(telescopicEntitlement2.getState(), EntitlementState.BLOCKED);
+ // Check we can't block in a blocked state
+ try {
+ entitlementApi.block(baseEntitlement.getBundleId(), new LocalDate(clock.getUTCNow()), callContext);
+ Assert.fail("Should not have succeeded to block in a blocked state");
+ } catch (EntitlementApiException e) {
+ assertEquals(e.getCode(), ErrorCode.ENT_ALREADY_BLOCKED.getCode());
+ }
+
+
final List<Entitlement> bundleEntitlements2 = entitlementApi.getAllEntitlementsForBundle(telescopicEntitlement2.getBundleId(), callContext);
assertEquals(bundleEntitlements2.size(), 2);
for (Entitlement cur : bundleEntitlements2) {
@@ -215,6 +229,9 @@ public class TestDefaultEntitlementApi extends EntitlementTestSuiteWithEmbeddedD
clock.addDays(3);
entitlementApi.unblock(baseEntitlement.getBundleId(), new LocalDate(), callContext);
+ // Verify call is idempotent
+ entitlementApi.unblock(baseEntitlement.getBundleId(), new LocalDate(), callContext);
+
// Verify blocking state
final Entitlement baseEntitlement3 = entitlementApi.getEntitlementForId(baseEntitlement.getId(), callContext);
assertEquals(baseEntitlement3.getState(), EntitlementState.ACTIVE);
@@ -227,6 +244,8 @@ public class TestDefaultEntitlementApi extends EntitlementTestSuiteWithEmbeddedD
for (Entitlement cur : bundleEntitlements3) {
assertEquals(cur.getState(), EntitlementState.ACTIVE);
}
+
+ // STEPH_ENT wait for semantics to clarify and write the tests
} catch (AccountApiException e) {
Assert.fail("Test failed " + e.getMessage());
} catch (EntitlementApiException e) {
diff --git a/entitlement/src/test/java/com/ning/billing/entitlement/block/TestBlockingApi.java b/entitlement/src/test/java/com/ning/billing/entitlement/block/TestBlockingApi.java
index 44b506e..ecf8c19 100644
--- a/entitlement/src/test/java/com/ning/billing/entitlement/block/TestBlockingApi.java
+++ b/entitlement/src/test/java/com/ning/billing/entitlement/block/TestBlockingApi.java
@@ -48,12 +48,12 @@ public class TestBlockingApi extends EntitlementTestSuiteWithEmbeddedDB {
final boolean blockEntitlement = false;
final boolean blockBilling = false;
- final BlockingState state1 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT,overdueStateName, service, blockChange, blockEntitlement, blockBilling);
+ final BlockingState state1 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT,overdueStateName, service, blockChange, blockEntitlement, blockBilling, clock.getUTCNow());
blockingInternalApi.setBlockingState(state1, internalCallContext);
clock.setDeltaFromReality(1000 * 3600 * 24);
final String overdueStateName2 = "NoReallyThisCantGoOn";
- final BlockingState state2 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName2, service, blockChange, blockEntitlement, blockBilling);
+ final BlockingState state2 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName2, service, blockChange, blockEntitlement, blockBilling, clock.getUTCNow());
blockingInternalApi.setBlockingState(state2, internalCallContext);
final SubscriptionBaseBundle bundle = Mockito.mock(SubscriptionBaseBundle.class);
@@ -75,13 +75,13 @@ public class TestBlockingApi extends EntitlementTestSuiteWithEmbeddedDB {
final boolean blockEntitlement = false;
final boolean blockBilling = false;
- final BlockingState state1 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName, service, blockChange, blockEntitlement, blockBilling);
+ final BlockingState state1 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName, service, blockChange, blockEntitlement, blockBilling, clock.getUTCNow());
blockingInternalApi.setBlockingState(state1, internalCallContext);
clock.setDeltaFromReality(1000 * 3600 * 24);
final String overdueStateName2 = "NoReallyThisCantGoOn";
- final BlockingState state2 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName2, service, blockChange, blockEntitlement, blockBilling);
+ final BlockingState state2 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName2, service, blockChange, blockEntitlement, blockBilling, clock.getUTCNow());
blockingInternalApi.setBlockingState(state2, internalCallContext);
final SubscriptionBaseBundle bundle = Mockito.mock(SubscriptionBaseBundle.class);
diff --git a/entitlement/src/test/java/com/ning/billing/entitlement/block/TestBlockingChecker.java b/entitlement/src/test/java/com/ning/billing/entitlement/block/TestBlockingChecker.java
index 174ed07..8d7b6f5 100644
--- a/entitlement/src/test/java/com/ning/billing/entitlement/block/TestBlockingChecker.java
+++ b/entitlement/src/test/java/com/ning/billing/entitlement/block/TestBlockingChecker.java
@@ -67,18 +67,18 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
}
private void setStateBundle(final boolean bC, final boolean bE, final boolean bB) {
- final BlockingState bundleState = new DefaultBlockingState(bundle.getId(), BlockingStateType.ACCOUNT,"state", "test-service", bC, bE, bB);
+ final BlockingState bundleState = new DefaultBlockingState(bundle.getId(), BlockingStateType.BUNDLE,"state", "test-service", bC, bE, bB, clock.getUTCNow());
Mockito.when(bundle.getBlockingState()).thenReturn(bundleState);
blockingStateDao.setBlockingState(bundleState, clock, internalCallContext);
}
private void setStateAccount(final boolean bC, final boolean bE, final boolean bB) {
- final BlockingState accountState = new DefaultBlockingState(account.getId(), BlockingStateType.ACCOUNT, "state", "test-service", bC, bE, bB);
+ final BlockingState accountState = new DefaultBlockingState(account.getId(), BlockingStateType.ACCOUNT, "state", "test-service", bC, bE, bB, clock.getUTCNow());
blockingStateDao.setBlockingState(accountState, clock, internalCallContext);
}
private void setStateSubscription(final boolean bC, final boolean bE, final boolean bB) {
- final BlockingState subscriptionState = new DefaultBlockingState(subscription.getId(), BlockingStateType.SUBSCRIPTION, "state", "test-service", bC, bE, bB);
+ final BlockingState subscriptionState = new DefaultBlockingState(subscription.getId(), BlockingStateType.SUBSCRIPTION, "state", "test-service", bC, bE, bB, clock.getUTCNow());
Mockito.when(subscription.getBlockingState()).thenReturn(subscriptionState);
blockingStateDao.setBlockingState(subscriptionState, clock, internalCallContext);
}
@@ -93,6 +93,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
blockingChecker.checkBlockedBilling(subscription, internalCallContext);
//BLOCKED SUBSCRIPTION
+ clock.addDays(1);
setStateSubscription(true, false, false);
blockingChecker.checkBlockedEntitlement(subscription, internalCallContext);
blockingChecker.checkBlockedBilling(subscription, internalCallContext);
@@ -103,6 +104,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
//Expected behavior
}
+ clock.addDays(1);
setStateSubscription(false, true, false);
blockingChecker.checkBlockedChange(subscription, internalCallContext);
blockingChecker.checkBlockedBilling(subscription, internalCallContext);
@@ -113,6 +115,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
//Expected behavior
}
+ clock.addDays(1);
setStateSubscription(false, false, true);
blockingChecker.checkBlockedChange(subscription, internalCallContext);
blockingChecker.checkBlockedEntitlement(subscription, internalCallContext);
@@ -124,6 +127,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
}
//BLOCKED BUNDLE
+ clock.addDays(1);
setStateSubscription(false, false, false);
setStateBundle(true, false, false);
blockingChecker.checkBlockedEntitlement(subscription, internalCallContext);
@@ -135,6 +139,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
//Expected behavior
}
+ clock.addDays(1);
setStateBundle(false, true, false);
blockingChecker.checkBlockedChange(subscription, internalCallContext);
blockingChecker.checkBlockedBilling(subscription, internalCallContext);
@@ -145,6 +150,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
//Expected behavior
}
+ clock.addDays(1);
setStateBundle(false, false, true);
blockingChecker.checkBlockedChange(subscription, internalCallContext);
blockingChecker.checkBlockedEntitlement(subscription, internalCallContext);
@@ -156,6 +162,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
}
//BLOCKED ACCOUNT
+ clock.addDays(1);
setStateSubscription(false, false, false);
setStateBundle(false, false, false);
setStateAccount(true, false, false);
@@ -168,6 +175,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
//Expected behavior
}
+ clock.addDays(1);
setStateAccount(false, true, false);
blockingChecker.checkBlockedChange(subscription, internalCallContext);
blockingChecker.checkBlockedBilling(subscription, internalCallContext);
@@ -178,6 +186,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
//Expected behavior
}
+ clock.addDays(1);
setStateAccount(false, false, true);
blockingChecker.checkBlockedChange(subscription, internalCallContext);
blockingChecker.checkBlockedEntitlement(subscription, internalCallContext);
@@ -199,6 +208,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
blockingChecker.checkBlockedBilling(bundle, internalCallContext);
//BLOCKED BUNDLE
+ clock.addDays(1);
setStateSubscription(false, false, false);
setStateBundle(true, false, false);
blockingChecker.checkBlockedEntitlement(bundle, internalCallContext);
@@ -210,6 +220,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
//Expected behavior
}
+ clock.addDays(1);
setStateBundle(false, true, false);
blockingChecker.checkBlockedChange(bundle, internalCallContext);
blockingChecker.checkBlockedBilling(bundle, internalCallContext);
@@ -220,6 +231,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
//Expected behavior
}
+ clock.addDays(1);
setStateBundle(false, false, true);
blockingChecker.checkBlockedChange(bundle, internalCallContext);
blockingChecker.checkBlockedEntitlement(bundle, internalCallContext);
@@ -231,6 +243,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
}
//BLOCKED ACCOUNT
+ clock.addDays(1);
setStateSubscription(false, false, false);
setStateBundle(false, false, false);
setStateAccount(true, false, false);
@@ -243,6 +256,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
//Expected behavior
}
+ clock.addDays(1);
setStateAccount(false, true, false);
blockingChecker.checkBlockedChange(bundle, internalCallContext);
blockingChecker.checkBlockedBilling(bundle, internalCallContext);
@@ -253,6 +267,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
//Expected behavior
}
+ clock.addDays(1);
setStateAccount(false, false, true);
blockingChecker.checkBlockedChange(bundle, internalCallContext);
blockingChecker.checkBlockedEntitlement(bundle, internalCallContext);
@@ -264,9 +279,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
}
}
- /*
- STEPH_ENT
@Test(groups = "fast")
public void testAccountChecker() throws Exception {
setStateAccount(false, false, false);
@@ -277,6 +290,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
blockingChecker.checkBlockedBilling(account, internalCallContext);
//BLOCKED ACCOUNT
+ clock.addDays(1);
setStateSubscription(false, false, false);
setStateBundle(false, false, false);
setStateAccount(true, false, false);
@@ -289,6 +303,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
//Expected behavior
}
+ clock.addDays(1);
setStateAccount(false, true, false);
blockingChecker.checkBlockedChange(account, internalCallContext);
blockingChecker.checkBlockedBilling(account, internalCallContext);
@@ -299,6 +314,7 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
//Expected behavior
}
+ clock.addDays(1);
setStateAccount(false, false, true);
blockingChecker.checkBlockedChange(account, internalCallContext);
blockingChecker.checkBlockedEntitlement(account, internalCallContext);
@@ -309,6 +325,4 @@ public class TestBlockingChecker extends EntitlementTestSuiteNoDB {
//Expected behavior
}
}
-
- */
}
diff --git a/entitlement/src/test/java/com/ning/billing/entitlement/block/TestDefaultBlockingApi.java b/entitlement/src/test/java/com/ning/billing/entitlement/block/TestDefaultBlockingApi.java
index 80607f7..be2bc15 100644
--- a/entitlement/src/test/java/com/ning/billing/entitlement/block/TestDefaultBlockingApi.java
+++ b/entitlement/src/test/java/com/ning/billing/entitlement/block/TestDefaultBlockingApi.java
@@ -37,19 +37,17 @@ public class TestDefaultBlockingApi extends EntitlementTestSuiteWithEmbeddedDB {
getDBI().withHandle(new HandleCallback<Void>() {
@Override
public Void withHandle(final Handle handle) throws Exception {
- handle.execute("DROP TABLE IF EXISTS bundles;\n" +
- "CREATE TABLE bundles (\n" +
- " record_id int(11) unsigned NOT NULL AUTO_INCREMENT,\n" +
- " id char(36) NOT NULL,\n" +
- " external_key varchar(64) NOT NULL,\n" +
- " account_id char(36) NOT NULL,\n" +
- " last_sys_update_date datetime,\n" +
- " account_record_id int(11) unsigned default null,\n" +
- " tenant_record_id int(11) unsigned default null,\n" +
- " PRIMARY KEY(record_id)\n" +
- ") ENGINE=innodb;");
- handle.execute("insert into bundles (id, external_key, account_id, account_record_id) values (?, 'foo', ?, ?)",
- bundleId.toString(), UUID.randomUUID().toString(), internalCallContext.getAccountRecordId());
+ handle.execute("insert into bundles (id, external_key, account_id, created_by, created_date, updated_by, updated_date, account_record_id, tenant_record_id) " +
+ "values (?, ?, ?, ?, ?, ?, ?, ?, ?)",
+ bundleId.toString(),
+ "foo",
+ UUID.randomUUID().toString(),
+ "zozo",
+ internalCallContext.getCreatedDate().toDate(),
+ "zozo",
+ internalCallContext.getCreatedDate().toDate(),
+ internalCallContext.getAccountRecordId(),
+ internalCallContext.getTenantRecordId());
return null;
}
});
diff --git a/entitlement/src/test/java/com/ning/billing/entitlement/dao/MockBlockingStateDao.java b/entitlement/src/test/java/com/ning/billing/entitlement/dao/MockBlockingStateDao.java
index 317c1e1..b284612 100644
--- a/entitlement/src/test/java/com/ning/billing/entitlement/dao/MockBlockingStateDao.java
+++ b/entitlement/src/test/java/com/ning/billing/entitlement/dao/MockBlockingStateDao.java
@@ -55,14 +55,26 @@ public class MockBlockingStateDao implements BlockingStateDao {
@Override
public List<BlockingState> getBlockingState(final UUID blockableId, final InternalTenantContext context) {
- throw new UnsupportedOperationException();
+ final List<BlockingState> blockingStatesForId = blockingStates.get(blockableId);
+ if (blockingStatesForId == null) {
+ return new ArrayList<BlockingState>();
+ }
+
+ final Map<String, BlockingState> tmp = new HashMap<String, BlockingState>();
+ for (BlockingState cur : blockingStatesForId) {
+ final BlockingState curStateForService = tmp.get(cur.getService());
+ if (curStateForService == null || curStateForService.getCreatedDate().compareTo(cur.getCreatedDate()) < 0) {
+ tmp.put(cur.getService(), cur);
+ }
+ }
+ return new ArrayList<BlockingState>(tmp.values());
}
@Override
public List<BlockingState> getBlockingHistoryForService(final UUID overdueableId, final String serviceName, final InternalTenantContext context) {
final List<BlockingState> states = blockingStates.get(overdueableId);
if (states == null) {
- return null;
+ return new ArrayList<BlockingState>();
}
final ImmutableList<BlockingState> filtered = ImmutableList.<BlockingState>copyOf(Collections2.filter(states, new Predicate<BlockingState>() {
@Override
@@ -90,7 +102,7 @@ public class MockBlockingStateDao implements BlockingStateDao {
blockingStates.get(state.getBlockedId()).add(state);
}
- public synchronized <T extends Blockable> void setBlockingStates(final UUID blockedId, final List<BlockingState> states) {
+ public synchronized void setBlockingStates(final UUID blockedId, final List<BlockingState> states) {
blockingStates.put(blockedId, states);
}
diff --git a/entitlement/src/test/java/com/ning/billing/entitlement/dao/TestBlockingDao.java b/entitlement/src/test/java/com/ning/billing/entitlement/dao/TestBlockingDao.java
index a170ac4..6b96444 100644
--- a/entitlement/src/test/java/com/ning/billing/entitlement/dao/TestBlockingDao.java
+++ b/entitlement/src/test/java/com/ning/billing/entitlement/dao/TestBlockingDao.java
@@ -48,13 +48,13 @@ public class TestBlockingDao extends EntitlementTestSuiteWithEmbeddedDB {
clock.setDay(new LocalDate(2012, 4, 1));
- final BlockingState state1 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName, service, blockChange, blockEntitlement, blockBilling);
+ final BlockingState state1 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName, service, blockChange, blockEntitlement, blockBilling, clock.getUTCNow());
blockingStateDao.setBlockingState(state1, clock, internalCallContext);
clock.addDays(1);
final String overdueStateName2 = "NoReallyThisCantGoOn";
- final BlockingState state2 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName2, service, blockChange, blockEntitlement, blockBilling);
+ final BlockingState state2 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName2, service, blockChange, blockEntitlement, blockBilling, clock.getUTCNow());
blockingStateDao.setBlockingState(state2, clock, internalCallContext);
final SubscriptionBaseBundle bundle = Mockito.mock(SubscriptionBaseBundle.class);
@@ -80,14 +80,14 @@ public class TestBlockingDao extends EntitlementTestSuiteWithEmbeddedDB {
final boolean blockEntitlement = false;
final boolean blockBilling = false;
- final BlockingState state1 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName, service1, blockChange, blockEntitlement, blockBilling);
+ final BlockingState state1 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName, service1, blockChange, blockEntitlement, blockBilling, clock.getUTCNow());
blockingStateDao.setBlockingState(state1, clock, internalCallContext);
clock.setDeltaFromReality(1000 * 3600 * 24);
final String service2 = "TEST2";
final String overdueStateName2 = "NoReallyThisCantGoOn";
- final BlockingState state2 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName2, service2, blockChange, blockEntitlement, blockBilling);
+ final BlockingState state2 = new DefaultBlockingState(uuid, BlockingStateType.ACCOUNT, overdueStateName2, service2, blockChange, blockEntitlement, blockBilling, clock.getUTCNow());
blockingStateDao.setBlockingState(state2, clock, internalCallContext);
final SubscriptionBaseBundle bundle = Mockito.mock(SubscriptionBaseBundle.class);
diff --git a/junction/src/main/java/com/ning/billing/junction/plumbing/billing/BlockingCalculator.java b/junction/src/main/java/com/ning/billing/junction/plumbing/billing/BlockingCalculator.java
index a18c0d3..342f0fc 100644
--- a/junction/src/main/java/com/ning/billing/junction/plumbing/billing/BlockingCalculator.java
+++ b/junction/src/main/java/com/ning/billing/junction/plumbing/billing/BlockingCalculator.java
@@ -93,8 +93,8 @@ public class BlockingCalculator {
final SortedSet<BillingEvent> billingEventsToRemove = new TreeSet<BillingEvent>();
for (final UUID bundleId : bundleMap.keySet()) {
- final List<BlockingState> blockingEvents = blockingApi.getBlockingHistoryForService(bundleId, OverdueService.OVERDUE_SERVICE_NAME, context);
- blockingEvents.addAll(blockingApi.getBlockingHistoryForService(account.getId(), OverdueService.OVERDUE_SERVICE_NAME, context));
+ final List<BlockingState> blockingEvents = blockingApi.getBlockingHistory(bundleId, context);
+ blockingEvents.addAll(blockingApi.getBlockingHistory(account.getId(),context));
final List<DisabledDuration> blockingDurations = createBlockingDurations(blockingEvents);
for (final SubscriptionBase subscription : bundleMap.get(bundleId)) {
diff --git a/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBillingApi.java b/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBillingApi.java
index 05e72d8..3f6c3af 100644
--- a/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBillingApi.java
+++ b/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBillingApi.java
@@ -39,7 +39,7 @@ import com.ning.billing.mock.MockSubscription;
import com.ning.billing.subscription.api.SubscriptionBaseTransitionType;
import com.ning.billing.subscription.api.SubscriptionBase;
import com.ning.billing.subscription.api.user.SubscriptionBaseBundle;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.util.api.TagApiException;
import com.ning.billing.util.callcontext.InternalTenantContext;
import com.ning.billing.util.events.EffectiveSubscriptionInternalEvent;
diff --git a/overdue/src/main/java/com/ning/billing/overdue/applicator/OverdueStateApplicator.java b/overdue/src/main/java/com/ning/billing/overdue/applicator/OverdueStateApplicator.java
index 885ec8f..a013e59 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/applicator/OverdueStateApplicator.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/applicator/OverdueStateApplicator.java
@@ -178,7 +178,8 @@ public class OverdueStateApplicator<T extends Blockable> {
OverdueService.OVERDUE_SERVICE_NAME,
blockChanges(nextOverdueState),
blockEntitlement(nextOverdueState),
- blockBilling(nextOverdueState)),
+ blockBilling(nextOverdueState),
+ clock.getUTCNow()),
context);
} catch (Exception e) {
throw new OverdueException(e, ErrorCode.OVERDUE_CAT_ERROR_ENCOUNTERED, blockable.getId(), blockable.getClass().getName());
diff --git a/overdue/src/test/java/com/ning/billing/overdue/config/TestOverdueConfig.java b/overdue/src/test/java/com/ning/billing/overdue/config/TestOverdueConfig.java
index 9465e75..787ee3c 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/config/TestOverdueConfig.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/config/TestOverdueConfig.java
@@ -31,7 +31,7 @@ public class TestOverdueConfig extends OverdueTestSuiteNoDB {
@Test(groups = "fast")
public void testParseConfig() throws Exception {
final String xml = "<overdueConfig>" +
- " <bundleOverdueStates>" +
+ " <accountOverdueStates>" +
" <state name=\"OD1\">" +
" <condition>" +
" <timeSinceEarliestUnpaidInvoiceEqualsOrExceeds>" +
@@ -61,7 +61,7 @@ public class TestOverdueConfig extends OverdueTestSuiteNoDB {
" <subject>ToTo</subject><templateName>Titi</templateName>" +
" </enterStateEmailNotification>" +
" </state>" +
- " </bundleOverdueStates>" +
+ " </accountOverdueStates>" +
"</overdueConfig>";
final InputStream is = new ByteArrayInputStream(xml.getBytes());
final OverdueConfig c = XMLLoader.getObjectFromStreamNoValidation(is, OverdueConfig.class);
diff --git a/overdue/src/test/java/com/ning/billing/overdue/glue/ApplicatorMockJunctionModule.java b/overdue/src/test/java/com/ning/billing/overdue/glue/ApplicatorMockJunctionModule.java
index 99911f9..dfed584 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/glue/ApplicatorMockJunctionModule.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/glue/ApplicatorMockJunctionModule.java
@@ -132,6 +132,16 @@ public class ApplicatorMockJunctionModule extends AbstractModule {
throw new UnsupportedOperationException();
}
+ @Override
+ public List<BlockingState> getBlockingHistory(final Blockable overdueable, final InternalTenantContext context) {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public List<BlockingState> getBlockingHistory(final UUID overdueableId, final InternalTenantContext context) {
+ throw new UnsupportedOperationException();
+ }
+
@Override
public void setBlockingState(final BlockingState state, final InternalCallContext context) {
diff --git a/overdue/src/test/resources/OverdueConfig.xml b/overdue/src/test/resources/OverdueConfig.xml
index 955873e..913ed9d 100644
--- a/overdue/src/test/resources/OverdueConfig.xml
+++ b/overdue/src/test/resources/OverdueConfig.xml
@@ -17,10 +17,10 @@
<overdueConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="CatalogSchema.xsd ">
- <bundleOverdueStates>
+ <accountOverdueStates>
<state name="Clear">
<isClearState>true</isClearState>
</state>
- </bundleOverdueStates>
+ </accountOverdueStates>
</overdueConfig>
diff --git a/subscription/src/main/java/com/ning/billing/subscription/api/svcs/DefaultSubscriptionInternalApi.java b/subscription/src/main/java/com/ning/billing/subscription/api/svcs/DefaultSubscriptionInternalApi.java
index 5b1199d..03a888f 100644
--- a/subscription/src/main/java/com/ning/billing/subscription/api/svcs/DefaultSubscriptionInternalApi.java
+++ b/subscription/src/main/java/com/ning/billing/subscription/api/svcs/DefaultSubscriptionInternalApi.java
@@ -49,7 +49,7 @@ import com.ning.billing.subscription.api.user.SubscriptionBaseApiException;
import com.ning.billing.subscription.api.user.SubscriptionBaseTransition;
import com.ning.billing.subscription.api.user.SubscriptionBuilder;
import com.ning.billing.subscription.api.user.SubscriptionBaseBundle;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.subscription.api.user.SubscriptionStatusDryRun;
import com.ning.billing.subscription.api.user.SubscriptionStatusDryRun.DryRunChangeReason;
import com.ning.billing.subscription.api.user.SubscriptionBaseTransitionData;
diff --git a/subscription/src/main/java/com/ning/billing/subscription/api/timeline/SubscriptionDataRepair.java b/subscription/src/main/java/com/ning/billing/subscription/api/timeline/SubscriptionDataRepair.java
index 1216410..a349beb 100644
--- a/subscription/src/main/java/com/ning/billing/subscription/api/timeline/SubscriptionDataRepair.java
+++ b/subscription/src/main/java/com/ning/billing/subscription/api/timeline/SubscriptionDataRepair.java
@@ -43,7 +43,7 @@ import com.ning.billing.subscription.events.SubscriptionBaseEvent;
import com.ning.billing.subscription.events.SubscriptionBaseEvent.EventType;
import com.ning.billing.subscription.events.user.ApiEventBuilder;
import com.ning.billing.subscription.events.user.ApiEventCancel;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.util.callcontext.CallContext;
import com.ning.billing.util.callcontext.InternalCallContextFactory;
import com.ning.billing.clock.Clock;
diff --git a/subscription/src/main/java/com/ning/billing/subscription/api/transfer/DefaultSubscriptionBaseTransferApi.java b/subscription/src/main/java/com/ning/billing/subscription/api/transfer/DefaultSubscriptionBaseTransferApi.java
index ea2cb92..4dea370 100644
--- a/subscription/src/main/java/com/ning/billing/subscription/api/transfer/DefaultSubscriptionBaseTransferApi.java
+++ b/subscription/src/main/java/com/ning/billing/subscription/api/transfer/DefaultSubscriptionBaseTransferApi.java
@@ -52,7 +52,7 @@ import com.ning.billing.subscription.api.timeline.SubscriptionBaseRepairExceptio
import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline;
import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline.ExistingEvent;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.util.callcontext.CallContext;
import com.ning.billing.util.callcontext.InternalCallContext;
import com.ning.billing.util.callcontext.InternalCallContextFactory;
diff --git a/subscription/src/main/java/com/ning/billing/subscription/api/user/DefaultSubscriptionBaseApiService.java b/subscription/src/main/java/com/ning/billing/subscription/api/user/DefaultSubscriptionBaseApiService.java
index 1c6ee1b..526db3c 100644
--- a/subscription/src/main/java/com/ning/billing/subscription/api/user/DefaultSubscriptionBaseApiService.java
+++ b/subscription/src/main/java/com/ning/billing/subscription/api/user/DefaultSubscriptionBaseApiService.java
@@ -267,7 +267,7 @@ public class DefaultSubscriptionBaseApiService implements SubscriptionBaseApiSer
final DateTime requestedDate = (requestedDateWithMs != null) ? DefaultClock.truncateMs(requestedDateWithMs) : now;
validateRequestedDate(subscription, now, requestedDate);
- validateSubscriptionState(subscription);
+ validateEntitlementState(subscription);
final PlanChangeResult planChangeResult = getPlanChangeResult(subscription, productName, term, priceList, requestedDate);
final BillingActionPolicy policy = planChangeResult.getPolicy();
@@ -287,7 +287,7 @@ public class DefaultSubscriptionBaseApiService implements SubscriptionBaseApiSer
final DateTime requestedDate = (requestedDateWithMs != null) ? DefaultClock.truncateMs(requestedDateWithMs) : now;
validateRequestedDate(subscription, now, requestedDate);
- validateSubscriptionState(subscription);
+ validateEntitlementState(subscription);
final PlanChangeResult planChangeResult = getPlanChangeResult(subscription, productName, term, priceList, requestedDate);
@@ -425,7 +425,7 @@ public class DefaultSubscriptionBaseApiService implements SubscriptionBaseApiSer
}
}
- private void validateSubscriptionState(final DefaultSubscriptionBase subscription) throws SubscriptionBaseApiException {
+ private void validateEntitlementState(final DefaultSubscriptionBase subscription) throws SubscriptionBaseApiException {
final EntitlementState currentState = subscription.getState();
if (currentState != EntitlementState.ACTIVE) {
throw new SubscriptionBaseApiException(ErrorCode.SUB_CHANGE_NON_ACTIVE, subscription.getId(), currentState);
diff --git a/subscription/src/main/java/com/ning/billing/subscription/engine/addon/AddonUtils.java b/subscription/src/main/java/com/ning/billing/subscription/engine/addon/AddonUtils.java
index e930644..6f8ea4b 100644
--- a/subscription/src/main/java/com/ning/billing/subscription/engine/addon/AddonUtils.java
+++ b/subscription/src/main/java/com/ning/billing/subscription/engine/addon/AddonUtils.java
@@ -26,7 +26,7 @@ import com.ning.billing.catalog.api.Product;
import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.subscription.api.user.DefaultSubscriptionBase;
import com.ning.billing.subscription.exceptions.SubscriptionBaseError;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.subscription.api.user.SubscriptionBaseApiException;
import com.google.inject.Inject;
diff --git a/subscription/src/test/java/com/ning/billing/subscription/api/migration/TestMigration.java b/subscription/src/test/java/com/ning/billing/subscription/api/migration/TestMigration.java
index 9cb6168..f9bc411 100644
--- a/subscription/src/test/java/com/ning/billing/subscription/api/migration/TestMigration.java
+++ b/subscription/src/test/java/com/ning/billing/subscription/api/migration/TestMigration.java
@@ -36,7 +36,7 @@ import com.ning.billing.subscription.api.user.SubscriptionBaseTransition;
import com.ning.billing.subscription.api.user.SubscriptionBaseTransitionData;
import com.ning.billing.subscription.events.user.ApiEventType;
import com.ning.billing.subscription.api.SubscriptionBase;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
@@ -69,7 +69,7 @@ public class TestMigration extends SubscriptionTestSuiteWithEmbeddedDB {
assertEquals(subscription.getEndDate(), null);
assertEquals(subscription.getCurrentPriceList().getName(), PriceListSet.DEFAULT_PRICELIST_NAME);
assertEquals(subscription.getCurrentPhase().getPhaseType(), PhaseType.EVERGREEN);
- assertEquals(subscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(subscription.getState(), EntitlementState.ACTIVE);
assertEquals(subscription.getCurrentPlan().getName(), "shotgun-annual");
assertEquals(subscription.getChargedThroughDate(), startDate.plusYears(1));
@@ -106,7 +106,7 @@ public class TestMigration extends SubscriptionTestSuiteWithEmbeddedDB {
assertEquals(baseSubscription.getEndDate(), null);
assertEquals(baseSubscription.getCurrentPriceList().getName(), PriceListSet.DEFAULT_PRICELIST_NAME);
assertEquals(baseSubscription.getCurrentPhase().getPhaseType(), PhaseType.EVERGREEN);
- assertEquals(baseSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(baseSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(baseSubscription.getCurrentPlan().getName(), "shotgun-annual");
assertEquals(baseSubscription.getChargedThroughDate(), initalBPStart.plusYears(1));
@@ -118,7 +118,7 @@ public class TestMigration extends SubscriptionTestSuiteWithEmbeddedDB {
assertEquals(aoSubscription.getEndDate(), null);
assertEquals(aoSubscription.getCurrentPriceList().getName(), PriceListSet.DEFAULT_PRICELIST_NAME);
assertEquals(aoSubscription.getCurrentPhase().getPhaseType(), PhaseType.DISCOUNT);
- assertEquals(aoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(aoSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(aoSubscription.getCurrentPlan().getName(), "telescopic-scope-monthly");
assertEquals(aoSubscription.getChargedThroughDate(), initalAddonStart.plusMonths(1));
@@ -152,7 +152,7 @@ public class TestMigration extends SubscriptionTestSuiteWithEmbeddedDB {
assertTrue(subscription.getStartDate().compareTo(startDate) == 0);
assertEquals(subscription.getCurrentPriceList().getName(), PriceListSet.DEFAULT_PRICELIST_NAME);
assertEquals(subscription.getCurrentPhase().getPhaseType(), PhaseType.EVERGREEN);
- assertEquals(subscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(subscription.getState(), EntitlementState.ACTIVE);
assertEquals(subscription.getCurrentPlan().getName(), "assault-rifle-annual");
assertEquals(subscription.getChargedThroughDate(), startDate.plusYears(1));
@@ -168,7 +168,7 @@ public class TestMigration extends SubscriptionTestSuiteWithEmbeddedDB {
assertNotNull(subscription.getEndDate());
assertEquals(subscription.getCurrentPriceList().getName(), PriceListSet.DEFAULT_PRICELIST_NAME);
assertEquals(subscription.getCurrentPhase(), null);
- assertEquals(subscription.getState(), SubscriptionState.CANCELLED);
+ assertEquals(subscription.getState(), EntitlementState.CANCELLED);
assertNull(subscription.getCurrentPlan());
assertListenerStatus();
@@ -199,7 +199,7 @@ public class TestMigration extends SubscriptionTestSuiteWithEmbeddedDB {
assertEquals(subscription.getEndDate(), null);
assertEquals(subscription.getCurrentPriceList().getName(), PriceListSet.DEFAULT_PRICELIST_NAME);
assertEquals(subscription.getCurrentPhase().getPhaseType(), PhaseType.TRIAL);
- assertEquals(subscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(subscription.getState(), EntitlementState.ACTIVE);
assertEquals(subscription.getCurrentPlan().getName(), "assault-rifle-monthly");
assertEquals(subscription.getChargedThroughDate(), trialDate.plusDays(30));
@@ -214,7 +214,7 @@ public class TestMigration extends SubscriptionTestSuiteWithEmbeddedDB {
assertEquals(subscription.getEndDate(), null);
assertEquals(subscription.getCurrentPriceList().getName(), PriceListSet.DEFAULT_PRICELIST_NAME);
assertEquals(subscription.getCurrentPhase().getPhaseType(), PhaseType.EVERGREEN);
- assertEquals(subscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(subscription.getState(), EntitlementState.ACTIVE);
assertEquals(subscription.getCurrentPlan().getName(), "assault-rifle-monthly");
assertEquals(subscription.getCurrentPhase().getName(), "assault-rifle-monthly-evergreen");
@@ -246,7 +246,7 @@ public class TestMigration extends SubscriptionTestSuiteWithEmbeddedDB {
assertEquals(subscription.getEndDate(), null);
assertEquals(subscription.getCurrentPriceList().getName(), PriceListSet.DEFAULT_PRICELIST_NAME);
assertEquals(subscription.getCurrentPhase().getPhaseType(), PhaseType.EVERGREEN);
- assertEquals(subscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(subscription.getState(), EntitlementState.ACTIVE);
assertEquals(subscription.getCurrentPlan().getName(), "assault-rifle-monthly");
testListener.pushExpectedEvent(NextEvent.CHANGE);
@@ -261,7 +261,7 @@ public class TestMigration extends SubscriptionTestSuiteWithEmbeddedDB {
assertEquals(subscription.getCurrentPriceList().getName(), PriceListSet.DEFAULT_PRICELIST_NAME);
assertEquals(subscription.getCurrentPhase().getPhaseType(), PhaseType.EVERGREEN);
- assertEquals(subscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(subscription.getState(), EntitlementState.ACTIVE);
assertEquals(subscription.getCurrentPlan().getName(), "shotgun-annual");
assertListenerStatus();
diff --git a/subscription/src/test/java/com/ning/billing/subscription/api/TestEventJson.java b/subscription/src/test/java/com/ning/billing/subscription/api/TestEventJson.java
index 8d1b4ad..ba5b55f 100644
--- a/subscription/src/test/java/com/ning/billing/subscription/api/TestEventJson.java
+++ b/subscription/src/test/java/com/ning/billing/subscription/api/TestEventJson.java
@@ -26,7 +26,7 @@ import com.ning.billing.GuicyKillbillTestSuiteNoDB;
import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.subscription.api.timeline.DefaultRepairSubscriptionEvent;
import com.ning.billing.subscription.api.user.DefaultEffectiveSubscriptionEvent;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.util.events.EffectiveSubscriptionInternalEvent;
import com.ning.billing.util.events.RepairSubscriptionInternalEvent;
import com.ning.billing.util.jackson.ObjectMapper;
diff --git a/subscription/src/test/java/com/ning/billing/subscription/api/timeline/TestRepairBP.java b/subscription/src/test/java/com/ning/billing/subscription/api/timeline/TestRepairBP.java
index b293a5a..a7d293d 100644
--- a/subscription/src/test/java/com/ning/billing/subscription/api/timeline/TestRepairBP.java
+++ b/subscription/src/test/java/com/ning/billing/subscription/api/timeline/TestRepairBP.java
@@ -44,7 +44,7 @@ import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline.Delet
import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline.ExistingEvent;
import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline.NewEvent;
import com.ning.billing.subscription.api.SubscriptionBase;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.subscription.api.user.SubscriptionBaseApiException;
import static org.testng.Assert.assertEquals;
@@ -197,7 +197,7 @@ public class TestRepairBP extends SubscriptionTestSuiteWithEmbeddedDB {
assertEquals(realRunBaseSubscription.getBundleId(), bundle.getId());
assertEquals(realRunBaseSubscription.getStartDate(), startDate);
- assertEquals(realRunBaseSubscription.getState(), SubscriptionState.CANCELLED);
+ assertEquals(realRunBaseSubscription.getState(), EntitlementState.CANCELLED);
assertListenerStatus();
}
diff --git a/subscription/src/test/java/com/ning/billing/subscription/api/timeline/TestRepairWithAO.java b/subscription/src/test/java/com/ning/billing/subscription/api/timeline/TestRepairWithAO.java
index d66a27b..da293b0 100644
--- a/subscription/src/test/java/com/ning/billing/subscription/api/timeline/TestRepairWithAO.java
+++ b/subscription/src/test/java/com/ning/billing/subscription/api/timeline/TestRepairWithAO.java
@@ -39,7 +39,7 @@ import com.ning.billing.subscription.api.user.SubscriptionEvents;
import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline.DeletedEvent;
import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline.ExistingEvent;
import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline.NewEvent;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
@@ -141,17 +141,17 @@ public class TestRepairWithAO extends SubscriptionTestSuiteWithEmbeddedDB {
}
DefaultSubscriptionBase newAoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(newAoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newAoSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newAoSubscription.getAllTransitions().size(), 2);
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION);
DefaultSubscriptionBase newAoSubscription2 = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription2.getId(), internalCallContext);
- assertEquals(newAoSubscription2.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newAoSubscription2.getState(), EntitlementState.ACTIVE);
assertEquals(newAoSubscription2.getAllTransitions().size(), 2);
assertEquals(newAoSubscription2.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION);
DefaultSubscriptionBase newBaseSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(baseSubscription.getId(), internalCallContext);
- assertEquals(newBaseSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newBaseSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newBaseSubscription.getAllTransitions().size(), 2);
assertEquals(newBaseSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION);
@@ -182,17 +182,17 @@ public class TestRepairWithAO extends SubscriptionTestSuiteWithEmbeddedDB {
}
newAoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(newAoSubscription.getState(), SubscriptionState.CANCELLED);
+ assertEquals(newAoSubscription.getState(), EntitlementState.CANCELLED);
assertEquals(newAoSubscription.getAllTransitions().size(), 2);
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
newAoSubscription2 = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription2.getId(), internalCallContext);
- assertEquals(newAoSubscription2.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newAoSubscription2.getState(), EntitlementState.ACTIVE);
assertEquals(newAoSubscription2.getAllTransitions().size(), 2);
assertEquals(newAoSubscription2.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
newBaseSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(baseSubscription.getId(), internalCallContext);
- assertEquals(newBaseSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newBaseSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newBaseSubscription.getAllTransitions().size(), 3);
assertEquals(newBaseSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
}
@@ -275,12 +275,12 @@ public class TestRepairWithAO extends SubscriptionTestSuiteWithEmbeddedDB {
}
DefaultSubscriptionBase newAoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(newAoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newAoSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newAoSubscription.getAllTransitions().size(), 2);
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION);
DefaultSubscriptionBase newBaseSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(baseSubscription.getId(), internalCallContext);
- assertEquals(newBaseSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newBaseSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newBaseSubscription.getAllTransitions().size(), 2);
assertEquals(newBaseSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION);
@@ -306,12 +306,12 @@ public class TestRepairWithAO extends SubscriptionTestSuiteWithEmbeddedDB {
}
newAoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(newAoSubscription.getState(), SubscriptionState.CANCELLED);
+ assertEquals(newAoSubscription.getState(), EntitlementState.CANCELLED);
assertEquals(newAoSubscription.getAllTransitions().size(), 3);
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
newBaseSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(baseSubscription.getId(), internalCallContext);
- assertEquals(newBaseSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newBaseSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newBaseSubscription.getAllTransitions().size(), 3);
assertEquals(newBaseSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
}
@@ -396,12 +396,12 @@ public class TestRepairWithAO extends SubscriptionTestSuiteWithEmbeddedDB {
}
DefaultSubscriptionBase newAoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(newAoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newAoSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newAoSubscription.getAllTransitions().size(), 2);
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION);
DefaultSubscriptionBase newBaseSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(baseSubscription.getId(), internalCallContext);
- assertEquals(newBaseSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newBaseSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newBaseSubscription.getAllTransitions().size(), 2);
assertEquals(newBaseSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION);
@@ -427,12 +427,12 @@ public class TestRepairWithAO extends SubscriptionTestSuiteWithEmbeddedDB {
}
newAoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(newAoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newAoSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newAoSubscription.getAllTransitions().size(), 3);
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
newBaseSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(baseSubscription.getId(), internalCallContext);
- assertEquals(newBaseSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newBaseSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newBaseSubscription.getAllTransitions().size(), 3);
assertEquals(newBaseSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
@@ -445,12 +445,12 @@ public class TestRepairWithAO extends SubscriptionTestSuiteWithEmbeddedDB {
assertTrue(testListener.isCompleted(7000));
newAoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(newAoSubscription.getState(), SubscriptionState.CANCELLED);
+ assertEquals(newAoSubscription.getState(), EntitlementState.CANCELLED);
assertEquals(newAoSubscription.getAllTransitions().size(), 3);
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
newBaseSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(baseSubscription.getId(), internalCallContext);
- assertEquals(newBaseSubscription.getState(), SubscriptionState.CANCELLED);
+ assertEquals(newBaseSubscription.getState(), EntitlementState.CANCELLED);
assertEquals(newBaseSubscription.getAllTransitions().size(), 3);
assertEquals(newBaseSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
}
@@ -513,12 +513,12 @@ public class TestRepairWithAO extends SubscriptionTestSuiteWithEmbeddedDB {
testUtil.validateExistingEventForAssertion(e, aoRepair.getExistingEvents().get(index++));
}
DefaultSubscriptionBase newAoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(newAoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newAoSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newAoSubscription.getAllTransitions().size(), 2);
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION);
DefaultSubscriptionBase newBaseSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(baseSubscription.getId(), internalCallContext);
- assertEquals(newBaseSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newBaseSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newBaseSubscription.getAllTransitions().size(), 2);
assertEquals(newBaseSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION);
@@ -535,12 +535,12 @@ public class TestRepairWithAO extends SubscriptionTestSuiteWithEmbeddedDB {
}
newAoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(newAoSubscription.getState(), SubscriptionState.CANCELLED);
+ assertEquals(newAoSubscription.getState(), EntitlementState.CANCELLED);
assertEquals(newAoSubscription.getAllTransitions().size(), 2);
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
newBaseSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(baseSubscription.getId(), internalCallContext);
- assertEquals(newBaseSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newBaseSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newBaseSubscription.getAllTransitions().size(), 2);
assertEquals(newBaseSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION);
}
@@ -602,7 +602,7 @@ public class TestRepairWithAO extends SubscriptionTestSuiteWithEmbeddedDB {
testUtil.validateExistingEventForAssertion(e, aoRepair.getExistingEvents().get(index++));
}
DefaultSubscriptionBase newAoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(newAoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newAoSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newAoSubscription.getAllTransitions().size(), 2);
assertEquals(newAoSubscription.getStartDate(), aoSubscription.getStartDate());
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION);
@@ -621,7 +621,7 @@ public class TestRepairWithAO extends SubscriptionTestSuiteWithEmbeddedDB {
}
newAoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(newAoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newAoSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newAoSubscription.getAllTransitions().size(), 2);
assertEquals(newAoSubscription.getStartDate(), aoRecreateDate);
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
@@ -695,7 +695,7 @@ public class TestRepairWithAO extends SubscriptionTestSuiteWithEmbeddedDB {
testUtil.validateExistingEventForAssertion(e, aoRepair.getExistingEvents().get(index++));
}
DefaultSubscriptionBase newAoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(newAoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newAoSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newAoSubscription.getAllTransitions().size(), 2);
// AND NOW COMMIT
@@ -712,7 +712,7 @@ public class TestRepairWithAO extends SubscriptionTestSuiteWithEmbeddedDB {
}
newAoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(newAoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(newAoSubscription.getState(), EntitlementState.ACTIVE);
assertEquals(newAoSubscription.getAllTransitions().size(), 3);
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
diff --git a/subscription/src/test/java/com/ning/billing/subscription/api/transfer/TestTransfer.java b/subscription/src/test/java/com/ning/billing/subscription/api/transfer/TestTransfer.java
index 0e16f92..ade6d63 100644
--- a/subscription/src/test/java/com/ning/billing/subscription/api/transfer/TestTransfer.java
+++ b/subscription/src/test/java/com/ning/billing/subscription/api/transfer/TestTransfer.java
@@ -39,7 +39,7 @@ import com.ning.billing.subscription.api.user.DefaultSubscriptionBase;
import com.ning.billing.subscription.api.user.SubscriptionBaseBundle;
import com.ning.billing.subscription.api.SubscriptionBaseTransitionType;
import com.ning.billing.subscription.api.SubscriptionBase;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
@@ -77,7 +77,7 @@ public class TestTransfer extends SubscriptionTestSuiteWithEmbeddedDB {
assertEquals(subscription.getEndDate(), null);
assertEquals(subscription.getCurrentPriceList().getName(), PriceListSet.DEFAULT_PRICELIST_NAME);
assertEquals(subscription.getCurrentPhase().getPhaseType(), PhaseType.EVERGREEN);
- assertEquals(subscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(subscription.getState(), EntitlementState.ACTIVE);
assertEquals(subscription.getCurrentPlan().getName(), "shotgun-annual");
assertEquals(subscription.getChargedThroughDate(), startDate.plusYears(1));
// WE should see MIGRATE_ENTITLEMENT and then MIGRATE_BILLING in the future
@@ -355,7 +355,7 @@ public class TestTransfer extends SubscriptionTestSuiteWithEmbeddedDB {
final String aoProduct1 = "Telescopic-Scope";
final BillingPeriod aoTerm1 = BillingPeriod.MONTHLY;
final DefaultSubscriptionBase aoSubscription1 = testUtil.createSubscription(bundle, aoProduct1, aoTerm1, basePriceList);
- assertEquals(aoSubscription1.getState(), SubscriptionState.ACTIVE);
+ assertEquals(aoSubscription1.getState(), EntitlementState.ACTIVE);
// MOVE ANOTHER 25 DAYS AND CREATE AO2 [ BP STILL IN TRIAL]
// LASER-SCOPE IS SUBSCRIPTION ALIGN SO EVERGREN WILL ONLY START IN A MONTH
@@ -363,7 +363,7 @@ public class TestTransfer extends SubscriptionTestSuiteWithEmbeddedDB {
final String aoProduct2 = "Laser-Scope";
final BillingPeriod aoTerm2 = BillingPeriod.MONTHLY;
final DefaultSubscriptionBase aoSubscription2 = testUtil.createSubscription(bundle, aoProduct2, aoTerm2, basePriceList);
- assertEquals(aoSubscription2.getState(), SubscriptionState.ACTIVE);
+ assertEquals(aoSubscription2.getState(), EntitlementState.ACTIVE);
// MOVE AFTER TRIAL AND AO DISCOUNT PHASE [LASER SCOPE STILL IN DISCOUNT]
testListener.pushExpectedEvent(NextEvent.PHASE);
@@ -449,7 +449,7 @@ public class TestTransfer extends SubscriptionTestSuiteWithEmbeddedDB {
final String aoProduct1 = "Telescopic-Scope";
final BillingPeriod aoTerm1 = BillingPeriod.MONTHLY;
final DefaultSubscriptionBase aoSubscription1 = testUtil.createSubscription(bundle, aoProduct1, aoTerm1, basePriceList);
- assertEquals(aoSubscription1.getState(), SubscriptionState.ACTIVE);
+ assertEquals(aoSubscription1.getState(), EntitlementState.ACTIVE);
testListener.pushExpectedEvent(NextEvent.PHASE);
testListener.pushExpectedEvent(NextEvent.PHASE);
diff --git a/subscription/src/test/java/com/ning/billing/subscription/api/user/TestUserApiAddOn.java b/subscription/src/test/java/com/ning/billing/subscription/api/user/TestUserApiAddOn.java
index 5ed83c8..8d9e597 100644
--- a/subscription/src/test/java/com/ning/billing/subscription/api/user/TestUserApiAddOn.java
+++ b/subscription/src/test/java/com/ning/billing/subscription/api/user/TestUserApiAddOn.java
@@ -40,6 +40,7 @@ import com.ning.billing.catalog.api.PlanPhase;
import com.ning.billing.catalog.api.PlanSpecifier;
import com.ning.billing.catalog.api.PriceListSet;
import com.ning.billing.catalog.api.ProductCategory;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.subscription.SubscriptionTestSuiteWithEmbeddedDB;
import com.ning.billing.subscription.api.SubscriptionBaseTransitionType;
import com.ning.billing.subscription.api.user.SubscriptionStatusDryRun.DryRunChangeReason;
@@ -60,7 +61,7 @@ public class TestUserApiAddOn extends SubscriptionTestSuiteWithEmbeddedDB {
final String aoPriceList = PriceListSet.DEFAULT_PRICELIST_NAME;
DefaultSubscriptionBase aoSubscription = testUtil.createSubscription(bundle, aoProduct, aoTerm, aoPriceList);
- assertEquals(aoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(aoSubscription.getState(), EntitlementState.ACTIVE);
testListener.pushExpectedEvent(NextEvent.CANCEL);
final DateTime now = clock.getUTCNow();
@@ -68,7 +69,7 @@ public class TestUserApiAddOn extends SubscriptionTestSuiteWithEmbeddedDB {
assertTrue(testListener.isCompleted(5000));
aoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(aoSubscription.getState(), SubscriptionState.CANCELLED);
+ assertEquals(aoSubscription.getState(), EntitlementState.CANCELLED);
assertListenerStatus();
@@ -91,7 +92,7 @@ public class TestUserApiAddOn extends SubscriptionTestSuiteWithEmbeddedDB {
final String aoPriceList = PriceListSet.DEFAULT_PRICELIST_NAME;
DefaultSubscriptionBase aoSubscription = testUtil.createSubscription(bundle, aoProduct, aoTerm, aoPriceList);
- assertEquals(aoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(aoSubscription.getState(), EntitlementState.ACTIVE);
// Move clock after a month
Interval it = new Interval(clock.getUTCNow(), clock.getUTCNow().plusMonths(1));
@@ -120,13 +121,13 @@ public class TestUserApiAddOn extends SubscriptionTestSuiteWithEmbeddedDB {
// CANCEL AO
aoSubscription.cancel(clock.getUTCNow(), callContext);
aoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(aoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(aoSubscription.getState(), EntitlementState.ACTIVE);
assertTrue(aoSubscription.isSubscriptionFutureCancelled());
// CANCEL BASE NOW
baseSubscription.cancel(clock.getUTCNow(), callContext);
baseSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(baseSubscription.getId(), internalCallContext);
- assertEquals(baseSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(baseSubscription.getState(), EntitlementState.ACTIVE);
assertTrue(baseSubscription.isSubscriptionFutureCancelled());
aoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
@@ -196,7 +197,7 @@ public class TestUserApiAddOn extends SubscriptionTestSuiteWithEmbeddedDB {
// REFETCH AO SUBSCRIPTION AND CHECK THIS IS ACTIVE
aoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(aoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(aoSubscription.getState(), EntitlementState.ACTIVE);
assertTrue(aoSubscription.isSubscriptionFutureCancelled());
// MOVE AFTER CANCELLATION
@@ -210,7 +211,7 @@ public class TestUserApiAddOn extends SubscriptionTestSuiteWithEmbeddedDB {
// REFETCH AO SUBSCRIPTION AND CHECK THIS IS CANCELLED
aoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(aoSubscription.getState(), SubscriptionState.CANCELLED);
+ assertEquals(aoSubscription.getState(), EntitlementState.CANCELLED);
assertListenerStatus();
@@ -258,7 +259,7 @@ public class TestUserApiAddOn extends SubscriptionTestSuiteWithEmbeddedDB {
// REFETCH AO SUBSCRIPTION AND CHECK THIS IS ACTIVE
aoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(aoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(aoSubscription.getState(), EntitlementState.ACTIVE);
assertTrue(aoSubscription.isSubscriptionFutureCancelled());
@@ -269,7 +270,7 @@ public class TestUserApiAddOn extends SubscriptionTestSuiteWithEmbeddedDB {
assertTrue(testListener.isCompleted(5000));
aoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(aoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(aoSubscription.getState(), EntitlementState.ACTIVE);
assertFalse(aoSubscription.isSubscriptionFutureCancelled());
// CANCEL AGAIN
@@ -279,11 +280,11 @@ public class TestUserApiAddOn extends SubscriptionTestSuiteWithEmbeddedDB {
baseSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(baseSubscription.getId(), internalCallContext);
baseSubscription.cancel(clock.getUTCNow(), callContext);
baseSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(baseSubscription.getId(), internalCallContext);
- assertEquals(baseSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(baseSubscription.getState(), EntitlementState.ACTIVE);
assertTrue(baseSubscription.isSubscriptionFutureCancelled());
aoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(aoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(aoSubscription.getState(), EntitlementState.ACTIVE);
assertTrue(aoSubscription.isSubscriptionFutureCancelled());
assertListenerStatus();
@@ -350,7 +351,7 @@ public class TestUserApiAddOn extends SubscriptionTestSuiteWithEmbeddedDB {
// REFETCH AO SUBSCRIPTION AND CHECK THIS CANCELLED
aoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(aoSubscription.getState(), SubscriptionState.CANCELLED);
+ assertEquals(aoSubscription.getState(), EntitlementState.CANCELLED);
assertListenerStatus();
} catch (Exception e) {
@@ -409,7 +410,7 @@ public class TestUserApiAddOn extends SubscriptionTestSuiteWithEmbeddedDB {
// REFETCH AO SUBSCRIPTION AND CHECK THIS IS ACTIVE
aoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(aoSubscription.getState(), SubscriptionState.ACTIVE);
+ assertEquals(aoSubscription.getState(), EntitlementState.ACTIVE);
assertTrue(aoSubscription.isSubscriptionFutureCancelled());
// MOVE AFTER CHANGE
@@ -422,7 +423,7 @@ public class TestUserApiAddOn extends SubscriptionTestSuiteWithEmbeddedDB {
// REFETCH AO SUBSCRIPTION AND CHECK THIS CANCELLED
aoSubscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(aoSubscription.getId(), internalCallContext);
- assertEquals(aoSubscription.getState(), SubscriptionState.CANCELLED);
+ assertEquals(aoSubscription.getState(), EntitlementState.CANCELLED);
assertListenerStatus();
} catch (Exception e) {
diff --git a/subscription/src/test/java/com/ning/billing/subscription/api/user/TestUserApiCancel.java b/subscription/src/test/java/com/ning/billing/subscription/api/user/TestUserApiCancel.java
index 40b6335..1bcf3fb 100644
--- a/subscription/src/test/java/com/ning/billing/subscription/api/user/TestUserApiCancel.java
+++ b/subscription/src/test/java/com/ning/billing/subscription/api/user/TestUserApiCancel.java
@@ -28,6 +28,7 @@ import com.ning.billing.catalog.api.PhaseType;
import com.ning.billing.catalog.api.Plan;
import com.ning.billing.catalog.api.PlanPhase;
import com.ning.billing.catalog.api.PriceListSet;
+import com.ning.billing.catalog.api.ProductCategory;
import com.ning.billing.subscription.SubscriptionTestSuiteWithEmbeddedDB;
import com.ning.billing.util.svcapi.subscription.SubscriptionBillingApiException;
@@ -59,10 +60,10 @@ public class TestUserApiCancel extends SubscriptionTestSuiteWithEmbeddedDB {
final DateTime future = clock.getUTCNow();
testListener.pushExpectedEvent(NextEvent.CANCEL);
- assertEquals(subscription.getLastActiveProduct(), prod);
- assertEquals(subscription.getLastActivePriceList(), planSet);
- assertEquals(subscription.getLastActiveBillingPeriod(), term.toString());
- assertEquals(subscription.getLastActiveCategory(), "BASE");
+ assertEquals(subscription.getLastActiveProduct().getName(), prod);
+ assertEquals(subscription.getLastActivePriceList().getName(), planSet);
+ assertEquals(subscription.getLastActiveBillingPeriod(), term);
+ assertEquals(subscription.getLastActiveCategory(), ProductCategory.BASE);
// CANCEL in trial period to get IMM policy
@@ -70,10 +71,10 @@ public class TestUserApiCancel extends SubscriptionTestSuiteWithEmbeddedDB {
currentPhase = subscription.getCurrentPhase();
testListener.isCompleted(3000);
- assertEquals(subscription.getLastActiveProduct(), prod);
- assertEquals(subscription.getLastActivePriceList(), planSet);
- assertEquals(subscription.getLastActiveBillingPeriod(), term.toString());
- assertEquals(subscription.getLastActiveCategory(), "BASE");
+ assertEquals(subscription.getLastActiveProduct().getName(), prod);
+ assertEquals(subscription.getLastActivePriceList().getName(), planSet);
+ assertEquals(subscription.getLastActiveBillingPeriod(), term);
+ assertEquals(subscription.getLastActiveCategory(), ProductCategory.BASE);
assertNull(currentPhase);
@@ -116,10 +117,10 @@ public class TestUserApiCancel extends SubscriptionTestSuiteWithEmbeddedDB {
subscriptionInternalApi.setChargedThroughDate(subscription.getId(), newChargedThroughDate, internalCallContext);
subscription = (DefaultSubscriptionBase) subscriptionInternalApi.getSubscriptionFromId(subscription.getId(), internalCallContext);
- assertEquals(subscription.getLastActiveProduct(), prod);
- assertEquals(subscription.getLastActivePriceList(), planSet);
- assertEquals(subscription.getLastActiveBillingPeriod(), term.toString());
- assertEquals(subscription.getLastActiveCategory(), "BASE");
+ assertEquals(subscription.getLastActiveProduct().getName(), prod);
+ assertEquals(subscription.getLastActivePriceList().getName(), planSet);
+ assertEquals(subscription.getLastActiveBillingPeriod(), term);
+ assertEquals(subscription.getLastActiveCategory(), ProductCategory.BASE);
// CANCEL
testListener.setNonExpectedMode();
@@ -129,10 +130,10 @@ public class TestUserApiCancel extends SubscriptionTestSuiteWithEmbeddedDB {
testListener.reset();
- assertEquals(subscription.getLastActiveProduct(), prod);
- assertEquals(subscription.getLastActivePriceList(), planSet);
- assertEquals(subscription.getLastActiveBillingPeriod(), term.toString());
- assertEquals(subscription.getLastActiveCategory(), "BASE");
+ assertEquals(subscription.getLastActiveProduct().getName(), prod);
+ assertEquals(subscription.getLastActivePriceList().getName(), planSet);
+ assertEquals(subscription.getLastActiveBillingPeriod(), term);
+ assertEquals(subscription.getLastActiveCategory(), ProductCategory.BASE);
final DateTime futureEndDate = subscription.getFutureEndDate();
Assert.assertNotNull(futureEndDate);
@@ -150,10 +151,10 @@ public class TestUserApiCancel extends SubscriptionTestSuiteWithEmbeddedDB {
assertNull(currentPhase);
testUtil.checkNextPhaseChange(subscription, 0, null);
- assertEquals(subscription.getLastActiveProduct(), prod);
- assertEquals(subscription.getLastActivePriceList(), planSet);
- assertEquals(subscription.getLastActiveBillingPeriod(), term.toString());
- assertEquals(subscription.getLastActiveCategory(), "BASE");
+ assertEquals(subscription.getLastActiveProduct().getName(), prod);
+ assertEquals(subscription.getLastActivePriceList().getName(), planSet);
+ assertEquals(subscription.getLastActiveBillingPeriod(), term);
+ assertEquals(subscription.getLastActiveCategory(), ProductCategory.BASE);
assertListenerStatus();
diff --git a/util/src/main/java/com/ning/billing/util/events/SubscriptionInternalEvent.java b/util/src/main/java/com/ning/billing/util/events/SubscriptionInternalEvent.java
index 2d71d09..19b8edc 100644
--- a/util/src/main/java/com/ning/billing/util/events/SubscriptionInternalEvent.java
+++ b/util/src/main/java/com/ning/billing/util/events/SubscriptionInternalEvent.java
@@ -22,7 +22,7 @@ import org.joda.time.DateTime;
import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.subscription.api.SubscriptionBaseTransitionType;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
public interface SubscriptionInternalEvent extends BusInternalEvent {
UUID getId();
diff --git a/util/src/main/java/com/ning/billing/util/svcapi/junction/BlockingInternalApi.java b/util/src/main/java/com/ning/billing/util/svcapi/junction/BlockingInternalApi.java
index d4a7f84..6b5cf5c 100644
--- a/util/src/main/java/com/ning/billing/util/svcapi/junction/BlockingInternalApi.java
+++ b/util/src/main/java/com/ning/billing/util/svcapi/junction/BlockingInternalApi.java
@@ -34,6 +34,10 @@ public interface BlockingInternalApi {
public List<BlockingState> getBlockingHistoryForService(UUID overdueableId, String serviceName, InternalTenantContext context);
+ public List<BlockingState> getBlockingHistory(Blockable overdueable, InternalTenantContext context);
+
+ public List<BlockingState> getBlockingHistory(UUID overdueableId, InternalTenantContext context);
+
public void setBlockingState(BlockingState state, InternalCallContext context);
}
diff --git a/util/src/main/java/com/ning/billing/util/svcapi/junction/DefaultBlockingState.java b/util/src/main/java/com/ning/billing/util/svcapi/junction/DefaultBlockingState.java
index a340815..c2b532d 100644
--- a/util/src/main/java/com/ning/billing/util/svcapi/junction/DefaultBlockingState.java
+++ b/util/src/main/java/com/ning/billing/util/svcapi/junction/DefaultBlockingState.java
@@ -20,6 +20,7 @@ import java.util.UUID;
import org.joda.time.DateTime;
+import com.ning.billing.clock.Clock;
import com.ning.billing.entitlement.api.BlockingState;
import com.ning.billing.entitlement.api.BlockingStateType;
import com.ning.billing.util.entity.EntityBase;
@@ -40,10 +41,10 @@ public class DefaultBlockingState extends EntityBase implements BlockingState {
private final DateTime timestamp;
private final BlockingStateType type;
- public static BlockingState getClearState(final BlockingStateType type) {
+ public static BlockingState getClearState(final BlockingStateType type, final Clock clock) {
if (clearState == null) {
// STEPH_ENT should we not always have a service name?
- clearState = new DefaultBlockingState(null, type, CLEAR_STATE_NAME, null, false, false, false);
+ clearState = new DefaultBlockingState(null, null, type, CLEAR_STATE_NAME, null, false, false, false, clock.getUTCNow(), clock.getUTCNow());
}
return clearState;
}
@@ -59,7 +60,7 @@ public class DefaultBlockingState extends EntityBase implements BlockingState {
final boolean blockBilling,
final DateTime createDate,
final DateTime updatedDate) {
- super(id, createDate, null);
+ super(id, createDate, updatedDate);
this.blockingId = blockingId;
this.type = type;
this.stateName = stateName;
@@ -67,16 +68,16 @@ public class DefaultBlockingState extends EntityBase implements BlockingState {
this.blockChange = blockChange;
this.blockEntitlement = blockEntitlement;
this.blockBilling = blockBilling;
- this.timestamp = updatedDate;
+ this.timestamp = createDate;
}
-
public DefaultBlockingState(final UUID blockingId,
final BlockingStateType type,
final String stateName,
final String service,
final boolean blockChange,
final boolean blockEntitlement,
- final boolean blockBilling) {
+ final boolean blockBilling,
+ final DateTime createDate) {
this(UUID.randomUUID(),
blockingId,
type,
@@ -85,8 +86,8 @@ public class DefaultBlockingState extends EntityBase implements BlockingState {
blockChange,
blockEntitlement,
blockBilling,
- null,
- null);
+ createDate,
+ createDate);
}
@Override
diff --git a/util/src/test/java/com/ning/billing/mock/MockAccountBuilder.java b/util/src/test/java/com/ning/billing/mock/MockAccountBuilder.java
index 760137b..189548f 100644
--- a/util/src/test/java/com/ning/billing/mock/MockAccountBuilder.java
+++ b/util/src/test/java/com/ning/billing/mock/MockAccountBuilder.java
@@ -322,7 +322,7 @@ public class MockAccountBuilder {
@Override
public BlockingState getBlockingState() {
- return DefaultBlockingState.getClearState(BlockingStateType.ACCOUNT);
+ return null; // STEPH_ENT do we need it ? DefaultBlockingState.getClearState(BlockingStateType.ACCOUNT, );
}
@Override
diff --git a/util/src/test/java/com/ning/billing/mock/MockEffectiveSubscriptionEvent.java b/util/src/test/java/com/ning/billing/mock/MockEffectiveSubscriptionEvent.java
index 4658e5a..67e4066 100644
--- a/util/src/test/java/com/ning/billing/mock/MockEffectiveSubscriptionEvent.java
+++ b/util/src/test/java/com/ning/billing/mock/MockEffectiveSubscriptionEvent.java
@@ -22,7 +22,7 @@ import org.joda.time.DateTime;
import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.subscription.api.SubscriptionBaseTransitionType;
-import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
import com.ning.billing.util.events.BusEventBase;
import com.ning.billing.util.events.EffectiveSubscriptionInternalEvent;