killbill-uncached
Changes
.gitignore 1(+1 -0)
.idea/codeStyleSettings.xml 3(+3 -0)
.idea/compiler.xml 2(+2 -0)
.idea/copyright/apache.xml 2(+1 -1)
.idea/encodings.xml 1(+1 -0)
.idea/libraries/Maven__com_ning_billing_killbill_entitlement_test_jar_tests_0_3_4_SNAPSHOT.xml 13(+13 -0)
.idea/modules.xml 1(+1 -0)
account/killbill-account.iml 3(+2 -1)
api/killbill-internal-api.iml 3(+2 -1)
api/src/main/java/com/ning/billing/subscription/api/migration/SubscriptionMigrationApi.java 38(+19 -19)
api/src/main/java/com/ning/billing/subscription/api/migration/SubscriptionMigrationApiException.java 12(+6 -6)
beatrix/killbill-beatrix.iml 4(+3 -1)
beatrix/pom.xml 4(+4 -0)
beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyPaymentPlugin.java 2(+1 -1)
beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestPaymentOSGIWithTestPaymentBundle.java 6(+3 -3)
beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestBillingAlignment.java 6(+3 -3)
beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueIntegration.java 8(+4 -4)
beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithOverdueEnforcementOffTag.java 2(+1 -1)
beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithSubscriptionCancellation.java 6(+3 -3)
beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationInvoiceWithRepairLogic.java 36(+18 -18)
beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoInvoiceOffTag.java 24(+12 -12)
beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoPayOff.java 21(+11 -10)
catalog/killbill-catalog.iml 3(+2 -1)
entitlement/killbill-entitlement.iml 9(+2 -7)
entitlement/pom.xml 5(+0 -5)
entitlement/src/main/java/com/ning/billing/entitlement/api/BlockingSubscriptionUserApi.java 72(+36 -36)
entitlement/src/main/java/com/ning/billing/entitlement/api/svcs/DefaultInternalBlockingApi.java 17(+8 -9)
entitlement/src/main/java/com/ning/billing/entitlement/block/DefaultBlockingChecker.java 53(+26 -27)
entitlement/src/main/java/com/ning/billing/entitlement/glue/DefaultEntitlementModule.java 131(+34 -97)
entitlement/src/main/resources/com/ning/billing/entitlement/dao/BlockingStateSqlDao.sql.stg 0(+0 -0)
entitlement/src/test/java/com/ning/billing/entitlement/block/TestDefaultBlockingApi.java 41(+20 -21)
entitlement/src/test/java/com/ning/billing/entitlement/EntitlementTestSuiteWithEmbeddedDB.java 130(+31 -99)
entitlement/src/test/java/com/ning/billing/entitlement/glue/TestEntitlementModuleNoDB.java 31(+31 -0)
entitlement/src/test/java/com/ning/billing/entitlement/glue/TestEntitlementModuleWithEmbeddedDB.java 23(+23 -0)
invoice/killbill-invoice.iml 3(+2 -1)
invoice/src/main/java/com/ning/billing/invoice/notification/DefaultNextBillingDateNotifier.java 16(+8 -8)
invoice/src/test/java/com/ning/billing/invoice/notification/TestNextBillingDateNotifier.java 2(+1 -1)
jaxrs/killbill-jaxrs.iml 3(+2 -1)
jaxrs/src/main/java/com/ning/billing/jaxrs/mappers/SubscriptionBillingApiExceptionMapper.java 8(+4 -4)
jaxrs/src/main/java/com/ning/billing/jaxrs/mappers/SubscriptionRepairExceptionMapper.java 38(+19 -19)
jaxrs/src/main/java/com/ning/billing/jaxrs/mappers/SubscriptionUserApiExceptionMapper.java 52(+26 -26)
junction/killbill-junction.iml 8(+6 -2)
junction/pom.xml 11(+11 -0)
junction/src/main/java/com/ning/billing/junction/plumbing/billing/BillCycleDayCalculator.java 24(+12 -12)
junction/src/main/java/com/ning/billing/junction/plumbing/billing/DefaultInternalBillingApi.java 18(+9 -9)
junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBillCycleDayCalculator.java 10(+5 -5)
junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBlockingCalculator.java 49(+24 -25)
junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestDefaultBillingEvent.java 4(+2 -2)
osgi/killbill-osgi.iml 3(+2 -1)
osgi-bundles/bundles/jruby/pom.xml 9(+5 -4)
osgi-bundles/bundles/jruby/src/main/java/com/ning/billing/osgi/bundles/jruby/JRubyActivator.java 2(+1 -1)
osgi-bundles/libs/killbill/src/main/java/com/ning/killbill/osgi/libs/killbill/OSGIKillbillAPI.java 45(+22 -23)
overdue/killbill-overdue.iml 3(+2 -1)
overdue/src/main/java/com/ning/billing/ovedue/notification/OverdueCheckNotificationKey.java 2(+1 -1)
overdue/src/main/java/com/ning/billing/overdue/calculator/BillingStateCalculatorBundle.java 24(+12 -12)
overdue/src/test/java/com/ning/billing/ovedue/notification/TestDefaultOverdueCheckPoster.java 8(+4 -4)
overdue/src/test/java/com/ning/billing/overdue/calculator/TestBillingStateCalculatorBundle.java 18(+9 -9)
overdue/src/test/java/com/ning/billing/overdue/notification/TestOverdueNotificationKeyJson.java 2(+1 -1)
payment/killbill-payment.iml 3(+2 -1)
pom.xml 3(+2 -1)
server/killbill-server.iml 4(+3 -1)
server/pom.xml 8(+4 -4)
subscription/killbill-subscription.iml 74(+74 -0)
subscription/pom.xml 158(+158 -0)
subscription/src/main/java/com/ning/billing/subscription/alignment/MigrationPlanAligner.java 38(+19 -19)
subscription/src/main/java/com/ning/billing/subscription/api/migration/AccountMigrationData.java 16(+8 -8)
subscription/src/main/java/com/ning/billing/subscription/api/migration/DefaultSubscriptionMigrationApi.java 114(+57 -57)
subscription/src/main/java/com/ning/billing/subscription/api/SubscriptionApiService.java 22(+11 -11)
subscription/src/main/java/com/ning/billing/subscription/api/svcs/DefaultSubscriptionInternalApi.java 57(+27 -30)
subscription/src/main/java/com/ning/billing/subscription/api/timeline/DefaultDeletedEvent.java 4(+2 -2)
subscription/src/main/java/com/ning/billing/subscription/api/timeline/DefaultRepairSubscriptionEvent.java 20(+10 -10)
subscription/src/main/java/com/ning/billing/subscription/api/timeline/DefaultSubscriptionTimeline.java 22(+11 -11)
subscription/src/main/java/com/ning/billing/subscription/api/timeline/DefaultSubscriptionTimelineApi.java 118(+59 -59)
subscription/src/main/java/com/ning/billing/subscription/api/timeline/RepairSubscriptionApiService.java 20(+10 -10)
subscription/src/main/java/com/ning/billing/subscription/api/timeline/RepairSubscriptionLifecycleDao.java 8(+4 -4)
subscription/src/main/java/com/ning/billing/subscription/api/timeline/SubscriptionDataRepair.java 66(+33 -33)
subscription/src/main/java/com/ning/billing/subscription/api/transfer/DefaultSubscriptionTransferApi.java 90(+45 -45)
subscription/src/main/java/com/ning/billing/subscription/api/transfer/TransferCancelData.java 13(+7 -6)
subscription/src/main/java/com/ning/billing/subscription/api/user/DefaultEffectiveSubscriptionEvent.java 4(+2 -2)
subscription/src/main/java/com/ning/billing/subscription/api/user/DefaultRequestedSubscriptionEvent.java 8(+4 -4)
subscription/src/main/java/com/ning/billing/subscription/api/user/DefaultSubscriptionApiService.java 110(+55 -55)
subscription/src/main/java/com/ning/billing/subscription/api/user/DefaultSubscriptionEvent.java 4(+2 -2)
subscription/src/main/java/com/ning/billing/subscription/api/user/DefaultSubscriptionStatusDryRun.java 2(+1 -1)
subscription/src/main/java/com/ning/billing/subscription/api/user/DefaultSubscriptionUserApi.java 70(+35 -35)
subscription/src/main/java/com/ning/billing/subscription/api/user/SubscriptionBundleData.java 4(+2 -2)
subscription/src/main/java/com/ning/billing/subscription/api/user/SubscriptionEvents.java 19(+10 -9)
subscription/src/main/java/com/ning/billing/subscription/api/user/SubscriptionTransitionData.java 12(+6 -6)
subscription/src/main/java/com/ning/billing/subscription/api/user/SubscriptionTransitionDataIterator.java 16(+8 -8)
subscription/src/main/java/com/ning/billing/subscription/engine/core/DefaultSubscriptionService.java 68(+34 -34)
subscription/src/main/java/com/ning/billing/subscription/engine/core/SubscriptionNotificationKey.java 12(+6 -6)
subscription/src/main/java/com/ning/billing/subscription/engine/dao/DefaultSubscriptionDao.java 304(+152 -152)
subscription/src/main/java/com/ning/billing/subscription/engine/dao/model/SubscriptionBundleModelDao.java 6(+3 -3)
subscription/src/main/java/com/ning/billing/subscription/engine/dao/model/SubscriptionEventModelDao.java 64(+32 -32)
subscription/src/main/java/com/ning/billing/subscription/engine/dao/model/SubscriptionModelDao.java 8(+4 -4)
subscription/src/main/java/com/ning/billing/subscription/engine/dao/RepairSubscriptionDao.java 126(+63 -63)
subscription/src/main/java/com/ning/billing/subscription/engine/dao/SubscriptionDao.java 44(+22 -22)
subscription/src/main/java/com/ning/billing/subscription/engine/dao/SubscriptionEventSqlDao.java 12(+6 -6)
subscription/src/main/java/com/ning/billing/subscription/engine/dao/SubscriptionSqlDao.java 6(+3 -3)
subscription/src/main/java/com/ning/billing/subscription/events/phase/PhaseEventBuilder.java 5(+3 -2)
subscription/src/main/java/com/ning/billing/subscription/events/user/ApiEventMigrateBilling.java 4(+2 -2)
subscription/src/main/java/com/ning/billing/subscription/events/user/ApiEventMigrateSubscription.java 6(+3 -3)
subscription/src/main/java/com/ning/billing/subscription/exceptions/SubscriptionError.java 12(+6 -6)
subscription/src/main/java/com/ning/billing/subscription/glue/DefaultSubscriptionModule.java 128(+128 -0)
subscription/src/main/resources/com/ning/billing/subscription/engine/dao/BundleSqlDao.sql.stg 0(+0 -0)
subscription/src/main/resources/com/ning/billing/subscription/engine/dao/SubscriptionEventSqlDao.sql.stg 0(+0 -0)
subscription/src/main/resources/com/ning/billing/subscription/engine/dao/SubscriptionSqlDao.sql.stg 0(+0 -0)
subscription/src/test/java/com/ning/billing/subscription/alignment/TestTimedMigration.java 14(+7 -7)
subscription/src/test/java/com/ning/billing/subscription/api/migration/TestMigration.java 84(+42 -42)
subscription/src/test/java/com/ning/billing/subscription/api/timeline/TestRepairWithAO.java 137(+69 -68)
subscription/src/test/java/com/ning/billing/subscription/api/timeline/TestRepairWithError.java 66(+33 -33)
subscription/src/test/java/com/ning/billing/subscription/api/transfer/TestDefaultSubscriptionTransferApi.java 78(+39 -39)
subscription/src/test/java/com/ning/billing/subscription/api/transfer/TestTransfer.java 107(+53 -54)
subscription/src/test/java/com/ning/billing/subscription/api/user/TestSubscriptionHelper.java 155(+76 -79)
subscription/src/test/java/com/ning/billing/subscription/api/user/TestUserApiCancel.java 49(+24 -25)
subscription/src/test/java/com/ning/billing/subscription/api/user/TestUserApiChangePlan.java 97(+48 -49)
subscription/src/test/java/com/ning/billing/subscription/api/user/TestUserApiCreate.java 43(+21 -22)
subscription/src/test/java/com/ning/billing/subscription/api/user/TestUserApiRecreate.java 28(+14 -14)
subscription/src/test/java/com/ning/billing/subscription/DefaultSubscriptionTestInitializer.java 45(+21 -24)
subscription/src/test/java/com/ning/billing/subscription/engine/dao/MockSubscriptionDaoMemory.java 120(+60 -60)
subscription/src/test/java/com/ning/billing/subscription/engine/dao/MockSubscriptionDaoSql.java 12(+6 -6)
subscription/src/test/java/com/ning/billing/subscription/glue/TestDefaultSubscriptionModule.java 28(+14 -14)
subscription/src/test/java/com/ning/billing/subscription/glue/TestDefaultSubscriptionModuleNoDB.java 24(+12 -12)
subscription/src/test/java/com/ning/billing/subscription/glue/TestDefaultSubscriptionModuleWithEmbeddedDB.java 24(+12 -12)
subscription/src/test/java/com/ning/billing/subscription/SubscriptionTestListenerStatus.java 8(+4 -4)
subscription/src/test/java/com/ning/billing/subscription/SubscriptionTestSuiteNoDB.java 143(+143 -0)
subscription/src/test/java/com/ning/billing/subscription/SubscriptionTestSuiteWithEmbeddedDB.java 130(+130 -0)
tenant/killbill-tenant.iml 3(+2 -1)
usage/killbill-usage.iml 3(+2 -1)
util/killbill-util.iml 3(+2 -1)
util/src/main/java/com/ning/billing/util/svcapi/subscription/SubscriptionBillingApiException.java 10(+5 -5)
Details
.gitignore 1(+1 -0)
diff --git a/.gitignore b/.gitignore
index e60f07e..7fecb3c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,6 +2,7 @@
*.ipr
*.iws
*.DS_Store
+*.bak
target
staging
overlays
.idea/codeStyleSettings.xml 3(+3 -0)
diff --git a/.idea/codeStyleSettings.xml b/.idea/codeStyleSettings.xml
index baa6b01..0391fca 100644
--- a/.idea/codeStyleSettings.xml
+++ b/.idea/codeStyleSettings.xml
@@ -27,6 +27,9 @@
<package name="" withSubpackages="true" static="true" />
</value>
</option>
+ <XML>
+ <option name="XML_LEGACY_SETTINGS_IMPORTED" value="true" />
+ </XML>
<codeStyleSettings language="JAVA">
<option name="KEEP_FIRST_COLUMN_COMMENT" value="false" />
<option name="BLANK_LINES_BEFORE_PACKAGE" value="1" />
.idea/compiler.xml 2(+2 -0)
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index d1883fd..06eb9a3 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -41,6 +41,7 @@
<module name="killbill-overdue" />
<module name="killbill-payment" />
<module name="killbill-server" />
+ <module name="killbill-subscription" />
<module name="killbill-tenant" />
<module name="killbill-usage" />
<module name="killbill-util" />
@@ -72,6 +73,7 @@
<module name="killbill-overdue" target="1.6" />
<module name="killbill-payment" target="1.6" />
<module name="killbill-server" target="1.6" />
+ <module name="killbill-subscription" target="1.6" />
<module name="killbill-tenant" target="1.6" />
<module name="killbill-usage" target="1.6" />
<module name="killbill-util" target="1.6" />
.idea/copyright/apache.xml 2(+1 -1)
diff --git a/.idea/copyright/apache.xml b/.idea/copyright/apache.xml
index ae560cc..81af6ab 100644
--- a/.idea/copyright/apache.xml
+++ b/.idea/copyright/apache.xml
@@ -1,6 +1,6 @@
<component name="CopyrightManager">
<copyright>
- <option name="notice" value="Copyright 2010-&#36;today.year Ning, Incc Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License." />
+ <option name="notice" value="Copyright 2010-&#36;today.year Ning, Inc. Ning licenses this file to you under the Apache License, version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at: http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License." />
<option name="keyword" value="Copyright" />
<option name="allowReplaceKeyword" value="" />
<option name="myName" value="apache" />
diff --git a/.idea/copyright/profiles_settings.xml b/.idea/copyright/profiles_settings.xml
index ace2e99..265f455 100644
--- a/.idea/copyright/profiles_settings.xml
+++ b/.idea/copyright/profiles_settings.xml
@@ -1,7 +1,5 @@
<component name="CopyrightManager">
<settings default="apache">
- <module2copyright>
- <element module="All" copyright="apache" />
- </module2copyright>
+ <module2copyright />
</settings>
</component>
\ No newline at end of file
.idea/encodings.xml 1(+1 -0)
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
index 4424963..437fcd7 100644
--- a/.idea/encodings.xml
+++ b/.idea/encodings.xml
@@ -26,6 +26,7 @@
<file url="file://$PROJECT_DIR$/overdue" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/payment" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/server" charset="UTF-8" />
+ <file url="file://$PROJECT_DIR$/subscription" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/tenant" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/usage" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/util" charset="UTF-8" />
diff --git a/.idea/libraries/Maven__com_ning_billing_killbill_api_0_3_2_SNAPSHOT.xml b/.idea/libraries/Maven__com_ning_billing_killbill_api_0_3_2_SNAPSHOT.xml
new file mode 100644
index 0000000..e4acec3
--- /dev/null
+++ b/.idea/libraries/Maven__com_ning_billing_killbill_api_0_3_2_SNAPSHOT.xml
@@ -0,0 +1,14 @@
+<component name="libraryTable">
+ <library name="Maven: com.ning.billing:killbill-api:0.3.2-SNAPSHOT">
+ <CLASSES>
+ <root url="jar://$MAVEN_REPOSITORY$/com/ning/billing/killbill-api/0.3.2-SNAPSHOT/killbill-api-0.3.2-SNAPSHOT.jar!/" />
+ </CLASSES>
+ <JAVADOC>
+ <root url="jar://$MAVEN_REPOSITORY$/com/ning/billing/killbill-api/0.3.2-SNAPSHOT/killbill-api-0.3.2-SNAPSHOT-javadoc.jar!/" />
+ </JAVADOC>
+ <SOURCES>
+ <root url="jar://$MAVEN_REPOSITORY$/com/ning/billing/killbill-api/0.3.2-SNAPSHOT/killbill-api-0.3.2-SNAPSHOT-sources.jar!/" />
+ <root url="file://$PROJECT_DIR$/../killbill-api/src/main/java" />
+ </SOURCES>
+ </library>
+</component>
\ No newline at end of file
diff --git a/.idea/libraries/Maven__com_ning_billing_killbill_entitlement_test_jar_tests_0_3_4_SNAPSHOT.xml b/.idea/libraries/Maven__com_ning_billing_killbill_entitlement_test_jar_tests_0_3_4_SNAPSHOT.xml
new file mode 100644
index 0000000..abe7ebd
--- /dev/null
+++ b/.idea/libraries/Maven__com_ning_billing_killbill_entitlement_test_jar_tests_0_3_4_SNAPSHOT.xml
@@ -0,0 +1,13 @@
+<component name="libraryTable">
+ <library name="Maven: com.ning.billing:killbill-entitlement:test-jar:tests:0.3.4-SNAPSHOT">
+ <CLASSES>
+ <root url="jar://$MAVEN_REPOSITORY$/com/ning/billing/killbill-entitlement/0.3.4-SNAPSHOT/killbill-entitlement-0.3.4-SNAPSHOT-tests.jar!/" />
+ </CLASSES>
+ <JAVADOC>
+ <root url="jar://$MAVEN_REPOSITORY$/com/ning/billing/killbill-entitlement/0.3.4-SNAPSHOT/killbill-entitlement-0.3.4-SNAPSHOT-test-javadoc.jar!/" />
+ </JAVADOC>
+ <SOURCES>
+ <root url="jar://$MAVEN_REPOSITORY$/com/ning/billing/killbill-entitlement/0.3.4-SNAPSHOT/killbill-entitlement-0.3.4-SNAPSHOT-test-sources.jar!/" />
+ </SOURCES>
+ </library>
+</component>
\ No newline at end of file
.idea/modules.xml 1(+1 -0)
diff --git a/.idea/modules.xml b/.idea/modules.xml
index 4461202..d5ca1f3 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -27,6 +27,7 @@
<module fileurl="file://$PROJECT_DIR$/overdue/killbill-overdue.iml" filepath="$PROJECT_DIR$/overdue/killbill-overdue.iml" />
<module fileurl="file://$PROJECT_DIR$/payment/killbill-payment.iml" filepath="$PROJECT_DIR$/payment/killbill-payment.iml" />
<module fileurl="file://$PROJECT_DIR$/server/killbill-server.iml" filepath="$PROJECT_DIR$/server/killbill-server.iml" />
+ <module fileurl="file://$PROJECT_DIR$/subscription/killbill-subscription.iml" filepath="$PROJECT_DIR$/subscription/killbill-subscription.iml" />
<module fileurl="file://$PROJECT_DIR$/tenant/killbill-tenant.iml" filepath="$PROJECT_DIR$/tenant/killbill-tenant.iml" />
<module fileurl="file://$PROJECT_DIR$/usage/killbill-usage.iml" filepath="$PROJECT_DIR$/usage/killbill-usage.iml" />
<module fileurl="file://$PROJECT_DIR$/util/killbill-util.iml" filepath="$PROJECT_DIR$/util/killbill-util.iml" />
account/killbill-account.iml 3(+2 -1)
diff --git a/account/killbill-account.iml b/account/killbill-account.iml
index 658de32..0bd0fa2 100644
--- a/account/killbill-account.iml
+++ b/account/killbill-account.iml
@@ -11,6 +11,7 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.1.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.1.0" level="project" />
@@ -20,7 +21,7 @@
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.inject:javax.inject:1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: aopalliance:aopalliance:1.0" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: com.h2database:h2:1.3.158" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-internal-api" />
<orderEntry type="library" name="Maven: com.ning.billing.plugin:killbill-plugin-api-payment:0.2.5" level="project" />
diff --git a/account/src/main/java/com/ning/billing/account/api/DefaultAccount.java b/account/src/main/java/com/ning/billing/account/api/DefaultAccount.java
index 3553f4b..8647429 100644
--- a/account/src/main/java/com/ning/billing/account/api/DefaultAccount.java
+++ b/account/src/main/java/com/ning/billing/account/api/DefaultAccount.java
@@ -25,7 +25,7 @@ import org.joda.time.DateTimeZone;
import com.ning.billing.account.dao.AccountModelDao;
import com.ning.billing.catalog.api.Currency;
-import com.ning.billing.junction.api.BlockingState;
+import com.ning.billing.entitlement.api.BlockingState;
import com.ning.billing.util.entity.EntityBase;
import com.google.common.base.Objects;
diff --git a/account/src/test/java/com/ning/billing/account/glue/TestAccountModule.java b/account/src/test/java/com/ning/billing/account/glue/TestAccountModule.java
index a2bbf6d..86b4e9f 100644
--- a/account/src/test/java/com/ning/billing/account/glue/TestAccountModule.java
+++ b/account/src/test/java/com/ning/billing/account/glue/TestAccountModule.java
@@ -18,7 +18,7 @@ package com.ning.billing.account.glue;
import org.skife.config.ConfigSource;
-import com.ning.billing.mock.glue.MockEntitlementModule;
+import com.ning.billing.mock.glue.MockSubscriptionModule;
import com.ning.billing.util.glue.AuditModule;
import com.ning.billing.util.glue.CacheModule;
import com.ning.billing.util.glue.CallContextModule;
@@ -40,7 +40,7 @@ public class TestAccountModule extends DefaultAccountModule {
install(new CallContextModule());
install(new CustomFieldModule());
// Needed for Audit
- install(new MockEntitlementModule());
+ install(new MockSubscriptionModule());
install(new TagStoreModule());
}
}
api/killbill-internal-api.iml 3(+2 -1)
diff --git a/api/killbill-internal-api.iml b/api/killbill-internal-api.iml
index 746bc67..62dbd1d 100644
--- a/api/killbill-internal-api.iml
+++ b/api/killbill-internal-api.iml
@@ -9,8 +9,9 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
- <orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.findbugs:jsr305:1.3.9" level="project" />
<orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.findbugs:jsr305:1.3.9" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="library" name="Maven: com.ning.billing.plugin:killbill-plugin-api-payment:0.2.5" level="project" />
diff --git a/api/src/main/java/com/ning/billing/glue/EntitlementModule.java b/api/src/main/java/com/ning/billing/glue/EntitlementModule.java
index 273c147..29ac72f 100644
--- a/api/src/main/java/com/ning/billing/glue/EntitlementModule.java
+++ b/api/src/main/java/com/ning/billing/glue/EntitlementModule.java
@@ -5,7 +5,7 @@
* (the "License"); you may not use this file except in compliance with the
* License. You may obtain a copy of the License at:
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
@@ -17,17 +17,16 @@
package com.ning.billing.glue;
public interface EntitlementModule {
+ public void installAccountUserApi();
- public abstract void installEntitlementService();
+ public void installSubscriptionUserApi();
- public abstract void installEntitlementUserApi();
- public abstract void installEntitlementTransferApi();
+ public void installBlockingStateDao();
- public abstract void installEntitlementMigrationApi();
+ public void installBlockingApi();
- public abstract void installEntitlementInternalApi();
-
- public abstract void installEntitlementTimelineApi();
+ public void installEntitlementApi();
+ public void installBlockingChecker();
}
diff --git a/api/src/main/java/com/ning/billing/glue/JunctionModule.java b/api/src/main/java/com/ning/billing/glue/JunctionModule.java
index 1393732..b47b550 100644
--- a/api/src/main/java/com/ning/billing/glue/JunctionModule.java
+++ b/api/src/main/java/com/ning/billing/glue/JunctionModule.java
@@ -18,15 +18,5 @@ package com.ning.billing.glue;
public interface JunctionModule {
-
public void installBillingApi();
-
- public void installAccountUserApi();
-
- public void installBlockingApi();
-
- public void installEntitlementUserApi();
-
- public void installJunctionApi();
-
}
diff --git a/api/src/main/java/com/ning/billing/glue/SubscriptionModule.java b/api/src/main/java/com/ning/billing/glue/SubscriptionModule.java
new file mode 100644
index 0000000..68eb185
--- /dev/null
+++ b/api/src/main/java/com/ning/billing/glue/SubscriptionModule.java
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2010-2013 Ning, Inc.
+ *
+ * Ning licenses this file to you under the Apache License, version 2.0
+ * (the "License"); you may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at:
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+package com.ning.billing.glue;
+
+public interface SubscriptionModule {
+
+ public abstract void installSubscriptionService();
+
+ public abstract void installSubscriptionUserApi();
+
+ public abstract void installSubscriptionTransferApi();
+
+ public abstract void installSubscriptionMigrationApi();
+
+ public abstract void installSubscriptionInternalApi();
+
+ public abstract void installSubscriptionTimelineApi();
+
+}
diff --git a/api/src/main/java/com/ning/billing/overdue/config/api/BillingStateBundle.java b/api/src/main/java/com/ning/billing/overdue/config/api/BillingStateBundle.java
index 3b6490d..57fbae4 100644
--- a/api/src/main/java/com/ning/billing/overdue/config/api/BillingStateBundle.java
+++ b/api/src/main/java/com/ning/billing/overdue/config/api/BillingStateBundle.java
@@ -26,7 +26,7 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.PhaseType;
import com.ning.billing.catalog.api.PriceList;
import com.ning.billing.catalog.api.Product;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.util.tag.Tag;
public class BillingStateBundle extends BillingState<SubscriptionBundle> {
diff --git a/api/src/main/java/com/ning/billing/overdue/config/api/OverdueStateSet.java b/api/src/main/java/com/ning/billing/overdue/config/api/OverdueStateSet.java
index c5e8502..0fc85e4 100644
--- a/api/src/main/java/com/ning/billing/overdue/config/api/OverdueStateSet.java
+++ b/api/src/main/java/com/ning/billing/overdue/config/api/OverdueStateSet.java
@@ -18,7 +18,7 @@ package com.ning.billing.overdue.config.api;
import org.joda.time.LocalDate;
-import com.ning.billing.junction.api.Blockable;
+import com.ning.billing.entitlement.api.Blockable;
import com.ning.billing.overdue.OverdueApiException;
import com.ning.billing.overdue.OverdueState;
beatrix/killbill-beatrix.iml 4(+3 -1)
diff --git a/beatrix/killbill-beatrix.iml b/beatrix/killbill-beatrix.iml
index ca09913..7fc6278 100644
--- a/beatrix/killbill-beatrix.iml
+++ b/beatrix/killbill-beatrix.iml
@@ -12,6 +12,7 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:14.0.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.inject:guice:3.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.inject:javax.inject:1" level="project" />
@@ -29,7 +30,7 @@
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.1.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.1.0" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-internal-api" />
<orderEntry type="library" name="Maven: com.ning.billing.plugin:killbill-plugin-api-payment:0.2.5" level="project" />
@@ -82,6 +83,7 @@
<orderEntry type="module" module-name="killbill-payment" />
<orderEntry type="module" module-name="killbill-payment" scope="TEST" production-on-test="" />
<orderEntry type="library" scope="TEST" name="Maven: com.ning.billing:killbill-payment:test-jar:tests:0.3.4-SNAPSHOT" level="project" />
+ <orderEntry type="module" module-name="killbill-subscription" />
<orderEntry type="module" module-name="killbill-tenant" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-core:1.2.1" level="project" />
<orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.8.3" level="project" />
beatrix/pom.xml 4(+4 -0)
diff --git a/beatrix/pom.xml b/beatrix/pom.xml
index d980175..43e61b2 100644
--- a/beatrix/pom.xml
+++ b/beatrix/pom.xml
@@ -133,6 +133,10 @@
</dependency>
<dependency>
<groupId>com.ning.billing</groupId>
+ <artifactId>killbill-subscription</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing</groupId>
<artifactId>killbill-tenant</artifactId>
</dependency>
<dependency>
diff --git a/beatrix/src/main/java/com/ning/billing/beatrix/extbus/BeatrixListener.java b/beatrix/src/main/java/com/ning/billing/beatrix/extbus/BeatrixListener.java
index 619922d..d0dc22e 100644
--- a/beatrix/src/main/java/com/ning/billing/beatrix/extbus/BeatrixListener.java
+++ b/beatrix/src/main/java/com/ning/billing/beatrix/extbus/BeatrixListener.java
@@ -31,7 +31,7 @@ import com.ning.billing.beatrix.glue.BeatrixModule;
import com.ning.billing.bus.api.BusEvent;
import com.ning.billing.bus.api.PersistentBus;
import com.ning.billing.bus.api.PersistentBus.EventBusException;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
import com.ning.billing.notification.plugin.api.ExtBusEventType;
import com.ning.billing.util.callcontext.CallOrigin;
import com.ning.billing.util.callcontext.InternalCallContext;
@@ -60,7 +60,10 @@ import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.datatype.joda.JodaModule;
import com.google.common.eventbus.Subscribe;
-public class BeatrixListener {
+public class
+
+
+ BeatrixListener {
private static final Logger log = LoggerFactory.getLogger(BeatrixListener.class);
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/BeatrixIntegrationModule.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/BeatrixIntegrationModule.java
index ce967ef..9fe2a7d 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/BeatrixIntegrationModule.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/BeatrixIntegrationModule.java
@@ -20,6 +20,7 @@ import java.io.IOException;
import java.net.URL;
import java.util.Set;
+import com.ning.billing.entitlement.glue.DefaultEntitlementModule;
import org.skife.config.ConfigSource;
import com.ning.billing.GuicyKillbillTestWithEmbeddedDBModule;
@@ -32,14 +33,13 @@ import com.ning.billing.beatrix.lifecycle.DefaultLifecycle;
import com.ning.billing.beatrix.lifecycle.Lifecycle;
import com.ning.billing.beatrix.util.AccountChecker;
import com.ning.billing.beatrix.util.AuditChecker;
-import com.ning.billing.beatrix.util.EntitlementChecker;
+import com.ning.billing.beatrix.util.SubscriptionChecker;
import com.ning.billing.beatrix.util.InvoiceChecker;
import com.ning.billing.beatrix.util.PaymentChecker;
import com.ning.billing.beatrix.util.RefundChecker;
import com.ning.billing.catalog.api.CatalogService;
import com.ning.billing.catalog.glue.CatalogModule;
-import com.ning.billing.entitlement.api.EntitlementService;
-import com.ning.billing.entitlement.glue.DefaultEntitlementModule;
+import com.ning.billing.subscription.api.SubscriptionService;
import com.ning.billing.invoice.api.InvoiceService;
import com.ning.billing.invoice.generator.DefaultInvoiceGeneratorWithSwitchRepairLogic;
import com.ning.billing.invoice.generator.InvoiceGenerator;
@@ -52,6 +52,7 @@ import com.ning.billing.overdue.OverdueService;
import com.ning.billing.payment.api.PaymentService;
import com.ning.billing.payment.glue.PaymentModule;
import com.ning.billing.payment.provider.MockPaymentProviderPluginModule;
+import com.ning.billing.subscription.glue.DefaultSubscriptionModule;
import com.ning.billing.tenant.glue.TenantModule;
import com.ning.billing.usage.glue.UsageModule;
import com.ning.billing.util.config.PaymentConfig;
@@ -108,6 +109,7 @@ public class BeatrixIntegrationModule extends AbstractModule {
install(new CustomFieldModule());
install(new DefaultAccountModule(configSource));
install(new CatalogModule(configSource));
+ install(new DefaultSubscriptionModule(configSource));
install(new DefaultEntitlementModule(configSource));
install(new DefaultInvoiceModuleWithSwitchRepairLogic(configSource));
install(new TemplateModule());
@@ -124,7 +126,7 @@ public class BeatrixIntegrationModule extends AbstractModule {
install(new BeatrixModuleWithSubsetLifecycle());
bind(AccountChecker.class).asEagerSingleton();
- bind(EntitlementChecker.class).asEagerSingleton();
+ bind(SubscriptionChecker.class).asEagerSingleton();
bind(InvoiceChecker.class).asEagerSingleton();
bind(PaymentChecker.class).asEagerSingleton();
bind(RefundChecker.class).asEagerSingleton();
@@ -180,7 +182,7 @@ public class BeatrixIntegrationModule extends AbstractModule {
.add(injector.getInstance(AccountService.class))
.add(injector.getInstance(BusService.class))
.add(injector.getInstance(CatalogService.class))
- .add(injector.getInstance(EntitlementService.class))
+ .add(injector.getInstance(SubscriptionService.class))
.add(injector.getInstance(InvoiceService.class))
.add(injector.getInstance(PaymentService.class))
.add(injector.getInstance(OverdueService.class))
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 20396bc..441e21e 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,7 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
@Inject
private OSGIServiceRegistration<PaymentPluginApi> paymentPluginApiOSGIServiceRegistration;
- @BeforeClass(groups = "slow")
+ @BeforeClass(groups = "slow", enabled = true)
public void beforeClass() throws Exception {
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestPaymentOSGIWithTestPaymentBundle.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestPaymentOSGIWithTestPaymentBundle.java
index 80e5b29..edc35c9 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestPaymentOSGIWithTestPaymentBundle.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestPaymentOSGIWithTestPaymentBundle.java
@@ -26,8 +26,8 @@ import com.ning.billing.beatrix.util.PaymentChecker.ExpectedPaymentCheck;
import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.Currency;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItemType;
import com.ning.billing.osgi.api.OSGIServiceRegistration;
@@ -142,7 +142,7 @@ public class TestPaymentOSGIWithTestPaymentBundle extends TestOSGIBase {
// Set clock to the initial start date - we implicitly assume here that the account timezone is UTC
clock.setDay(new LocalDate(2012, 4, 1));
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
//
// CREATE SUBSCRIPTION AND EXPECT BOTH EVENTS: NextEvent.CREATE NextEvent.INVOICE
//
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestBillingAlignment.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestBillingAlignment.java
index 1fecc27..4adda35 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestBillingAlignment.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestBillingAlignment.java
@@ -27,8 +27,8 @@ import com.ning.billing.beatrix.integration.TestIntegrationBase;
import com.ning.billing.beatrix.util.InvoiceChecker.ExpectedInvoiceItemCheck;
import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.invoice.api.InvoiceItemType;
public class TestBillingAlignment extends TestIntegrationBase {
@@ -49,7 +49,7 @@ public class TestBillingAlignment extends TestIntegrationBase {
// Set clock to the initial start date - we implicitly assume here that the account timezone is UTC
clock.setDay(new LocalDate(2012, 4, 1));
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
//
// CREATE SUBSCRIPTION AND EXPECT BOTH EVENTS: NextEvent.CREATE NextEvent.INVOICE
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueBase.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueBase.java
index f035a12..dc707e7 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueBase.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueBase.java
@@ -29,7 +29,7 @@ import com.ning.billing.account.api.Account;
import com.ning.billing.beatrix.integration.BeatrixIntegrationModule;
import com.ning.billing.beatrix.integration.TestIntegrationBase;
import com.ning.billing.catalog.api.BillingPeriod;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.overdue.config.OverdueConfig;
import com.ning.billing.payment.api.PaymentMethodPlugin;
import com.ning.billing.payment.api.TestPaymentMethodPluginBase;
@@ -66,7 +66,7 @@ public abstract class TestOverdueBase extends TestIntegrationBase {
paymentApi.addPaymentMethod(BeatrixIntegrationModule.NON_OSGI_PLUGIN_NAME, account, true, paymentMethodPlugin, callContext);
- bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
productName = "Shotgun";
term = BillingPeriod.MONTHLY;
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 a50b665..520eadd 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
@@ -30,12 +30,12 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.Currency;
import com.ning.billing.catalog.api.PriceListSet;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItemType;
import com.ning.billing.invoice.api.InvoicePayment;
-import com.ning.billing.junction.api.BlockingApiException;
+import com.ning.billing.entitlement.api.BlockingApiException;
import com.ning.billing.payment.api.Payment;
import com.ning.billing.util.svcapi.junction.DefaultBlockingState;
@@ -722,7 +722,7 @@ public class TestOverdueIntegration extends TestOverdueBase {
if (shouldFail) {
try {
subscription.changePlan("Pistol", term, PriceListSet.DEFAULT_PRICELIST_NAME, clock.getUTCNow(), callContext);
- } catch (EntitlementUserApiException e) {
+ } catch (SubscriptionUserApiException e) {
assertTrue(e.getCause() instanceof BlockingApiException);
}
} else {
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 65e77c7..22ac2c9 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
@@ -26,7 +26,7 @@ import com.ning.billing.ObjectType;
import com.ning.billing.api.TestApiListener.NextEvent;
import com.ning.billing.beatrix.util.InvoiceChecker.ExpectedInvoiceItemCheck;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.invoice.api.InvoiceItemType;
import com.ning.billing.util.svcapi.junction.DefaultBlockingState;
import com.ning.billing.util.tag.ControlTagType;
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 7e7a47d..3872b00 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
@@ -26,8 +26,8 @@ import org.testng.annotations.Test;
import com.ning.billing.api.TestApiListener.NextEvent;
import com.ning.billing.beatrix.util.InvoiceChecker.ExpectedInvoiceItemCheck;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionState;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionState;
import com.ning.billing.invoice.api.InvoiceItemType;
import com.ning.billing.util.svcapi.junction.DefaultBlockingState;
@@ -84,7 +84,7 @@ public class TestOverdueWithSubscriptionCancellation extends TestOverdueBase {
// Should be in OD1
checkODState("OD1");
- final Subscription cancelledBaseSubscription = entitlementUserApi.getSubscriptionFromId(baseSubscription.getId(), callContext);
+ final Subscription cancelledBaseSubscription = subscriptionUserApi.getSubscriptionFromId(baseSubscription.getId(), callContext);
assertTrue(cancelledBaseSubscription.getState() == SubscriptionState.CANCELLED);
}
}
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestBundleTransfer.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestBundleTransfer.java
index 0296e05..e3cfad7 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestBundleTransfer.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestBundleTransfer.java
@@ -13,15 +13,10 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
-package com.ning.billing.beatrix.integration;
-
-import java.math.BigDecimal;
-import java.util.List;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
-import org.testng.annotations.Test;
+package com.ning.billing.beatrix.integration;
+import com.google.common.collect.ImmutableList;
import com.ning.billing.account.api.Account;
import com.ning.billing.api.TestApiListener.NextEvent;
import com.ning.billing.beatrix.util.InvoiceChecker.ExpectedInvoiceItemCheck;
@@ -29,13 +24,17 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.PriceListSet;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.entitlement.api.user.SubscriptionData;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItem;
import com.ning.billing.invoice.api.InvoiceItemType;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionData;
+import org.joda.time.DateTime;
+import org.joda.time.LocalDate;
+import org.testng.annotations.Test;
-import com.google.common.collect.ImmutableList;
+import java.math.BigDecimal;
+import java.util.List;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
@@ -54,7 +53,7 @@ public class TestBundleTransfer extends TestIntegrationBase {
final DateTime initialDate = new DateTime(2012, 4, 1, 0, 15, 42, 0, testTimeZone);
clock.setDeltaFromReality(initialDate.getMillis() - clock.getUTCNow().getMillis());
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "mycutebundle", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "mycutebundle", callContext);
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.ANNUAL;
@@ -64,16 +63,16 @@ public class TestBundleTransfer extends TestIntegrationBase {
//
busHandler.pushExpectedEvents(NextEvent.CREATE, NextEvent.INVOICE);
final PlanPhaseSpecifier bpPlanPhaseSpecifier = new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null);
- final SubscriptionData bpSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
- bpPlanPhaseSpecifier,
- null,
- callContext));
+ final SubscriptionData bpSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
+ bpPlanPhaseSpecifier,
+ null,
+ callContext));
assertNotNull(bpSubscription);
assertTrue(busHandler.isCompleted(DELAY));
assertListenerStatus();
assertEquals(invoiceUserApi.getInvoicesByAccount(account.getId(), callContext).size(), 1);
- assertEquals(entitlementUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.ANNUAL);
+ assertEquals(subscriptionUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.ANNUAL);
// Move out of trials for interesting invoices adjustments
busHandler.pushExpectedEvent(NextEvent.PHASE);
@@ -93,14 +92,14 @@ public class TestBundleTransfer extends TestIntegrationBase {
assertTrue(busHandler.isCompleted(DELAY));
assertListenerStatus();
- List<Invoice> invoices =invoiceUserApi.getInvoicesByAccount(newAccount.getId(), callContext);
+ List<Invoice> invoices = invoiceUserApi.getInvoicesByAccount(newAccount.getId(), callContext);
assertEquals(invoices.size(), 1);
final List<InvoiceItem> invoiceItems = invoices.get(0).getInvoiceItems();
assertEquals(invoiceItems.size(), 1);
InvoiceItem theItem = invoiceItems.get(0);
- assertTrue(theItem.getStartDate().compareTo(new LocalDate(2012,5,11)) == 0);
- assertTrue(theItem.getEndDate().compareTo(new LocalDate(2013,5,11)) == 0);
+ assertTrue(theItem.getStartDate().compareTo(new LocalDate(2012, 5, 11)) == 0);
+ assertTrue(theItem.getEndDate().compareTo(new LocalDate(2013, 5, 11)) == 0);
assertTrue(theItem.getAmount().compareTo(new BigDecimal("2399.9500")) == 0);
}
@@ -114,7 +113,7 @@ public class TestBundleTransfer extends TestIntegrationBase {
final DateTime initialDate = new DateTime(2012, 4, 1, 0, 15, 42, 0, testTimeZone);
clock.setDeltaFromReality(initialDate.getMillis() - clock.getUTCNow().getMillis());
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "mycutebundle", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "mycutebundle", callContext);
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.MONTHLY;
@@ -124,16 +123,16 @@ public class TestBundleTransfer extends TestIntegrationBase {
//
busHandler.pushExpectedEvents(NextEvent.CREATE, NextEvent.INVOICE);
final PlanPhaseSpecifier bpPlanPhaseSpecifier = new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null);
- final SubscriptionData bpSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
- bpPlanPhaseSpecifier,
- null,
- callContext));
+ final SubscriptionData bpSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
+ bpPlanPhaseSpecifier,
+ null,
+ callContext));
assertNotNull(bpSubscription);
assertTrue(busHandler.isCompleted(DELAY));
assertListenerStatus();
assertEquals(invoiceUserApi.getInvoicesByAccount(account.getId(), callContext).size(), 1);
- assertEquals(entitlementUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.MONTHLY);
+ assertEquals(subscriptionUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.MONTHLY);
// Move out of trials for interesting invoices adjustments
busHandler.pushExpectedEvent(NextEvent.PHASE);
@@ -181,7 +180,7 @@ public class TestBundleTransfer extends TestIntegrationBase {
final DateTime initialDate = new DateTime(2012, 4, 1, 0, 15, 42, 0, testTimeZone);
clock.setDeltaFromReality(initialDate.getMillis() - clock.getUTCNow().getMillis());
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "mycutebundle", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "mycutebundle", callContext);
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.MONTHLY;
@@ -191,16 +190,16 @@ public class TestBundleTransfer extends TestIntegrationBase {
//
busHandler.pushExpectedEvents(NextEvent.CREATE, NextEvent.INVOICE);
final PlanPhaseSpecifier bpPlanPhaseSpecifier = new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null);
- final SubscriptionData bpSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
- bpPlanPhaseSpecifier,
- null,
- callContext));
+ final SubscriptionData bpSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
+ bpPlanPhaseSpecifier,
+ null,
+ callContext));
assertNotNull(bpSubscription);
assertTrue(busHandler.isCompleted(DELAY));
assertListenerStatus();
assertEquals(invoiceUserApi.getInvoicesByAccount(account.getId(), callContext).size(), 1);
- assertEquals(entitlementUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.MONTHLY);
+ assertEquals(subscriptionUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.MONTHLY);
// Move out of trials for interesting invoices adjustments
busHandler.pushExpectedEvent(NextEvent.PHASE);
@@ -222,24 +221,24 @@ public class TestBundleTransfer extends TestIntegrationBase {
assertTrue(busHandler.isCompleted(DELAY));
assertListenerStatus();
- List<Invoice> invoices =invoiceUserApi.getInvoicesByAccount(account.getId(), callContext);
+ List<Invoice> invoices = invoiceUserApi.getInvoicesByAccount(account.getId(), callContext);
assertEquals(invoices.size(), 2);
// CHECK OLD ACCOUNTS ITEMS
ImmutableList<ExpectedInvoiceItemCheck> toBeChecked = ImmutableList.<ExpectedInvoiceItemCheck>of(
- new ExpectedInvoiceItemCheck(new LocalDate(2012,5,1), new LocalDate(2012,5,9), InvoiceItemType.RECURRING, new BigDecimal("66.66")),
- new ExpectedInvoiceItemCheck(new LocalDate(2012,5,3), new LocalDate(2012,5,9), InvoiceItemType.REPAIR_ADJ, new BigDecimal("-49.99")),
- new ExpectedInvoiceItemCheck(new LocalDate(2012,5,3), new LocalDate(2012,5,3), InvoiceItemType.CBA_ADJ, new BigDecimal("49.99")));
+ new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 1), new LocalDate(2012, 5, 9), InvoiceItemType.RECURRING, new BigDecimal("66.66")),
+ new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 3), new LocalDate(2012, 5, 9), InvoiceItemType.REPAIR_ADJ, new BigDecimal("-49.99")),
+ new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 3), new LocalDate(2012, 5, 3), InvoiceItemType.CBA_ADJ, new BigDecimal("49.99")));
invoiceChecker.checkInvoice(invoices.get(1).getId(), callContext, toBeChecked);
// CHECK NEW ACCOUNT ITEMS
- invoices =invoiceUserApi.getInvoicesByAccount(newAccount.getId(), callContext);
+ invoices = invoiceUserApi.getInvoicesByAccount(newAccount.getId(), callContext);
assertEquals(invoices.size(), 1);
toBeChecked = ImmutableList.<ExpectedInvoiceItemCheck>of(
- new ExpectedInvoiceItemCheck(new LocalDate(2012,5,3), new LocalDate(2012,5,15), InvoiceItemType.RECURRING, new BigDecimal("99.98")));
+ new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 3), new LocalDate(2012, 5, 15), InvoiceItemType.RECURRING, new BigDecimal("99.98")));
invoiceChecker.checkInvoice(invoices.get(0).getId(), callContext, toBeChecked);
}
}
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestCustomFieldApi.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestCustomFieldApi.java
index 8ee396a..30bd0e0 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestCustomFieldApi.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestCustomFieldApi.java
@@ -32,10 +32,10 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.PriceListSet;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.entitlement.api.user.SubscriptionData;
+import com.ning.billing.subscription.api.user.SubscriptionData;
import com.ning.billing.invoice.api.Invoice;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
import com.ning.billing.util.api.CustomFieldApiException;
import com.ning.billing.util.api.CustomFieldUserApi;
import com.ning.billing.util.customfield.CustomField;
@@ -79,12 +79,12 @@ public class TestCustomFieldApi extends TestIntegrationBase {
@Test(groups = "slow")
- public void testCustomFieldForInvoice() throws CustomFieldApiException, EntitlementUserApiException {
+ public void testCustomFieldForInvoice() throws CustomFieldApiException, SubscriptionUserApiException {
//
// Create necessary logic to end up with an Invoice object on that account.
//
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.ANNUAL;
@@ -92,7 +92,7 @@ public class TestCustomFieldApi extends TestIntegrationBase {
busHandler.pushExpectedEvents(NextEvent.CREATE, NextEvent.INVOICE);
final PlanPhaseSpecifier bpPlanPhaseSpecifier = new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null);
- final SubscriptionData bpSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
+ final SubscriptionData bpSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
bpPlanPhaseSpecifier,
null,
callContext));
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegration.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegration.java
index a239d2d..2619e8e 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegration.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegration.java
@@ -36,12 +36,12 @@ import com.ning.billing.catalog.api.PhaseType;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.PriceListSet;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.entitlement.api.user.SubscriptionData;
+import com.ning.billing.subscription.api.user.SubscriptionData;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItemType;
import com.ning.billing.payment.api.PaymentStatus;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
@@ -60,36 +60,36 @@ public class TestIntegration extends TestIntegrationBase {
// Set clock to the initial start date - we implicitly assume here that the account timezone is UTC
clock.setDay(new LocalDate(2012, 4, 1));
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
- entitlementChecker.checkBundleNoAudits(bundle.getId(), bundle.getAccountId(), bundle.getExternalKey(), callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ subscriptionChecker.checkBundleNoAudits(bundle.getId(), bundle.getAccountId(), bundle.getExternalKey(), callContext);
//
// CREATE SUBSCRIPTION AND EXPECT BOTH EVENTS: NextEvent.CREATE NextEvent.INVOICE
//
final Subscription bpSubscription = createSubscriptionAndCheckForCompletion(bundle.getId(), "Shotgun", ProductCategory.BASE, BillingPeriod.MONTHLY, NextEvent.CREATE, NextEvent.INVOICE);
// Check bundle after BP got created otherwise we get an error from auditApi.
- entitlementChecker.checkSubscriptionCreated(bpSubscription.getId(), callContext);
+ subscriptionChecker.checkSubscriptionCreated(bpSubscription.getId(), callContext);
invoiceChecker.checkInvoice(account.getId(), 1, callContext, new ExpectedInvoiceItemCheck(new LocalDate(2012, 4, 1), null, InvoiceItemType.FIXED, new BigDecimal("0")));
- entitlementChecker.checkBundleAuditUpdated(bundle.getId(), callContext);
+ subscriptionChecker.checkBundleAuditUpdated(bundle.getId(), callContext);
//
// ADD ADD_ON ON THE SAME DAY
//
createSubscriptionAndCheckForCompletion(bundle.getId(), "Telescopic-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY, NextEvent.CREATE, NextEvent.INVOICE, NextEvent.PAYMENT);
Invoice invoice = invoiceChecker.checkInvoice(account.getId(), 2, callContext, new ExpectedInvoiceItemCheck(new LocalDate(2012, 4, 1), new LocalDate(2012, 5, 1), InvoiceItemType.RECURRING, new BigDecimal("399.95")));
paymentChecker.checkPayment(account.getId(), 1, callContext, new ExpectedPaymentCheck(new LocalDate(2012, 4, 1), new BigDecimal("399.95"), PaymentStatus.SUCCESS, invoice.getId(), Currency.USD));
- entitlementChecker.checkBundleAuditUpdated(bundle.getId(), callContext);
+ subscriptionChecker.checkBundleAuditUpdated(bundle.getId(), callContext);
//
- // CANCEL BP ON THE SAME DAY (we should have two cancellations, BP and AO)
- // There is no invoice created as we only adjust the previous invoice.
- //
+ // CANCEL BP ON THE SAME DAY (we should have two cancellations, BP and AO)
+ // There is no invoice created as we only adjust the previous invoice.
+ //
cancelSubscriptionAndCheckForCompletion(bpSubscription, clock.getUTCNow(), NextEvent.CANCEL, NextEvent.CANCEL, NextEvent.INVOICE_ADJUSTMENT);
invoiceChecker.checkInvoice(account.getId(), 2,
callContext, new ExpectedInvoiceItemCheck(new LocalDate(2012, 4, 1), new LocalDate(2012, 5, 1), InvoiceItemType.RECURRING, new BigDecimal("399.95")),
// The second invoice should be adjusted for the AO (we paid for the full period) and since we paid we should also see a CBA
new ExpectedInvoiceItemCheck(new LocalDate(2012, 4, 1), new LocalDate(2012, 5, 1), InvoiceItemType.REPAIR_ADJ, new BigDecimal("-399.95")),
new ExpectedInvoiceItemCheck(new LocalDate(2012, 4, 1), new LocalDate(2012, 4, 1), InvoiceItemType.CBA_ADJ, new BigDecimal("399.95")));
- entitlementChecker.checkBundleAuditUpdated(bundle.getId(), callContext);
+ subscriptionChecker.checkBundleAuditUpdated(bundle.getId(), callContext);
}
@@ -104,7 +104,7 @@ public class TestIntegration extends TestIntegrationBase {
// set clock to the initial start date
clock.setTime(initialCreationDate);
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
int invoiceItemCount = 1;
@@ -186,7 +186,7 @@ public class TestIntegration extends TestIntegrationBase {
// set clock to the initial start date
clock.setTime(initialCreationDate);
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
int invoiceItemCount = 1;
@@ -268,7 +268,7 @@ public class TestIntegration extends TestIntegrationBase {
// set clock to the initial start date
clock.setTime(initialCreationDate);
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
int invoiceItemCount = 1;
@@ -400,7 +400,7 @@ public class TestIntegration extends TestIntegrationBase {
final Account account = createAccountWithNonOsgiPaymentMethod(getAccountData(25));
assertNotNull(account);
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.MONTHLY;
@@ -408,7 +408,7 @@ public class TestIntegration extends TestIntegrationBase {
busHandler.pushExpectedEvent(NextEvent.CREATE);
busHandler.pushExpectedEvent(NextEvent.INVOICE);
- final SubscriptionData baseSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
+ final SubscriptionData baseSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
assertNotNull(baseSubscription);
assertTrue(busHandler.isCompleted(DELAY));
@@ -422,7 +422,7 @@ public class TestIntegration extends TestIntegrationBase {
busHandler.pushExpectedEvent(NextEvent.CREATE);
busHandler.pushExpectedEvent(NextEvent.INVOICE);
busHandler.pushExpectedEvent(NextEvent.PAYMENT);
- subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
+ subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
new PlanPhaseSpecifier("Telescopic-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY, PriceListSet.DEFAULT_PRICELIST_NAME, null), null, callContext));
assertTrue(busHandler.isCompleted(DELAY));
assertListenerStatus();
@@ -430,7 +430,7 @@ public class TestIntegration extends TestIntegrationBase {
busHandler.pushExpectedEvent(NextEvent.CREATE);
busHandler.pushExpectedEvent(NextEvent.INVOICE);
busHandler.pushExpectedEvent(NextEvent.PAYMENT);
- final SubscriptionData aoSubscription2 = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
+ final SubscriptionData aoSubscription2 = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
new PlanPhaseSpecifier("Laser-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY, PriceListSet.DEFAULT_PRICELIST_NAME, null), null, callContext));
assertTrue(busHandler.isCompleted(DELAY));
assertListenerStatus();
@@ -483,13 +483,13 @@ public class TestIntegration extends TestIntegrationBase {
final DateTime initialDate = new DateTime(2012, 4, 25, 0, 3, 42, 0, testTimeZone);
clock.setDeltaFromReality(initialDate.getMillis() - clock.getUTCNow().getMillis());
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "someBundle", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "someBundle", callContext);
assertNotNull(bundle);
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.MONTHLY;
final String planSetName = PriceListSet.DEFAULT_PRICELIST_NAME;
- entitlementUserApi.createSubscription(bundle.getId(),
+ subscriptionUserApi.createSubscription(bundle.getId(),
new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext);
busHandler.reset();
@@ -515,7 +515,7 @@ public class TestIntegration extends TestIntegrationBase {
// set clock to the initial start date
clock.setDeltaFromReality(initialDate.getMillis() - clock.getUTCNow().getMillis());
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever2", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever2", callContext);
String productName = "Shotgun";
BillingPeriod term = BillingPeriod.MONTHLY;
@@ -527,7 +527,7 @@ public class TestIntegration extends TestIntegrationBase {
busHandler.pushExpectedEvent(NextEvent.CREATE);
busHandler.pushExpectedEvent(NextEvent.INVOICE);
- SubscriptionData subscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
+ SubscriptionData subscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
assertNotNull(subscription);
@@ -550,7 +550,7 @@ public class TestIntegration extends TestIntegrationBase {
clock.addDeltaFromReality(AT_LEAST_ONE_MONTH_MS);
assertTrue(busHandler.isCompleted(DELAY));
- subscription = subscriptionDataFromSubscription(entitlementUserApi.getSubscriptionFromId(subscription.getId(), callContext));
+ subscription = subscriptionDataFromSubscription(subscriptionUserApi.getSubscriptionFromId(subscription.getId(), callContext));
subscription.cancel(clock.getUTCNow(), callContext);
// MOVE AFTER CANCEL DATE AND EXPECT EVENT : NextEvent.CANCEL
@@ -589,8 +589,8 @@ public class TestIntegration extends TestIntegrationBase {
busHandler.pushExpectedEvent(NextEvent.CREATE);
busHandler.pushExpectedEvent(NextEvent.INVOICE);
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(accountId, "testKey", callContext);
- subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(accountId, "testKey", callContext);
+ subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
new PlanPhaseSpecifier(productName, ProductCategory.BASE,
BillingPeriod.MONTHLY, planSetName, PhaseType.TRIAL), null, callContext));
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationBase.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationBase.java
index ff8328c..2a516f6 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationBase.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationBase.java
@@ -23,6 +23,8 @@ import java.util.Set;
import java.util.UUID;
import javax.annotation.Nullable;
+import javax.inject.Inject;
+import javax.inject.Named;
import org.joda.time.DateTime;
import org.joda.time.DateTimeZone;
@@ -47,23 +49,17 @@ import com.ning.billing.beatrix.glue.BeatrixModule;
import com.ning.billing.beatrix.lifecycle.Lifecycle;
import com.ning.billing.beatrix.osgi.SetupBundleWithAssertion;
import com.ning.billing.beatrix.util.AccountChecker;
-import com.ning.billing.beatrix.util.EntitlementChecker;
import com.ning.billing.beatrix.util.InvoiceChecker;
import com.ning.billing.beatrix.util.PaymentChecker;
import com.ning.billing.beatrix.util.RefundChecker;
+import com.ning.billing.beatrix.util.SubscriptionChecker;
import com.ning.billing.bus.api.PersistentBus;
import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.Currency;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.PriceListSet;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.EntitlementService;
-import com.ning.billing.entitlement.api.timeline.EntitlementTimelineApi;
-import com.ning.billing.entitlement.api.transfer.EntitlementTransferApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionData;
+import com.ning.billing.entitlement.api.BlockingSubscription;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceApiException;
import com.ning.billing.invoice.api.InvoicePayment;
@@ -71,7 +67,6 @@ import com.ning.billing.invoice.api.InvoicePaymentApi;
import com.ning.billing.invoice.api.InvoiceService;
import com.ning.billing.invoice.api.InvoiceUserApi;
import com.ning.billing.invoice.model.InvoicingConfiguration;
-import com.ning.billing.junction.plumbing.api.BlockingSubscription;
import com.ning.billing.mock.MockAccountBuilder;
import com.ning.billing.overdue.OverdueUserApi;
import com.ning.billing.overdue.wrapper.OverdueWrapperFactory;
@@ -82,6 +77,13 @@ import com.ning.billing.payment.api.PaymentMethodKVInfo;
import com.ning.billing.payment.api.PaymentMethodPlugin;
import com.ning.billing.payment.api.TestPaymentMethodPluginBase;
import com.ning.billing.payment.provider.MockPaymentProviderPlugin;
+import com.ning.billing.subscription.api.SubscriptionService;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimelineApi;
+import com.ning.billing.subscription.api.transfer.SubscriptionTransferApi;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionData;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
import com.ning.billing.util.api.RecordIdApi;
import com.ning.billing.util.api.TagUserApi;
import com.ning.billing.util.cache.CacheControllerDispatcher;
@@ -93,10 +95,8 @@ import com.ning.billing.util.svcsapi.bus.BusService;
import com.google.common.base.Function;
import com.google.common.base.Joiner;
import com.google.inject.Guice;
-import com.google.inject.Inject;
import com.google.inject.Injector;
import com.google.inject.Stage;
-import com.google.inject.name.Named;
import static org.testng.Assert.assertNotNull;
import static org.testng.Assert.assertTrue;
@@ -127,7 +127,7 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
protected BusService busService;
@Inject
- protected EntitlementService entitlementService;
+ protected SubscriptionService subscriptionService;
@Inject
protected InvoiceService invoiceService;
@@ -136,13 +136,13 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
protected AccountService accountService;
@Inject
- protected EntitlementUserApi entitlementUserApi;
+ protected SubscriptionUserApi subscriptionUserApi;
@Inject
- protected EntitlementTransferApi transferApi;
+ protected SubscriptionTransferApi transferApi;
@Inject
- protected EntitlementTimelineApi repairApi;
+ protected SubscriptionTimelineApi repairApi;
@Inject
protected OverdueUserApi overdueUserApi;
@@ -182,13 +182,15 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
protected AccountChecker accountChecker;
@Inject
- protected @javax.inject.Named(BeatrixModule.EXTERNAL_BUS)PersistentBus externalBus;
+ protected
+ @javax.inject.Named(BeatrixModule.EXTERNAL_BUS)
+ PersistentBus externalBus;
@Inject
protected RefundChecker refundChecker;
@Inject
- protected EntitlementChecker entitlementChecker;
+ protected SubscriptionChecker subscriptionChecker;
@Inject
protected AccountInternalApi accountInternalApi;
@@ -280,8 +282,8 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
protected void verifyTestResult(final UUID accountId, final UUID subscriptionId,
final DateTime startDate, @Nullable final DateTime endDate,
final BigDecimal amount, final DateTime chargeThroughDate,
- final int totalInvoiceItemCount) throws EntitlementUserApiException {
- final SubscriptionData subscription = subscriptionDataFromSubscription(entitlementUserApi.getSubscriptionFromId(subscriptionId, callContext));
+ final int totalInvoiceItemCount) throws SubscriptionUserApiException {
+ final SubscriptionData subscription = subscriptionDataFromSubscription(subscriptionUserApi.getSubscriptionFromId(subscriptionId, callContext));
/*
final List<Invoice> invoices = invoiceUserApi.getInvoicesByAccount(accountId);
@@ -498,13 +500,13 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
@Override
public Subscription apply(@Nullable final Void dontcare) {
try {
- final Subscription subscription = entitlementUserApi.createSubscription(bundleId,
- new PlanPhaseSpecifier(productName, productCategory, billingPeriod, PriceListSet.DEFAULT_PRICELIST_NAME, null),
- null,
- callContext);
+ final Subscription subscription = subscriptionUserApi.createSubscription(bundleId,
+ new PlanPhaseSpecifier(productName, productCategory, billingPeriod, PriceListSet.DEFAULT_PRICELIST_NAME, null),
+ null,
+ callContext);
assertNotNull(subscription);
return subscription;
- } catch (EntitlementUserApiException e) {
+ } catch (SubscriptionUserApiException e) {
fail();
return null;
}
@@ -521,10 +523,10 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
public Subscription apply(@Nullable final Void dontcare) {
try {
// Need to fetch again to get latest CTD updated from the system
- final Subscription refreshedSubscription = entitlementUserApi.getSubscriptionFromId(subscription.getId(), callContext);
+ final Subscription refreshedSubscription = subscriptionUserApi.getSubscriptionFromId(subscription.getId(), callContext);
refreshedSubscription.changePlan(productName, billingPeriod, PriceListSet.DEFAULT_PRICELIST_NAME, clock.getUTCNow(), callContext);
return refreshedSubscription;
- } catch (EntitlementUserApiException e) {
+ } catch (SubscriptionUserApiException e) {
fail(e.getMessage());
return null;
}
@@ -540,10 +542,10 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
public Subscription apply(@Nullable final Void dontcare) {
try {
// Need to fetch again to get latest CTD updated from the system
- final Subscription refreshedSubscription = entitlementUserApi.getSubscriptionFromId(subscription.getId(), callContext);
+ final Subscription refreshedSubscription = subscriptionUserApi.getSubscriptionFromId(subscription.getId(), callContext);
refreshedSubscription.cancel(requestedDate, callContext);
return refreshedSubscription;
- } catch (EntitlementUserApiException e) {
+ } catch (SubscriptionUserApiException e) {
fail();
return null;
}
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationInvoiceWithRepairLogic.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationInvoiceWithRepairLogic.java
index 750ab45..42a5341 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationInvoiceWithRepairLogic.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationInvoiceWithRepairLogic.java
@@ -39,14 +39,14 @@ import com.ning.billing.catalog.api.Currency;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.PriceListSet;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.entitlement.api.user.SubscriptionData;
+import com.ning.billing.subscription.api.user.SubscriptionData;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItemType;
import com.ning.billing.invoice.generator.DefaultInvoiceGeneratorWithSwitchRepairLogic;
import com.ning.billing.invoice.generator.DefaultInvoiceGeneratorWithSwitchRepairLogic.REPAIR_INVOICE_LOGIC;
import com.ning.billing.payment.api.Payment;
import com.ning.billing.payment.api.PaymentStatus;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.google.common.collect.ImmutableList;
@@ -80,14 +80,14 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
final BillingPeriod term = BillingPeriod.MONTHLY;
final String pricelistName = PriceListSet.DEFAULT_PRICELIST_NAME;
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), UUID.randomUUID().toString(), callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), UUID.randomUUID().toString(), callContext);
final PlanPhaseSpecifier bpPlanPhaseSpecifier = new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, pricelistName, null);
//
// CREATE SUBSCRIPTION AND EXPECT BOTH EVENTS: NextEvent.CREATE NextEvent.INVOICE
//
busHandler.pushExpectedEvents(NextEvent.CREATE, NextEvent.INVOICE);
- final SubscriptionData bpSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
+ final SubscriptionData bpSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
bpPlanPhaseSpecifier,
null,
callContext));
@@ -188,14 +188,14 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
final BillingPeriod term = BillingPeriod.MONTHLY;
final String pricelistName = PriceListSet.DEFAULT_PRICELIST_NAME;
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), UUID.randomUUID().toString(), callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), UUID.randomUUID().toString(), callContext);
final PlanPhaseSpecifier bpPlanPhaseSpecifier = new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, pricelistName, null);
//
// CREATE SUBSCRIPTION AND EXPECT BOTH EVENTS: NextEvent.CREATE NextEvent.INVOICE
//
busHandler.pushExpectedEvents(NextEvent.CREATE, NextEvent.INVOICE);
- final SubscriptionData bpSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
+ final SubscriptionData bpSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
bpPlanPhaseSpecifier,
null,
callContext));
@@ -429,7 +429,7 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
// Set clock to the initial start date - we implicitly assume here that the account timezone is UTC
clock.setDeltaFromReality(today.toDateTimeAtCurrentTime(DateTimeZone.UTC).getMillis() - clock.getUTCNow().getMillis());
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.ANNUAL;
@@ -440,7 +440,7 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
//
busHandler.pushExpectedEvents(NextEvent.CREATE, NextEvent.INVOICE);
final PlanPhaseSpecifier bpPlanPhaseSpecifier = new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null);
- final SubscriptionData bpSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
+ final SubscriptionData bpSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
bpPlanPhaseSpecifier,
null,
callContext));
@@ -449,7 +449,7 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
assertListenerStatus();
assertEquals(invoiceUserApi.getInvoicesByAccount(account.getId(), callContext).size(), 1);
- assertEquals(entitlementUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.ANNUAL);
+ assertEquals(subscriptionUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.ANNUAL);
// Move out of trials for interesting invoices adjustments
busHandler.pushExpectedEvents(NextEvent.PHASE, NextEvent.INVOICE, NextEvent.PAYMENT);
@@ -471,7 +471,7 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
assertTrue(busHandler.isCompleted(DELAY));
assertListenerStatus();
- assertEquals(entitlementUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.MONTHLY);
+ assertEquals(subscriptionUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.MONTHLY);
invoices = invoiceUserApi.getInvoicesByAccount(account.getId(), callContext);
@@ -553,7 +553,7 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
// Set clock to the initial start date - we implicitly assume here that the account timezone is UTC
clock.setDeltaFromReality(today.toDateTimeAtCurrentTime(DateTimeZone.UTC).getMillis() - clock.getUTCNow().getMillis());
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.ANNUAL;
@@ -564,7 +564,7 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
//
busHandler.pushExpectedEvents(NextEvent.CREATE, NextEvent.INVOICE);
final PlanPhaseSpecifier bpPlanPhaseSpecifier = new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null);
- final SubscriptionData bpSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
+ final SubscriptionData bpSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
bpPlanPhaseSpecifier,
null,
callContext));
@@ -573,7 +573,7 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
assertListenerStatus();
assertEquals(invoiceUserApi.getInvoicesByAccount(account.getId(), callContext).size(), 1);
- assertEquals(entitlementUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.ANNUAL);
+ assertEquals(subscriptionUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.ANNUAL);
// Move out of trials for interesting invoices adjustments
busHandler.pushExpectedEvents(NextEvent.PHASE, NextEvent.INVOICE, NextEvent.PAYMENT);
@@ -592,7 +592,7 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
//
busHandler.pushExpectedEvents(NextEvent.CHANGE, NextEvent.INVOICE, NextEvent.INVOICE_ADJUSTMENT);
assertTrue(bpSubscription.changePlanWithPolicy(productName, BillingPeriod.MONTHLY, planSetName, clock.getUTCNow(), ActionPolicy.IMMEDIATE, callContext));
- assertEquals(entitlementUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.MONTHLY);
+ assertEquals(subscriptionUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.MONTHLY);
assertTrue(busHandler.isCompleted(DELAY));
assertListenerStatus();
@@ -669,7 +669,7 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
// Set clock to the initial start date - we implicitly assume here that the account timezone is UTC
clock.setDeltaFromReality(today.toDateTimeAtCurrentTime(DateTimeZone.UTC).getMillis() - clock.getUTCNow().getMillis());
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.ANNUAL;
@@ -680,7 +680,7 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
//
busHandler.pushExpectedEvents(NextEvent.CREATE, NextEvent.INVOICE);
final PlanPhaseSpecifier bpPlanPhaseSpecifier = new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null);
- final SubscriptionData bpSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
+ final SubscriptionData bpSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
bpPlanPhaseSpecifier,
null,
callContext));
@@ -689,7 +689,7 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
assertListenerStatus();
assertEquals(invoiceUserApi.getInvoicesByAccount(account.getId(), callContext).size(), 1);
- assertEquals(entitlementUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.ANNUAL);
+ assertEquals(subscriptionUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.ANNUAL);
// Move out of trials for interesting invoices adjustments
busHandler.pushExpectedEvents(NextEvent.PHASE, NextEvent.INVOICE, NextEvent.PAYMENT);
@@ -735,7 +735,7 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
//
busHandler.pushExpectedEvents(NextEvent.CHANGE, NextEvent.INVOICE, NextEvent.INVOICE_ADJUSTMENT);
assertTrue(bpSubscription.changePlanWithPolicy(productName, BillingPeriod.MONTHLY, planSetName, clock.getUTCNow(), ActionPolicy.IMMEDIATE, callContext));
- assertEquals(entitlementUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.MONTHLY);
+ assertEquals(subscriptionUserApi.getSubscriptionFromId(bpSubscription.getId(), callContext).getCurrentPlan().getBillingPeriod(), BillingPeriod.MONTHLY);
assertTrue(busHandler.isCompleted(DELAY));
assertListenerStatus();
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoInvoiceOffTag.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoInvoiceOffTag.java
index ef9d1b2..e8b8f87 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoInvoiceOffTag.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoInvoiceOffTag.java
@@ -31,10 +31,10 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.PriceListSet;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.entitlement.api.user.SubscriptionData;
+import com.ning.billing.subscription.api.user.SubscriptionData;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceUserApi;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.util.api.TagApiException;
import com.ning.billing.util.api.TagDefinitionApiException;
import com.ning.billing.util.api.TagUserApi;
@@ -68,7 +68,7 @@ public class TestIntegrationWithAutoInvoiceOffTag extends TestIntegrationBase {
account = createAccountWithNonOsgiPaymentMethod(getAccountData(25));
assertNotNull(account);
- bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
productName = "Shotgun";
term = BillingPeriod.MONTHLY;
@@ -83,8 +83,8 @@ public class TestIntegrationWithAutoInvoiceOffTag extends TestIntegrationBase {
// set next invoice to fail and create network
busHandler.pushExpectedEvents(NextEvent.CREATE);
- final SubscriptionData baseSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
- new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
+ final SubscriptionData baseSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
+ new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
assertNotNull(baseSubscription);
assertTrue(busHandler.isCompleted(DELAY));
@@ -119,8 +119,8 @@ public class TestIntegrationWithAutoInvoiceOffTag extends TestIntegrationBase {
// set next invoice to fail and create network
busHandler.pushExpectedEvents(NextEvent.CREATE, NextEvent.INVOICE);
- final SubscriptionData baseSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
- new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
+ final SubscriptionData baseSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
+ new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
assertNotNull(baseSubscription);
assertTrue(busHandler.isCompleted(DELAY));
@@ -146,16 +146,16 @@ public class TestIntegrationWithAutoInvoiceOffTag extends TestIntegrationBase {
// set next invoice to fail and create network
busHandler.pushExpectedEvents(NextEvent.CREATE, NextEvent.INVOICE);
- final SubscriptionData baseSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
- new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
+ final SubscriptionData baseSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
+ new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
assertNotNull(baseSubscription);
assertTrue(busHandler.isCompleted(DELAY));
- final SubscriptionBundle bundle2 = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle2 = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
busHandler.pushExpectedEvents(NextEvent.CREATE, NextEvent.INVOICE);
- final SubscriptionData baseSubscription2 = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle2.getId(),
- new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
+ final SubscriptionData baseSubscription2 = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle2.getId(),
+ new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
assertNotNull(baseSubscription2);
assertTrue(busHandler.isCompleted(DELAY));
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoPayOff.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoPayOff.java
index 05e040a..94ffa29 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoPayOff.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoPayOff.java
@@ -13,6 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
+
package com.ning.billing.beatrix.integration;
import java.math.BigDecimal;
@@ -31,14 +32,14 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.PriceListSet;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.util.config.PaymentConfig;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.entitlement.api.user.SubscriptionData;
+import com.ning.billing.subscription.api.user.SubscriptionData;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceUserApi;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.util.api.TagApiException;
import com.ning.billing.util.api.TagDefinitionApiException;
import com.ning.billing.util.api.TagUserApi;
+import com.ning.billing.util.config.PaymentConfig;
import com.ning.billing.util.tag.ControlTagType;
import com.ning.billing.util.tag.Tag;
@@ -75,7 +76,7 @@ public class TestIntegrationWithAutoPayOff extends TestIntegrationBase {
account = createAccountWithNonOsgiPaymentMethod(getAccountData(25));
assertNotNull(account);
- bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
productName = "Shotgun";
term = BillingPeriod.MONTHLY;
@@ -89,8 +90,8 @@ public class TestIntegrationWithAutoPayOff extends TestIntegrationBase {
busHandler.pushExpectedEvents(NextEvent.INVOICE);
busHandler.pushExpectedEvents(NextEvent.CREATE);
- final SubscriptionData baseSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
- new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
+ final SubscriptionData baseSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
+ new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
assertNotNull(baseSubscription);
assertTrue(busHandler.isCompleted(DELAY));
@@ -137,8 +138,8 @@ public class TestIntegrationWithAutoPayOff extends TestIntegrationBase {
busHandler.pushExpectedEvents(NextEvent.INVOICE);
busHandler.pushExpectedEvents(NextEvent.CREATE);
- final SubscriptionData baseSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
- new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
+ final SubscriptionData baseSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
+ new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
assertNotNull(baseSubscription);
assertTrue(busHandler.isCompleted(DELAY));
@@ -203,8 +204,8 @@ public class TestIntegrationWithAutoPayOff extends TestIntegrationBase {
busHandler.pushExpectedEvents(NextEvent.INVOICE);
busHandler.pushExpectedEvents(NextEvent.CREATE);
- final SubscriptionData baseSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
- new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
+ final SubscriptionData baseSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
+ new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
assertNotNull(baseSubscription);
assertTrue(busHandler.isCompleted(DELAY));
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPaymentRefund.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPaymentRefund.java
index f3e829b..c9d08cc 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPaymentRefund.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPaymentRefund.java
@@ -36,13 +36,13 @@ import com.ning.billing.beatrix.util.RefundChecker.ExpectedRefundCheck;
import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.Currency;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.entitlement.api.user.SubscriptionData;
+import com.ning.billing.subscription.api.user.SubscriptionData;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItem;
import com.ning.billing.invoice.api.InvoiceItemType;
import com.ning.billing.payment.api.Payment;
import com.ning.billing.payment.api.PaymentStatus;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.google.common.base.Function;
import com.google.common.base.Predicate;
@@ -103,7 +103,7 @@ public class TestPaymentRefund extends TestIntegrationBase {
// set clock to the initial start date
clock.setTime(initialCreationDate);
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
invoiceItemCount = 0;
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPublicBus.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPublicBus.java
index be6ff80..4dfeb9c 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPublicBus.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPublicBus.java
@@ -30,9 +30,9 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.PriceListSet;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.entitlement.api.user.SubscriptionData;
+import com.ning.billing.subscription.api.user.SubscriptionData;
import com.ning.billing.notification.plugin.api.ExtBusEvent;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.google.common.eventbus.Subscribe;
@@ -95,7 +95,7 @@ public class TestPublicBus extends TestIntegrationBase {
// set clock to the initial start date
clock.setDeltaFromReality(initialDate.getMillis() - clock.getUTCNow().getMillis());
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever2", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever2", callContext);
String productName = "Shotgun";
BillingPeriod term = BillingPeriod.MONTHLY;
@@ -107,7 +107,7 @@ public class TestPublicBus extends TestIntegrationBase {
busHandler.pushExpectedEvent(NextEvent.CREATE);
busHandler.pushExpectedEvent(NextEvent.INVOICE);
- SubscriptionData subscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
+ SubscriptionData subscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
assertNotNull(subscription);
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 f0fde61..2f16774 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
@@ -13,6 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
+
package com.ning.billing.beatrix.integration;
import java.util.Collections;
@@ -33,16 +34,16 @@ import com.ning.billing.catalog.api.PhaseType;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.PriceListSet;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.timeline.BundleTimeline;
-import com.ning.billing.entitlement.api.timeline.SubscriptionTimeline;
-import com.ning.billing.entitlement.api.timeline.SubscriptionTimeline.DeletedEvent;
-import com.ning.billing.entitlement.api.timeline.SubscriptionTimeline.ExistingEvent;
-import com.ning.billing.entitlement.api.timeline.SubscriptionTimeline.NewEvent;
-import com.ning.billing.entitlement.api.user.SubscriptionState;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.entitlement.api.user.SubscriptionData;
-import com.ning.billing.entitlement.api.user.SubscriptionEvents;
+import com.ning.billing.subscription.api.user.SubscriptionData;
+import com.ning.billing.subscription.api.user.SubscriptionEvents;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.timeline.BundleTimeline;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimeline;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimeline.DeletedEvent;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimeline.ExistingEvent;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimeline.NewEvent;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionState;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
@@ -70,7 +71,7 @@ public class TestRepairIntegration extends TestIntegrationBase {
final Account account = createAccountWithNonOsgiPaymentMethod(getAccountData(25));
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.MONTHLY;
@@ -78,8 +79,8 @@ public class TestRepairIntegration extends TestIntegrationBase {
busHandler.pushExpectedEvent(NextEvent.CREATE);
busHandler.pushExpectedEvent(NextEvent.INVOICE);
- final SubscriptionData baseSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
- new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
+ final SubscriptionData baseSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
+ new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null), null, callContext));
assertNotNull(baseSubscription);
assertTrue(busHandler.isCompleted(DELAY));
@@ -90,15 +91,15 @@ public class TestRepairIntegration extends TestIntegrationBase {
busHandler.pushExpectedEvent(NextEvent.CREATE);
busHandler.pushExpectedEvent(NextEvent.INVOICE);
busHandler.pushExpectedEvent(NextEvent.PAYMENT);
- final SubscriptionData aoSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
- new PlanPhaseSpecifier("Telescopic-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY, PriceListSet.DEFAULT_PRICELIST_NAME, null), null, callContext));
+ final SubscriptionData aoSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
+ new PlanPhaseSpecifier("Telescopic-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY, PriceListSet.DEFAULT_PRICELIST_NAME, null), null, callContext));
assertTrue(busHandler.isCompleted(DELAY));
busHandler.pushExpectedEvent(NextEvent.CREATE);
busHandler.pushExpectedEvent(NextEvent.INVOICE);
busHandler.pushExpectedEvent(NextEvent.PAYMENT);
- final SubscriptionData aoSubscription2 = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
- new PlanPhaseSpecifier("Laser-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY, PriceListSet.DEFAULT_PRICELIST_NAME, null), null, callContext));
+ final SubscriptionData aoSubscription2 = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
+ new PlanPhaseSpecifier("Laser-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY, PriceListSet.DEFAULT_PRICELIST_NAME, null), null, callContext));
assertTrue(busHandler.isCompleted(DELAY));
@@ -150,18 +151,18 @@ public class TestRepairIntegration extends TestIntegrationBase {
repairApi.repairBundle(bundleRepair, false, callContext);
assertTrue(busHandler.isCompleted(DELAY));
- final SubscriptionData newAoSubscription = subscriptionDataFromSubscription(entitlementUserApi.getSubscriptionFromId(aoSubscription.getId(), callContext));
+ final SubscriptionData newAoSubscription = subscriptionDataFromSubscription(subscriptionUserApi.getSubscriptionFromId(aoSubscription.getId(), callContext));
assertEquals(newAoSubscription.getState(), SubscriptionState.CANCELLED);
assertEquals(newAoSubscription.getAllTransitions().size(), 2);
assertEquals(newAoSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
- final SubscriptionData newAoSubscription2 = subscriptionDataFromSubscription(entitlementUserApi.getSubscriptionFromId(aoSubscription2.getId(), callContext));
+ final SubscriptionData newAoSubscription2 = subscriptionDataFromSubscription(subscriptionUserApi.getSubscriptionFromId(aoSubscription2.getId(), callContext));
assertEquals(newAoSubscription2.getState(), SubscriptionState.ACTIVE);
assertEquals(newAoSubscription2.getAllTransitions().size(), 2);
assertEquals(newAoSubscription2.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
- final SubscriptionData newBaseSubscription = subscriptionDataFromSubscription(entitlementUserApi.getSubscriptionFromId(baseSubscription.getId(), callContext));
+ final SubscriptionData newBaseSubscription = subscriptionDataFromSubscription(subscriptionUserApi.getSubscriptionFromId(baseSubscription.getId(), callContext));
assertEquals(newBaseSubscription.getState(), SubscriptionState.ACTIVE);
assertEquals(newBaseSubscription.getAllTransitions().size(), 3);
assertEquals(newBaseSubscription.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestTagApi.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestTagApi.java
index 1ada9e4..ff98762 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestTagApi.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestTagApi.java
@@ -30,9 +30,9 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.PriceListSet;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.entitlement.api.user.SubscriptionData;
+import com.ning.billing.subscription.api.user.SubscriptionData;
import com.ning.billing.invoice.api.Invoice;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.util.tag.ControlTagType;
import com.ning.billing.util.tag.Tag;
import com.ning.billing.util.tag.TagDefinition;
@@ -80,7 +80,7 @@ public class TestTagApi extends TestIntegrationBase {
//
// Create necessary logic to end up with an Invoice object on that account.
//
- final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
+ final SubscriptionBundle bundle = subscriptionUserApi.createBundleForAccount(account.getId(), "whatever", callContext);
final String productName = "Shotgun";
final BillingPeriod term = BillingPeriod.ANNUAL;
@@ -88,7 +88,7 @@ public class TestTagApi extends TestIntegrationBase {
busHandler.pushExpectedEvents(NextEvent.CREATE, NextEvent.INVOICE);
final PlanPhaseSpecifier bpPlanPhaseSpecifier = new PlanPhaseSpecifier(productName, ProductCategory.BASE, term, planSetName, null);
- final SubscriptionData bpSubscription = subscriptionDataFromSubscription(entitlementUserApi.createSubscription(bundle.getId(),
+ final SubscriptionData bpSubscription = subscriptionDataFromSubscription(subscriptionUserApi.createSubscription(bundle.getId(),
bpPlanPhaseSpecifier,
null,
callContext));
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/util/AuditChecker.java b/beatrix/src/test/java/com/ning/billing/beatrix/util/AuditChecker.java
index 69adead..cbcced8 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/util/AuditChecker.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/util/AuditChecker.java
@@ -32,16 +32,16 @@ import org.testng.Assert;
import com.ning.billing.account.api.Account;
import com.ning.billing.account.dao.AccountSqlDao;
-import com.ning.billing.entitlement.api.timeline.EntitlementRepairException;
-import com.ning.billing.entitlement.engine.dao.BundleSqlDao;
-import com.ning.billing.entitlement.engine.dao.EntitlementEventSqlDao;
-import com.ning.billing.entitlement.engine.dao.SubscriptionSqlDao;
+import com.ning.billing.subscription.engine.dao.BundleSqlDao;
+import com.ning.billing.subscription.engine.dao.SubscriptionEventSqlDao;
+import com.ning.billing.subscription.engine.dao.SubscriptionSqlDao;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItem;
import com.ning.billing.invoice.dao.InvoiceItemSqlDao;
import com.ning.billing.invoice.dao.InvoiceSqlDao;
import com.ning.billing.payment.api.Payment;
import com.ning.billing.payment.dao.PaymentSqlDao;
+import com.ning.billing.subscription.api.timeline.SubscriptionRepairException;
import com.ning.billing.util.api.AuditLevel;
import com.ning.billing.util.api.AuditUserApi;
import com.ning.billing.util.audit.AuditLog;
@@ -52,9 +52,7 @@ import com.ning.billing.util.audit.AuditLogsForPayments;
import com.ning.billing.util.audit.ChangeType;
import com.ning.billing.util.callcontext.CallContext;
import com.ning.billing.util.callcontext.InternalCallContextFactory;
-import com.ning.billing.util.callcontext.UserType;
import com.ning.billing.util.dao.NonEntityDao;
-import com.ning.billing.util.dao.TableName;
import com.ning.billing.util.entity.Entity;
import com.ning.billing.util.entity.dao.EntityModelDao;
import com.ning.billing.util.entity.dao.EntitySqlDao;
@@ -80,7 +78,9 @@ public class AuditChecker {
}
- /*********************************************** ACCOUNT ********************************************************/
+ /**
+ * ******************************************** ACCOUNT *******************************************************
+ */
public void checkAccountCreated(final Account account, final CallContext context) {
AuditLogsForAccount result = auditUserApi.getAuditLogsForAccount(account.getId(), AuditLevel.FULL, context);
@@ -98,7 +98,9 @@ public class AuditChecker {
checkAuditLog(ChangeType.UPDATE, context, paymentLogs.get(1), payment.getId(), PaymentSqlDao.class, true, false);
}
- /*********************************************** BUNDLE ********************************************************/
+ /**
+ * ******************************************** BUNDLE *******************************************************
+ */
// Pass the call context used to create the bundle
@@ -115,7 +117,9 @@ public class AuditChecker {
checkAuditLog(ChangeType.UPDATE, context, auditLogsForBundles.getBundlesAuditLogs().get(bundleId).get(auditLogsForBundles.getBundlesAuditLogs().get(bundleId).size() - 1), bundleId, BundleSqlDao.class, false, false);
}
- /*********************************************** SUBSCRIPTION ********************************************************/
+ /**
+ * ******************************************** SUBSCRIPTION *******************************************************
+ */
// Pass the call context used to create the subscription
public void checkSubscriptionCreated(final UUID bundleId, final UUID subscriptionId, final CallContext context) {
@@ -135,31 +139,36 @@ public class AuditChecker {
checkAuditLog(ChangeType.UPDATE, context, auditLogsForBundles.getSubscriptionsAuditLogs().get(subscriptionId).get(1), subscriptionId, SubscriptionSqlDao.class, false, false);
}
- /*********************************************** SUBSCRIPTION EVENTS ********************************************************/
+ /**
+ * ******************************************** SUBSCRIPTION EVENTS *******************************************************
+ */
// Pass the call context used to create the subscription event
public void checkSubscriptionEventCreated(final UUID bundleId, final UUID subscriptionEventId, final CallContext context) {
final AuditLogsForBundles auditLogsForBundles = getAuditLogsForBundle(bundleId, context);
- checkAuditLog(ChangeType.INSERT, context, auditLogsForBundles.getSubscriptionEventsAuditLogs().get(subscriptionEventId).get(0), subscriptionEventId, EntitlementEventSqlDao.class, false, true);
+ checkAuditLog(ChangeType.INSERT, context, auditLogsForBundles.getSubscriptionEventsAuditLogs().get(subscriptionEventId).get(0), subscriptionEventId, SubscriptionEventSqlDao.class, false, true);
}
// Pass the call context used to update the subscription event
public void checkSubscriptionEventUpdated(final UUID bundleId, final UUID subscriptionEventId, final CallContext context) {
final AuditLogsForBundles auditLogsForBundles = getAuditLogsForBundle(bundleId, context);
checkAuditLog(ChangeType.INSERT, auditLogsForBundles.getSubscriptionEventsAuditLogs().get(subscriptionEventId).get(0));
- checkAuditLog(ChangeType.UPDATE, context, auditLogsForBundles.getSubscriptionEventsAuditLogs().get(subscriptionEventId).get(1), subscriptionEventId, EntitlementEventSqlDao.class, false, true);
+ checkAuditLog(ChangeType.UPDATE, context, auditLogsForBundles.getSubscriptionEventsAuditLogs().get(subscriptionEventId).get(1), subscriptionEventId, SubscriptionEventSqlDao.class, false, true);
}
-
- /*********************************************** PAYMENT ********************************************************/
+ /**
+ * ******************************************** PAYMENT *******************************************************
+ */
private AuditLogsForPayments getAuditLogsForPayment(final Payment payment, final CallContext context) {
AuditLogsForPayments results = auditUserApi.getAuditLogsForPayments(Collections.singletonList(payment), AuditLevel.FULL, context);
return results;
}
- /*********************************************** INVOICE ********************************************************/
+ /**
+ * ******************************************** INVOICE *******************************************************
+ */
public void checkInvoiceCreated(final Invoice invoice, final CallContext context) {
AuditLogsForInvoices result = getAuditLogForInvoice(invoice, context);
@@ -177,12 +186,10 @@ public class AuditChecker {
}
-
-
private AuditLogsForBundles getAuditLogsForBundle(final UUID bundleId, final CallContext context) {
try {
return auditUserApi.getAuditLogsForBundle(bundleId, AuditLevel.FULL, context);
- } catch (EntitlementRepairException e) {
+ } catch (SubscriptionRepairException e) {
Assert.fail(e.toString());
return null;
}
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/util/InvoiceChecker.java b/beatrix/src/test/java/com/ning/billing/beatrix/util/InvoiceChecker.java
index c7fff39..21b6df3 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/util/InvoiceChecker.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/util/InvoiceChecker.java
@@ -28,14 +28,14 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.testng.Assert;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.Subscription;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceApiException;
import com.ning.billing.invoice.api.InvoiceItem;
import com.ning.billing.invoice.api.InvoiceItemType;
import com.ning.billing.invoice.api.InvoiceUserApi;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
import com.ning.billing.util.callcontext.CallContext;
import com.google.common.collect.ImmutableList;
@@ -51,13 +51,13 @@ public class InvoiceChecker {
private static final Logger log = LoggerFactory.getLogger(InvoiceChecker.class);
private final InvoiceUserApi invoiceUserApi;
- private final EntitlementUserApi entitlementApi;
+ private final SubscriptionUserApi subscriptionApi;
private final AuditChecker auditChecker;
@Inject
- public InvoiceChecker(final InvoiceUserApi invoiceUserApi, final EntitlementUserApi entitlementApi, final AuditChecker auditChecker) {
+ public InvoiceChecker(final InvoiceUserApi invoiceUserApi, final SubscriptionUserApi subscriptionApi, final AuditChecker auditChecker) {
this.invoiceUserApi = invoiceUserApi;
- this.entitlementApi = entitlementApi;
+ this.subscriptionApi = subscriptionApi;
this.auditChecker = auditChecker;
}
@@ -126,7 +126,7 @@ public class InvoiceChecker {
public void checkChargedThroughDate(final UUID subscriptionId, final LocalDate expectedLocalCTD, final CallContext context) {
try {
- final Subscription subscription = entitlementApi.getSubscriptionFromId(subscriptionId, context);
+ final Subscription subscription = subscriptionApi.getSubscriptionFromId(subscriptionId, context);
if (expectedLocalCTD == null) {
assertNull(subscription.getChargedThroughDate());
} else {
@@ -137,7 +137,7 @@ public class InvoiceChecker {
assertNotNull(subscription.getChargedThroughDate());
assertTrue(subscription.getChargedThroughDate().compareTo(expectedCTD) == 0, msg);
}
- } catch (EntitlementUserApiException e) {
+ } catch (SubscriptionUserApiException e) {
fail("Failed to retrieve subscription for " + subscriptionId);
}
}
diff --git a/beatrix/src/test/resources/beatrix.properties b/beatrix/src/test/resources/beatrix.properties
index 117b80a..8365fab 100644
--- a/beatrix/src/test/resources/beatrix.properties
+++ b/beatrix/src/test/resources/beatrix.properties
@@ -1,9 +1,6 @@
killbill.catalog.uri=file:src/test/resources/catalogSample.xml
-killbill.entitlement.dao.claim.time=60000
-killbill.entitlement.dao.ready.max=1
killbill.payment.engine.notifications.sleep=100
killbill.invoice.engine.notifications.sleep=100
-killbill.entitlement.engine.notifications.sleep=100
killbill.billing.persistent.bus.sleep=100
killbill.billing.persistent.bus.nbThreads=1
killbill.billing.persistent.bus.claimed=1
diff --git a/beatrix/src/test/resources/killbill-notification-test.tar.gz b/beatrix/src/test/resources/killbill-notification-test.tar.gz
index c193adc..c0c64eb 100644
Binary files a/beatrix/src/test/resources/killbill-notification-test.tar.gz and b/beatrix/src/test/resources/killbill-notification-test.tar.gz differ
diff --git a/beatrix/src/test/resources/killbill-payment-test.tar.gz b/beatrix/src/test/resources/killbill-payment-test.tar.gz
index 44a4634..91c8088 100644
Binary files a/beatrix/src/test/resources/killbill-payment-test.tar.gz and b/beatrix/src/test/resources/killbill-payment-test.tar.gz differ
catalog/killbill-catalog.iml 3(+2 -1)
diff --git a/catalog/killbill-catalog.iml b/catalog/killbill-catalog.iml
index 81added..426cb6a 100644
--- a/catalog/killbill-catalog.iml
+++ b/catalog/killbill-catalog.iml
@@ -12,12 +12,13 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.findbugs:jsr305:1.3.9" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:14.0.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.inject:guice:3.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.inject:javax.inject:1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: aopalliance:aopalliance:1.0" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-internal-api" />
entitlement/killbill-entitlement.iml 9(+2 -7)
diff --git a/entitlement/killbill-entitlement.iml b/entitlement/killbill-entitlement.iml
index 3051b2e..5b56a6e 100644
--- a/entitlement/killbill-entitlement.iml
+++ b/entitlement/killbill-entitlement.iml
@@ -4,10 +4,10 @@
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
+ <sourceFolder url="file://$MODULE_DIR$/src/test/resources" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/test/resources" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
@@ -19,12 +19,7 @@
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.inject:javax.inject:1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: aopalliance:aopalliance:1.0" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: com.h2database:h2:1.3.158" level="project" />
- <orderEntry type="library" scope="TEST" name="Maven: com.jayway.awaitility:awaitility:1.3.3" level="project" />
- <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-library:1.1" level="project" />
- <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.1" level="project" />
- <orderEntry type="library" scope="TEST" name="Maven: cglib:cglib-nodep:2.2" level="project" />
- <orderEntry type="library" scope="TEST" name="Maven: org.objenesis:objenesis:1.2" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-catalog" scope="TEST" production-on-test="" />
<orderEntry type="library" scope="TEST" name="Maven: com.ning.billing:killbill-catalog:test-jar:tests:0.3.4-SNAPSHOT" level="project" />
entitlement/pom.xml 5(+0 -5)
diff --git a/entitlement/pom.xml b/entitlement/pom.xml
index ac036ad..c2e9192 100644
--- a/entitlement/pom.xml
+++ b/entitlement/pom.xml
@@ -50,11 +50,6 @@
<scope>test</scope>
</dependency>
<dependency>
- <groupId>com.jayway.awaitility</groupId>
- <artifactId>awaitility</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
<groupId>com.ning.billing</groupId>
<artifactId>killbill-api</artifactId>
</dependency>
diff --git a/entitlement/src/main/java/com/ning/billing/entitlement/glue/DefaultEntitlementModule.java b/entitlement/src/main/java/com/ning/billing/entitlement/glue/DefaultEntitlementModule.java
index c23c51f..ebd3a59 100644
--- a/entitlement/src/main/java/com/ning/billing/entitlement/glue/DefaultEntitlementModule.java
+++ b/entitlement/src/main/java/com/ning/billing/entitlement/glue/DefaultEntitlementModule.java
@@ -1,129 +1,66 @@
-/*
- * Copyright 2010-2013 Ning, Inc.
- *
- * Ning licenses this file to you under the Apache License, version 2.0
- * (the "License"); you may not use this file except in compliance with the
- * License. You may obtain a copy of the License at:
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations
- * under the License.
- */
-
package com.ning.billing.entitlement.glue;
-import org.skife.config.ConfigSource;
-import org.skife.config.ConfigurationObjectFactory;
-
-import com.ning.billing.entitlement.engine.dao.DefaultEntitlementDao;
-import com.ning.billing.util.config.EntitlementConfig;
-import com.ning.billing.entitlement.alignment.MigrationPlanAligner;
-import com.ning.billing.entitlement.alignment.PlanAligner;
-import com.ning.billing.entitlement.api.EntitlementService;
-import com.ning.billing.entitlement.api.SubscriptionApiService;
-import com.ning.billing.entitlement.api.migration.DefaultEntitlementMigrationApi;
-import com.ning.billing.entitlement.api.migration.EntitlementMigrationApi;
-import com.ning.billing.entitlement.api.svcs.DefaultEntitlementInternalApi;
-import com.ning.billing.entitlement.api.timeline.DefaultEntitlementTimelineApi;
-import com.ning.billing.entitlement.api.timeline.EntitlementTimelineApi;
-import com.ning.billing.entitlement.api.timeline.RepairEntitlementLifecycleDao;
-import com.ning.billing.entitlement.api.timeline.RepairSubscriptionApiService;
-import com.ning.billing.entitlement.api.transfer.DefaultEntitlementTransferApi;
-import com.ning.billing.entitlement.api.transfer.EntitlementTransferApi;
-import com.ning.billing.entitlement.api.user.DefaultEntitlementUserApi;
-import com.ning.billing.entitlement.api.user.DefaultSubscriptionApiService;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
-import com.ning.billing.entitlement.engine.addon.AddonUtils;
-import com.ning.billing.entitlement.engine.core.Engine;
-import com.ning.billing.entitlement.engine.dao.EntitlementDao;
-import com.ning.billing.entitlement.engine.dao.RepairEntitlementDao;
-import com.ning.billing.glue.EntitlementModule;
-import com.ning.billing.util.glue.RealImplementation;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
-
import com.google.inject.AbstractModule;
-import com.google.inject.name.Names;
+import com.ning.billing.account.api.AccountUserApi;
+import com.ning.billing.entitlement.api.BlockingAccountUserApi;
+import com.ning.billing.entitlement.api.BlockingSubscriptionUserApi;
+import com.ning.billing.entitlement.api.DefaultEntitlementApi;
+import com.ning.billing.entitlement.api.svcs.DefaultInternalBlockingApi;
+import com.ning.billing.entitlement.block.BlockingChecker;
+import com.ning.billing.entitlement.block.DefaultBlockingChecker;
+import com.ning.billing.entitlement.dao.BlockingStateDao;
+import com.ning.billing.entitlement.dao.DefaultBlockingStateDao;
+import com.ning.billing.glue.EntitlementModule;
+import com.ning.billing.entitlement.api.EntitlementApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
+import org.skife.config.ConfigSource;
public class DefaultEntitlementModule extends AbstractModule implements EntitlementModule {
- public static final String REPAIR_NAMED = "repair";
-
- protected final ConfigSource configSource;
public DefaultEntitlementModule(final ConfigSource configSource) {
- this.configSource = configSource;
- }
-
- protected void installConfig() {
- final EntitlementConfig config = new ConfigurationObjectFactory(configSource).build(EntitlementConfig.class);
- bind(EntitlementConfig.class).toInstance(config);
- }
-
- protected void installEntitlementDao() {
- bind(EntitlementDao.class).to(DefaultEntitlementDao.class).asEagerSingleton();
- bind(EntitlementDao.class).annotatedWith(Names.named(REPAIR_NAMED)).to(RepairEntitlementDao.class);
- bind(RepairEntitlementLifecycleDao.class).annotatedWith(Names.named(REPAIR_NAMED)).to(RepairEntitlementDao.class);
- bind(RepairEntitlementDao.class).asEagerSingleton();
- }
-
- protected void installEntitlementCore() {
-
- bind(SubscriptionApiService.class).annotatedWith(Names.named(REPAIR_NAMED)).to(RepairSubscriptionApiService.class).asEagerSingleton();
- bind(SubscriptionApiService.class).to(DefaultSubscriptionApiService.class).asEagerSingleton();
-
- bind(Engine.class).asEagerSingleton();
- bind(PlanAligner.class).asEagerSingleton();
- bind(AddonUtils.class).asEagerSingleton();
- bind(MigrationPlanAligner.class).asEagerSingleton();
-
- installEntitlementService();
- installEntitlementTimelineApi();
- installEntitlementMigrationApi();
- installEntitlementInternalApi();
- installEntitlementUserApi();
- installEntitlementTransferApi();
}
@Override
protected void configure() {
- installConfig();
- installEntitlementDao();
- installEntitlementCore();
+ installAccountUserApi();
+ installSubscriptionUserApi();
+ installBlockingStateDao();
+ installBlockingApi();
+ installEntitlementApi();
+ installBlockingChecker();
}
@Override
- public void installEntitlementService() {
- bind(EntitlementService.class).to(Engine.class).asEagerSingleton();
+ public void installBlockingStateDao() {
+ bind(BlockingStateDao.class).to(DefaultBlockingStateDao.class).asEagerSingleton();
}
@Override
- public void installEntitlementTimelineApi() {
- bind(EntitlementTimelineApi.class).to(DefaultEntitlementTimelineApi.class).asEagerSingleton();
+ public void installBlockingApi() {
+ bind(BlockingInternalApi.class).to(DefaultInternalBlockingApi.class).asEagerSingleton();
}
@Override
- public void installEntitlementMigrationApi() {
- bind(EntitlementMigrationApi.class).to(DefaultEntitlementMigrationApi.class).asEagerSingleton();
+ public void installAccountUserApi() {
+ bind(AccountUserApi.class).to(BlockingAccountUserApi.class).asEagerSingleton();
}
-
@Override
- public void installEntitlementInternalApi() {
- bind(EntitlementInternalApi.class).to(DefaultEntitlementInternalApi.class).asEagerSingleton();
+ public void installSubscriptionUserApi() {
+ bind(SubscriptionUserApi.class).to(BlockingSubscriptionUserApi.class).asEagerSingleton();
}
@Override
- public void installEntitlementUserApi() {
- bind(EntitlementUserApi.class).annotatedWith(RealImplementation.class).to(DefaultEntitlementUserApi.class).asEagerSingleton();
+ public void installEntitlementApi() {
+ bind(EntitlementApi.class).to(DefaultEntitlementApi.class).asEagerSingleton();
}
- @Override
- public void installEntitlementTransferApi() {
- bind(EntitlementTransferApi.class).to(DefaultEntitlementTransferApi.class).asEagerSingleton();
+ public void installBlockingChecker() {
+ bind(BlockingChecker.class).to(DefaultBlockingChecker.class).asEagerSingleton();
}
+
+
}
diff --git a/entitlement/src/main/resources/com/ning/billing/entitlement/ddl.sql b/entitlement/src/main/resources/com/ning/billing/entitlement/ddl.sql
index a510b75..2747e2d 100644
--- a/entitlement/src/main/resources/com/ning/billing/entitlement/ddl.sql
+++ b/entitlement/src/main/resources/com/ning/billing/entitlement/ddl.sql
@@ -1,74 +1,20 @@
/*! SET storage_engine=INNODB */;
-DROP TABLE IF EXISTS events;
-DROP TABLE IF EXISTS entitlement_events;
-DROP TABLE IF EXISTS subscription_events;
-CREATE TABLE subscription_events (
+DROP TABLE IF EXISTS blocking_states;
+CREATE TABLE blocking_states (
record_id int(11) unsigned NOT NULL AUTO_INCREMENT,
id char(36) NOT NULL,
- event_type varchar(9) NOT NULL,
- user_type varchar(25) DEFAULT NULL,
- requested_date datetime NOT NULL,
- effective_date datetime NOT NULL,
- subscription_id char(36) NOT NULL,
- plan_name varchar(64) DEFAULT NULL,
- phase_name varchar(128) DEFAULT NULL,
- price_list_name varchar(64) DEFAULT NULL,
- current_version int(11) DEFAULT 1,
- is_active bool DEFAULT 1,
- created_by varchar(50) NOT NULL,
+ blockable_id char(36) NOT NULL,
+ type varchar(20) NOT NULL,
+ state varchar(50) NOT NULL,
+ service varchar(20) NOT NULL,
+ block_change bool NOT NULL,
+ block_entitlement bool NOT NULL,
+ block_billing bool NOT NULL,
created_date datetime NOT NULL,
- updated_by varchar(50) NOT NULL,
- updated_date datetime NOT NULL,
account_record_id int(11) unsigned default null,
tenant_record_id int(11) unsigned default null,
PRIMARY KEY(record_id)
);
-CREATE UNIQUE INDEX subscription_events_id ON subscription_events(id);
-CREATE INDEX idx_ent_1 ON subscription_events(subscription_id, is_active, effective_date);
-CREATE INDEX idx_ent_2 ON subscription_events(subscription_id, effective_date, created_date, requested_date,id);
-CREATE INDEX subscription_events_tenant_account_record_id ON subscription_events(tenant_record_id, account_record_id);
-
-DROP TABLE IF EXISTS subscriptions;
-CREATE TABLE subscriptions (
- record_id int(11) unsigned NOT NULL AUTO_INCREMENT,
- id char(36) NOT NULL,
- bundle_id char(36) NOT NULL,
- category varchar(32) NOT NULL,
- start_date datetime NOT NULL,
- bundle_start_date datetime NOT NULL,
- active_version int(11) DEFAULT 1,
- charged_through_date datetime DEFAULT NULL,
- paid_through_date datetime DEFAULT NULL,
- created_by varchar(50) NOT NULL,
- created_date datetime NOT NULL,
- updated_by varchar(50) NOT NULL,
- updated_date datetime NOT NULL,
- account_record_id int(11) unsigned default null,
- tenant_record_id int(11) unsigned default null,
- PRIMARY KEY(record_id)
-);
-CREATE UNIQUE INDEX subscriptions_id ON subscriptions(id);
-CREATE INDEX subscriptions_bundle_id ON subscriptions(bundle_id);
-CREATE INDEX subscriptions_tenant_account_record_id ON subscriptions(tenant_record_id, account_record_id);
-
-DROP TABLE IF EXISTS bundles;
-CREATE TABLE bundles (
- record_id int(11) unsigned NOT NULL AUTO_INCREMENT,
- id char(36) NOT NULL,
- external_key varchar(64) NOT NULL,
- account_id char(36) NOT NULL,
- last_sys_update_date datetime,
- created_by varchar(50) NOT NULL,
- created_date datetime NOT NULL,
- updated_by varchar(50) NOT NULL,
- updated_date datetime NOT NULL,
- account_record_id int(11) unsigned default null,
- tenant_record_id int(11) unsigned default null,
- PRIMARY KEY(record_id)
-);
-CREATE UNIQUE INDEX bundles_id ON bundles(id);
-CREATE INDEX bundles_key ON bundles(external_key);
-CREATE INDEX bundles_account ON bundles(account_id);
-CREATE INDEX bundles_tenant_account_record_id ON bundles(tenant_record_id, account_record_id);
-
+CREATE INDEX blocking_states_id ON blocking_states(blockable_id);
+CREATE INDEX blocking_states_tenant_account_record_id ON blocking_states(tenant_record_id, account_record_id);
diff --git a/entitlement/src/test/java/com/ning/billing/entitlement/EntitlementTestSuiteNoDB.java b/entitlement/src/test/java/com/ning/billing/entitlement/EntitlementTestSuiteNoDB.java
index c01a84b..e3e4e8e 100644
--- a/entitlement/src/test/java/com/ning/billing/entitlement/EntitlementTestSuiteNoDB.java
+++ b/entitlement/src/test/java/com/ning/billing/entitlement/EntitlementTestSuiteNoDB.java
@@ -1,143 +1,68 @@
-/*
- * Copyright 2010-2013 Ning, Inc.
- *
- * Ning licenses this file to you under the Apache License, version 2.0
- * (the "License"); you may not use this file except in compliance with the
- * License. You may obtain a copy of the License at:
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations
- * under the License.
- */
-
package com.ning.billing.entitlement;
-import java.net.URL;
-
-import javax.inject.Inject;
-
-import org.mockito.Mockito;
-import org.skife.jdbi.v2.IDBI;
-import org.skife.jdbi.v2.tweak.HandleCallback;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.testng.Assert;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
import com.ning.billing.GuicyKillbillTestSuiteNoDB;
-import com.ning.billing.account.api.AccountData;
-import com.ning.billing.api.TestApiListener;
-import com.ning.billing.api.TestListenerStatus;
-import com.ning.billing.catalog.api.Catalog;
+import com.ning.billing.bus.api.PersistentBus;
import com.ning.billing.catalog.api.CatalogService;
-import com.ning.billing.entitlement.api.EntitlementService;
-import com.ning.billing.entitlement.api.migration.EntitlementMigrationApi;
-import com.ning.billing.entitlement.api.timeline.EntitlementTimelineApi;
-import com.ning.billing.entitlement.api.transfer.EntitlementTransferApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.entitlement.api.user.TestEntitlementHelper;
-import com.ning.billing.entitlement.engine.dao.EntitlementDao;
-import com.ning.billing.entitlement.engine.dao.MockEntitlementDaoMemory;
-import com.ning.billing.entitlement.glue.TestEngineModuleNoDB;
-import com.ning.billing.clock.ClockMock;
-import com.ning.billing.util.config.EntitlementConfig;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
-import com.ning.billing.util.svcsapi.bus.BusService;
+import com.ning.billing.entitlement.block.BlockingChecker;
+import com.ning.billing.entitlement.dao.BlockingStateDao;
+import com.ning.billing.entitlement.glue.TestEntitlementModuleNoDB;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.util.glue.RealImplementation;
+import com.ning.billing.util.svcapi.account.AccountInternalApi;
+import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
+import com.ning.billing.util.svcapi.tag.TagInternalApi;
+import com.ning.billing.util.tag.dao.TagDao;
import com.google.inject.Guice;
+import com.google.inject.Inject;
import com.google.inject.Injector;
-import com.google.inject.Stage;
-public class EntitlementTestSuiteNoDB extends GuicyKillbillTestSuiteNoDB {
+public abstract class EntitlementTestSuiteNoDB extends GuicyKillbillTestSuiteNoDB {
- protected static final Logger log = LoggerFactory.getLogger(EntitlementTestSuiteNoDB.class);
-
- @Inject
- protected EntitlementService entitlementService;
- @Inject
- protected EntitlementUserApi entitlementApi;
@Inject
- protected EntitlementInternalApi entitlementInternalApi;
+ protected AccountInternalApi accountInternalApi;
@Inject
- protected EntitlementTransferApi transferApi;
-
- @Inject
- protected EntitlementMigrationApi migrationApi;
+ protected BlockingInternalApi blockingInternalApi;
@Inject
- protected EntitlementTimelineApi repairApi;
-
+ protected BlockingStateDao blockingStateDao;
@Inject
protected CatalogService catalogService;
@Inject
- protected EntitlementConfig config;
- @Inject
- protected EntitlementDao dao;
- @Inject
- protected ClockMock clock;
- @Inject
- protected BusService busService;
-
+ @RealImplementation
+ protected SubscriptionUserApi subscriptionUserApi;
@Inject
- protected TestEntitlementHelper testUtil;
+ protected SubscriptionInternalApi subscriptionInternalApi;
@Inject
- protected TestApiListener testListener;
+ protected PersistentBus bus;
@Inject
- protected TestListenerStatus testListenerStatus;
-
+ protected TagDao tagDao;
@Inject
- protected EntitlementTestInitializer entitlementTestInitializer;
+ protected TagInternalApi tagInternalApi;
@Inject
- protected IDBI idbi;
-
- protected Catalog catalog;
- protected AccountData accountData;
- protected SubscriptionBundle bundle;
- private void loadSystemPropertiesFromClasspath(final String resource) {
- final URL url = DefaultEntitlementTestInitializer.class.getResource(resource);
- Assert.assertNotNull(url);
-
- configSource.merge(url);
- }
+ protected BlockingChecker blockingChecker;
@BeforeClass(groups = "fast")
- public void beforeClass() throws Exception {
- loadSystemPropertiesFromClasspath("/entitlement.properties");
-
- final Injector g = Guice.createInjector(Stage.PRODUCTION, new TestEngineModuleNoDB(configSource));
- g.injectMembers(this);
-
- // For TestApiListener#isCompleted
- Mockito.doReturn(0L).when(idbi).withHandle(Mockito.<HandleCallback<Long>>any());
+ protected void beforeClass() throws Exception {
+ final Injector injector = Guice.createInjector(new TestEntitlementModuleNoDB(configSource));
+ injector.injectMembers(this);
}
@BeforeMethod(groups = "fast")
public void beforeMethod() throws Exception {
-
- // CLEANUP ALL DB TABLES OR IN MEMORY STRUCTURES
- ((MockEntitlementDaoMemory) dao).reset();
-
- entitlementTestInitializer.startTestFamework(testListener, testListenerStatus, clock, busService, entitlementService);
-
- this.catalog = entitlementTestInitializer.initCatalog(catalogService);
- this.accountData = entitlementTestInitializer.initAccountData();
- this.bundle = entitlementTestInitializer.initBundle(entitlementApi, callContext);
+ bus.start();
}
@AfterMethod(groups = "fast")
- public void afterMethod() throws Exception {
- entitlementTestInitializer.stopTestFramework(testListener, busService, entitlementService);
+ public void afterMethod() {
+ bus.stop();
}
- protected void assertListenerStatus() {
- ((EntitlementTestListenerStatus) testListenerStatus).assertListenerStatus();
- }
+
}
diff --git a/entitlement/src/test/java/com/ning/billing/entitlement/EntitlementTestSuiteWithEmbeddedDB.java b/entitlement/src/test/java/com/ning/billing/entitlement/EntitlementTestSuiteWithEmbeddedDB.java
index ed234d4..b9999fa 100644
--- a/entitlement/src/test/java/com/ning/billing/entitlement/EntitlementTestSuiteWithEmbeddedDB.java
+++ b/entitlement/src/test/java/com/ning/billing/entitlement/EntitlementTestSuiteWithEmbeddedDB.java
@@ -1,130 +1,62 @@
-/*
- * Copyright 2010-2013 Ning, Inc.
- *
- * Ning licenses this file to you under the Apache License, version 2.0
- * (the "License"); you may not use this file except in compliance with the
- * License. You may obtain a copy of the License at:
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations
- * under the License.
- */
-
package com.ning.billing.entitlement;
-import java.net.URL;
-
-import javax.inject.Inject;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.testng.Assert;
+import com.google.inject.Guice;
+import com.google.inject.Inject;
+import com.google.inject.Injector;
+import com.ning.billing.GuicyKillbillTestSuiteWithEmbeddedDB;
+import com.ning.billing.bus.api.PersistentBus;
+import com.ning.billing.catalog.api.CatalogService;
+import com.ning.billing.entitlement.dao.BlockingStateDao;
+import com.ning.billing.entitlement.glue.TestEntitlementModuleWithEmbeddedDB;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.util.glue.RealImplementation;
+import com.ning.billing.util.svcapi.account.AccountInternalApi;
+import com.ning.billing.util.svcapi.junction.BillingInternalApi;
+import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
+import com.ning.billing.util.svcapi.tag.TagInternalApi;
+import com.ning.billing.util.tag.dao.TagDao;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
-import com.ning.billing.GuicyKillbillTestSuiteWithEmbeddedDB;
-import com.ning.billing.account.api.AccountData;
-import com.ning.billing.api.TestApiListener;
-import com.ning.billing.api.TestListenerStatus;
-import com.ning.billing.catalog.api.Catalog;
-import com.ning.billing.catalog.api.CatalogService;
-import com.ning.billing.entitlement.api.EntitlementService;
-import com.ning.billing.entitlement.api.migration.EntitlementMigrationApi;
-import com.ning.billing.entitlement.api.timeline.EntitlementTimelineApi;
-import com.ning.billing.entitlement.api.transfer.EntitlementTransferApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.entitlement.api.user.TestEntitlementHelper;
-import com.ning.billing.entitlement.engine.dao.EntitlementDao;
-import com.ning.billing.entitlement.glue.TestEngineModuleWithEmbeddedDB;
-import com.ning.billing.clock.ClockMock;
-import com.ning.billing.util.config.EntitlementConfig;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
-import com.ning.billing.util.svcsapi.bus.BusService;
-
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-import com.google.inject.Stage;
-
public class EntitlementTestSuiteWithEmbeddedDB extends GuicyKillbillTestSuiteWithEmbeddedDB {
- protected static final Logger log = LoggerFactory.getLogger(EntitlementTestSuiteWithEmbeddedDB.class);
@Inject
- protected EntitlementService entitlementService;
- @Inject
- protected EntitlementUserApi entitlementApi;
- @Inject
- protected EntitlementInternalApi entitlementInternalApi;
+ protected AccountInternalApi accountInternalApi;
@Inject
- protected EntitlementTransferApi transferApi;
-
- @Inject
- protected EntitlementMigrationApi migrationApi;
+ protected BlockingInternalApi blockingInternalApi;
@Inject
- protected EntitlementTimelineApi repairApi;
-
+ protected BlockingStateDao blockingStateDao;
@Inject
protected CatalogService catalogService;
@Inject
- protected EntitlementConfig config;
- @Inject
- protected EntitlementDao dao;
+ @RealImplementation
+ protected SubscriptionUserApi subscriptionUserApi;
@Inject
- protected ClockMock clock;
+ protected SubscriptionInternalApi subscriptionInternalApi;
@Inject
- protected BusService busService;
-
- @Inject
- protected TestEntitlementHelper testUtil;
+ protected PersistentBus bus;
@Inject
- protected TestApiListener testListener;
+ protected TagDao tagDao;
@Inject
- protected TestListenerStatus testListenerStatus;
- @Inject
- protected EntitlementTestInitializer entitlementTestInitializer;
-
- protected Catalog catalog;
- protected AccountData accountData;
- protected SubscriptionBundle bundle;
-
- private void loadSystemPropertiesFromClasspath(final String resource) {
- final URL url = DefaultEntitlementTestInitializer.class.getResource(resource);
- Assert.assertNotNull(url);
-
- configSource.merge(url);
- }
+ protected TagInternalApi tagInternalApi;
@BeforeClass(groups = "slow")
- public void beforeClass() throws Exception {
- loadSystemPropertiesFromClasspath("/entitlement.properties");
-
- final Injector g = Guice.createInjector(Stage.PRODUCTION, new TestEngineModuleWithEmbeddedDB(configSource));
- g.injectMembers(this);
+ protected void beforeClass() throws Exception {
+ final Injector injector = Guice.createInjector(new TestEntitlementModuleWithEmbeddedDB(configSource));
+ injector.injectMembers(this);
}
- @Override
@BeforeMethod(groups = "slow")
public void beforeMethod() throws Exception {
super.beforeMethod();
- entitlementTestInitializer.startTestFamework(testListener, testListenerStatus, clock, busService, entitlementService);
-
- this.catalog = entitlementTestInitializer.initCatalog(catalogService);
- this.accountData = entitlementTestInitializer.initAccountData();
- this.bundle = entitlementTestInitializer.initBundle(entitlementApi, callContext);
+ bus.start();
}
@AfterMethod(groups = "slow")
- public void afterMethod() throws Exception {
- entitlementTestInitializer.stopTestFramework(testListener, busService, entitlementService);
- }
-
- protected void assertListenerStatus() {
- ((EntitlementTestListenerStatus) testListenerStatus).assertListenerStatus();
+ public void afterMethod() {
+ bus.stop();
}
}
diff --git a/entitlement/src/test/java/com/ning/billing/entitlement/glue/TestEntitlementModule.java b/entitlement/src/test/java/com/ning/billing/entitlement/glue/TestEntitlementModule.java
new file mode 100644
index 0000000..425b87b
--- /dev/null
+++ b/entitlement/src/test/java/com/ning/billing/entitlement/glue/TestEntitlementModule.java
@@ -0,0 +1,29 @@
+package com.ning.billing.entitlement.glue;
+
+import com.ning.billing.catalog.MockCatalogModule;
+import com.ning.billing.mock.glue.MockAccountModule;
+import com.ning.billing.mock.glue.MockSubscriptionModule;
+import com.ning.billing.util.glue.CacheModule;
+import com.ning.billing.util.glue.CallContextModule;
+import org.skife.config.ConfigSource;
+
+public class TestEntitlementModule extends DefaultEntitlementModule {
+
+ final protected ConfigSource configSource;
+
+ public TestEntitlementModule(final ConfigSource configSource) {
+ super(configSource);
+ this.configSource = configSource;
+ }
+
+ @Override
+ protected void configure() {
+ super.configure();
+ install(new CacheModule(configSource));
+ install(new CallContextModule());
+ install(new MockAccountModule());
+ install(new MockCatalogModule());
+ install(new MockSubscriptionModule());
+
+ }
+}
diff --git a/entitlement/src/test/java/com/ning/billing/entitlement/glue/TestEntitlementModuleNoDB.java b/entitlement/src/test/java/com/ning/billing/entitlement/glue/TestEntitlementModuleNoDB.java
new file mode 100644
index 0000000..6d3319d
--- /dev/null
+++ b/entitlement/src/test/java/com/ning/billing/entitlement/glue/TestEntitlementModuleNoDB.java
@@ -0,0 +1,31 @@
+package com.ning.billing.entitlement.glue;
+
+import com.ning.billing.GuicyKillbillTestNoDBModule;
+import com.ning.billing.entitlement.dao.BlockingStateDao;
+import com.ning.billing.entitlement.dao.MockBlockingStateDao;
+import com.ning.billing.mock.glue.MockNonEntityDaoModule;
+import com.ning.billing.mock.glue.MockTagModule;
+import com.ning.billing.util.bus.InMemoryBusModule;
+import org.skife.config.ConfigSource;
+
+public class TestEntitlementModuleNoDB extends TestEntitlementModule {
+
+ public TestEntitlementModuleNoDB(final ConfigSource configSource) {
+ super(configSource);
+ }
+
+ @Override
+ protected void configure() {
+ super.configure();
+ install(new GuicyKillbillTestNoDBModule());
+ install(new MockNonEntityDaoModule());
+ install(new InMemoryBusModule(configSource));
+ install(new MockTagModule());
+ }
+
+ @Override
+ public void installBlockingStateDao() {
+ bind(BlockingStateDao.class).to(MockBlockingStateDao.class).asEagerSingleton();
+ }
+
+}
diff --git a/entitlement/src/test/java/com/ning/billing/entitlement/glue/TestEntitlementModuleWithEmbeddedDB.java b/entitlement/src/test/java/com/ning/billing/entitlement/glue/TestEntitlementModuleWithEmbeddedDB.java
new file mode 100644
index 0000000..75f2325
--- /dev/null
+++ b/entitlement/src/test/java/com/ning/billing/entitlement/glue/TestEntitlementModuleWithEmbeddedDB.java
@@ -0,0 +1,23 @@
+package com.ning.billing.entitlement.glue;
+
+import com.ning.billing.GuicyKillbillTestWithEmbeddedDBModule;
+import com.ning.billing.util.glue.BusModule;
+import com.ning.billing.util.glue.NonEntityDaoModule;
+import com.ning.billing.util.glue.TagStoreModule;
+import org.skife.config.ConfigSource;
+
+public class TestEntitlementModuleWithEmbeddedDB extends TestEntitlementModule {
+
+ public TestEntitlementModuleWithEmbeddedDB(final ConfigSource configSource) {
+ super(configSource);
+ }
+
+ @Override
+ protected void configure() {
+ super.configure();
+ install(new GuicyKillbillTestWithEmbeddedDBModule());
+ install(new NonEntityDaoModule());
+ install(new BusModule(configSource));
+ install(new TagStoreModule());
+ }
+}
invoice/killbill-invoice.iml 3(+2 -1)
diff --git a/invoice/killbill-invoice.iml b/invoice/killbill-invoice.iml
index 3f11a2a..556ea8d 100644
--- a/invoice/killbill-invoice.iml
+++ b/invoice/killbill-invoice.iml
@@ -12,6 +12,7 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.findbugs:jsr305:1.3.9" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:14.0.1" level="project" />
@@ -24,7 +25,7 @@
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: cglib:cglib-nodep:2.2" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.objenesis:objenesis:1.2" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-catalog" scope="TEST" />
<orderEntry type="module" module-name="killbill-internal-api" />
diff --git a/invoice/src/main/java/com/ning/billing/invoice/InvoiceDispatcher.java b/invoice/src/main/java/com/ning/billing/invoice/InvoiceDispatcher.java
index f45c21a..ccb4c4e 100644
--- a/invoice/src/main/java/com/ning/billing/invoice/InvoiceDispatcher.java
+++ b/invoice/src/main/java/com/ning/billing/invoice/InvoiceDispatcher.java
@@ -41,7 +41,7 @@ import com.ning.billing.account.api.AccountApiException;
import com.ning.billing.bus.api.PersistentBus;
import com.ning.billing.bus.api.PersistentBus.EventBusException;
import com.ning.billing.catalog.api.Currency;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceApiException;
import com.ning.billing.invoice.api.InvoiceItem;
@@ -70,7 +70,7 @@ import com.ning.billing.util.globallocker.GlobalLocker;
import com.ning.billing.util.globallocker.GlobalLocker.LockerType;
import com.ning.billing.util.globallocker.LockFailedException;
import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.junction.BillingEventSet;
import com.ning.billing.util.svcapi.junction.BillingInternalApi;
@@ -88,7 +88,7 @@ public class InvoiceDispatcher {
private final InvoiceGenerator generator;
private final BillingInternalApi billingApi;
private final AccountInternalApi accountApi;
- private final EntitlementInternalApi entitlementApi;
+ private final SubscriptionInternalApi subscriptionApi;
private final InvoiceDao invoiceDao;
private final InvoiceNotifier invoiceNotifier;
private final GlobalLocker locker;
@@ -98,7 +98,7 @@ public class InvoiceDispatcher {
@Inject
public InvoiceDispatcher(final InvoiceGenerator generator, final AccountInternalApi accountApi,
final BillingInternalApi billingApi,
- final EntitlementInternalApi entitlementApi,
+ final SubscriptionInternalApi SubscriptionApi,
final InvoiceDao invoiceDao,
final InvoiceNotifier invoiceNotifier,
final GlobalLocker locker,
@@ -106,7 +106,7 @@ public class InvoiceDispatcher {
final Clock clock) {
this.generator = generator;
this.billingApi = billingApi;
- this.entitlementApi = entitlementApi;
+ this.subscriptionApi = SubscriptionApi;
this.accountApi = accountApi;
this.invoiceDao = invoiceDao;
this.invoiceNotifier = invoiceNotifier;
@@ -125,13 +125,13 @@ public class InvoiceDispatcher {
public void processSubscription(final UUID subscriptionId, final DateTime targetDate, final InternalCallContext context) throws InvoiceApiException {
try {
if (subscriptionId == null) {
- log.error("Failed handling entitlement change.", new InvoiceApiException(ErrorCode.INVOICE_INVALID_TRANSITION));
+ log.error("Failed handling Subscription change.", new InvoiceApiException(ErrorCode.INVOICE_INVALID_TRANSITION));
return;
}
- final UUID accountId = entitlementApi.getAccountIdFromSubscriptionId(subscriptionId, context);
+ final UUID accountId = subscriptionApi.getAccountIdFromSubscriptionId(subscriptionId, context);
processAccount(accountId, targetDate, false, context);
- } catch (EntitlementUserApiException e) {
- log.error("Failed handling entitlement change.",
+ } catch (SubscriptionUserApiException e) {
+ log.error("Failed handling Subscription change.",
new InvoiceApiException(ErrorCode.INVOICE_NO_ACCOUNT_ID_FOR_SUBSCRIPTION_ID, subscriptionId.toString()));
}
}
@@ -260,7 +260,7 @@ public class InvoiceDispatcher {
return invoice;
} catch (AccountApiException e) {
- log.error("Failed handling entitlement change.", e);
+ log.error("Failed handling Subscription change.", e);
return null;
}
}
@@ -296,7 +296,7 @@ public class InvoiceDispatcher {
for (final UUID subscriptionId : chargeThroughDates.keySet()) {
if (subscriptionId != null) {
final DateTime chargeThroughDate = chargeThroughDates.get(subscriptionId);
- entitlementApi.setChargedThroughDate(subscriptionId, chargeThroughDate, context);
+ subscriptionApi.setChargedThroughDate(subscriptionId, chargeThroughDate, context);
}
}
}
diff --git a/invoice/src/main/java/com/ning/billing/invoice/InvoiceListener.java b/invoice/src/main/java/com/ning/billing/invoice/InvoiceListener.java
index cd4f6ce..9e87e37 100644
--- a/invoice/src/main/java/com/ning/billing/invoice/InvoiceListener.java
+++ b/invoice/src/main/java/com/ning/billing/invoice/InvoiceListener.java
@@ -22,14 +22,14 @@ import org.joda.time.DateTime;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
import com.ning.billing.invoice.api.InvoiceApiException;
import com.ning.billing.util.callcontext.CallOrigin;
import com.ning.billing.util.callcontext.InternalCallContext;
import com.ning.billing.util.callcontext.InternalCallContextFactory;
import com.ning.billing.util.callcontext.UserType;
import com.ning.billing.util.events.EffectiveSubscriptionInternalEvent;
-import com.ning.billing.util.events.RepairEntitlementInternalEvent;
+import com.ning.billing.util.events.RepairSubscriptionInternalEvent;
import com.google.common.eventbus.Subscribe;
import com.google.inject.Inject;
@@ -47,7 +47,7 @@ public class InvoiceListener {
}
@Subscribe
- public void handleRepairEntitlementEvent(final RepairEntitlementInternalEvent event) {
+ public void handleRepairSubscriptionEvent(final RepairSubscriptionInternalEvent event) {
try {
final InternalCallContext context = internalCallContextFactory.createInternalCallContext(event.getSearchKey2(), event.getSearchKey1(), "RepairBundle", CallOrigin.INTERNAL, UserType.SYSTEM, event.getUserToken());
diff --git a/invoice/src/main/java/com/ning/billing/invoice/model/RepairAdjInvoiceItem.java b/invoice/src/main/java/com/ning/billing/invoice/model/RepairAdjInvoiceItem.java
index 661e7b1..63749fc 100644
--- a/invoice/src/main/java/com/ning/billing/invoice/model/RepairAdjInvoiceItem.java
+++ b/invoice/src/main/java/com/ning/billing/invoice/model/RepairAdjInvoiceItem.java
@@ -46,6 +46,6 @@ public class RepairAdjInvoiceItem extends AdjInvoiceItem {
@Override
public String getDescription() {
- return "Adjustment (entitlement change)";
+ return "Adjustment (subscription change)";
}
}
diff --git a/invoice/src/main/java/com/ning/billing/invoice/notification/DefaultNextBillingDateNotifier.java b/invoice/src/main/java/com/ning/billing/invoice/notification/DefaultNextBillingDateNotifier.java
index 3d53c2f..353d8e6 100644
--- a/invoice/src/main/java/com/ning/billing/invoice/notification/DefaultNextBillingDateNotifier.java
+++ b/invoice/src/main/java/com/ning/billing/invoice/notification/DefaultNextBillingDateNotifier.java
@@ -22,8 +22,8 @@ import org.joda.time.DateTime;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.invoice.InvoiceListener;
import com.ning.billing.invoice.api.DefaultInvoiceService;
import com.ning.billing.notificationq.api.NotificationEvent;
@@ -34,7 +34,7 @@ import com.ning.billing.notificationq.api.NotificationQueueService.NotificationQ
import com.ning.billing.notificationq.api.NotificationQueueService.NotificationQueueHandler;
import com.ning.billing.util.callcontext.InternalCallContextFactory;
import com.ning.billing.util.config.InvoiceConfig;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.google.inject.Inject;
@@ -46,7 +46,7 @@ public class DefaultNextBillingDateNotifier implements NextBillingDateNotifier {
private final NotificationQueueService notificationQueueService;
private final InvoiceConfig config;
- private final EntitlementInternalApi entitlementApi;
+ private final SubscriptionInternalApi subscriptionApi;
private final InvoiceListener listener;
private final InternalCallContextFactory callContextFactory;
@@ -55,12 +55,12 @@ public class DefaultNextBillingDateNotifier implements NextBillingDateNotifier {
@Inject
public DefaultNextBillingDateNotifier(final NotificationQueueService notificationQueueService,
final InvoiceConfig config,
- final EntitlementInternalApi entitlementApi,
+ final SubscriptionInternalApi subscriptionApi,
final InvoiceListener listener,
final InternalCallContextFactory callContextFactory) {
this.notificationQueueService = notificationQueueService;
this.config = config;
- this.entitlementApi = entitlementApi;
+ this.subscriptionApi = subscriptionApi;
this.listener = listener;
this.callContextFactory = callContextFactory;
}
@@ -79,13 +79,13 @@ public class DefaultNextBillingDateNotifier implements NextBillingDateNotifier {
final NextBillingDateNotificationKey key = (NextBillingDateNotificationKey) notificationKey;
try {
- final Subscription subscription = entitlementApi.getSubscriptionFromId(key.getUuidKey(), callContextFactory.createInternalTenantContext(tenantRecordId, accountRecordId));
+ final Subscription subscription = subscriptionApi.getSubscriptionFromId(key.getUuidKey(), callContextFactory.createInternalTenantContext(tenantRecordId, accountRecordId));
if (subscription == null) {
log.warn("Next Billing Date Notification Queue handled spurious notification (key: " + key + ")");
} else {
processEvent(key.getUuidKey(), eventDate, userToken, accountRecordId, tenantRecordId);
}
- } catch (EntitlementUserApiException e) {
+ } catch (SubscriptionUserApiException e) {
log.warn("Next Billing Date Notification Queue handled spurious notification (key: " + key + ")", e);
}
} catch (IllegalArgumentException e) {
diff --git a/invoice/src/test/java/com/ning/billing/invoice/dao/TestInvoiceDao.java b/invoice/src/test/java/com/ning/billing/invoice/dao/TestInvoiceDao.java
index fee49c7..615016b 100644
--- a/invoice/src/test/java/com/ning/billing/invoice/dao/TestInvoiceDao.java
+++ b/invoice/src/test/java/com/ning/billing/invoice/dao/TestInvoiceDao.java
@@ -42,8 +42,8 @@ import com.ning.billing.catalog.api.Currency;
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.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.invoice.InvoiceTestSuiteWithEmbeddedDB;
import com.ning.billing.invoice.MockBillingEventSet;
import com.ning.billing.invoice.api.Invoice;
diff --git a/invoice/src/test/java/com/ning/billing/invoice/generator/TestDefaultInvoiceGenerator.java b/invoice/src/test/java/com/ning/billing/invoice/generator/TestDefaultInvoiceGenerator.java
index 4ac30c3..046b5c4 100644
--- a/invoice/src/test/java/com/ning/billing/invoice/generator/TestDefaultInvoiceGenerator.java
+++ b/invoice/src/test/java/com/ning/billing/invoice/generator/TestDefaultInvoiceGenerator.java
@@ -43,8 +43,8 @@ import com.ning.billing.catalog.api.Currency;
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.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.invoice.InvoiceTestSuiteNoDB;
import com.ning.billing.invoice.MockBillingEventSet;
import com.ning.billing.invoice.api.Invoice;
diff --git a/invoice/src/test/java/com/ning/billing/invoice/glue/TestInvoiceModule.java b/invoice/src/test/java/com/ning/billing/invoice/glue/TestInvoiceModule.java
index f094d0f..ccbea40 100644
--- a/invoice/src/test/java/com/ning/billing/invoice/glue/TestInvoiceModule.java
+++ b/invoice/src/test/java/com/ning/billing/invoice/glue/TestInvoiceModule.java
@@ -29,7 +29,7 @@ import com.ning.billing.util.glue.CustomFieldModule;
import com.ning.billing.util.glue.NotificationQueueModule;
import com.ning.billing.util.glue.TagStoreModule;
import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.junction.BillingInternalApi;
@@ -40,7 +40,7 @@ public class TestInvoiceModule extends DefaultInvoiceModule {
}
private void installExternalApis() {
- bind(EntitlementInternalApi.class).toInstance(Mockito.mock(EntitlementInternalApi.class));
+ bind(SubscriptionInternalApi.class).toInstance(Mockito.mock(SubscriptionInternalApi.class));
bind(AccountInternalApi.class).toInstance(Mockito.mock(AccountInternalApi.class));
bind(BillingInternalApi.class).toInstance(Mockito.mock(BillingInternalApi.class));
}
diff --git a/invoice/src/test/java/com/ning/billing/invoice/InvoiceTestSuiteNoDB.java b/invoice/src/test/java/com/ning/billing/invoice/InvoiceTestSuiteNoDB.java
index e8a52c4..1b2d56d 100644
--- a/invoice/src/test/java/com/ning/billing/invoice/InvoiceTestSuiteNoDB.java
+++ b/invoice/src/test/java/com/ning/billing/invoice/InvoiceTestSuiteNoDB.java
@@ -39,7 +39,7 @@ import com.ning.billing.util.callcontext.InternalCallContextFactory;
import com.ning.billing.clock.Clock;
import com.ning.billing.util.globallocker.GlobalLocker;
import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.invoice.InvoiceInternalApi;
import com.ning.billing.util.svcapi.junction.BillingInternalApi;
import com.ning.billing.util.svcsapi.bus.BusService;
@@ -69,7 +69,7 @@ public abstract class InvoiceTestSuiteNoDB extends GuicyKillbillTestSuiteNoDB {
@Inject
protected AccountInternalApi accountApi;
@Inject
- protected EntitlementInternalApi entitlementApi;
+ protected SubscriptionInternalApi subscriptionApi;
@Inject
protected BusService busService;
@Inject
diff --git a/invoice/src/test/java/com/ning/billing/invoice/InvoiceTestSuiteWithEmbeddedDB.java b/invoice/src/test/java/com/ning/billing/invoice/InvoiceTestSuiteWithEmbeddedDB.java
index 577467a..cbb2d96 100644
--- a/invoice/src/test/java/com/ning/billing/invoice/InvoiceTestSuiteWithEmbeddedDB.java
+++ b/invoice/src/test/java/com/ning/billing/invoice/InvoiceTestSuiteWithEmbeddedDB.java
@@ -44,7 +44,7 @@ import com.ning.billing.util.callcontext.InternalCallContextFactory;
import com.ning.billing.clock.Clock;
import com.ning.billing.util.globallocker.GlobalLocker;
import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.invoice.InvoiceInternalApi;
import com.ning.billing.util.svcapi.junction.BillingInternalApi;
import com.ning.billing.util.svcsapi.bus.BusService;
@@ -78,7 +78,7 @@ public abstract class InvoiceTestSuiteWithEmbeddedDB extends GuicyKillbillTestSu
@Inject
protected AccountInternalApi accountApi;
@Inject
- protected EntitlementInternalApi entitlementApi;
+ protected SubscriptionInternalApi subscriptionApi;
@Inject
protected BusService busService;
@Inject
diff --git a/invoice/src/test/java/com/ning/billing/invoice/notification/TestNextBillingDateNotifier.java b/invoice/src/test/java/com/ning/billing/invoice/notification/TestNextBillingDateNotifier.java
index a9d183e..43ac701 100644
--- a/invoice/src/test/java/com/ning/billing/invoice/notification/TestNextBillingDateNotifier.java
+++ b/invoice/src/test/java/com/ning/billing/invoice/notification/TestNextBillingDateNotifier.java
@@ -23,7 +23,7 @@ import org.joda.time.DateTime;
import org.testng.Assert;
import org.testng.annotations.Test;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.invoice.InvoiceTestSuiteWithEmbeddedDB;
import com.ning.billing.invoice.api.DefaultInvoiceService;
import com.ning.billing.notificationq.api.NotificationQueue;
diff --git a/invoice/src/test/java/com/ning/billing/invoice/TestInvoiceDispatcher.java b/invoice/src/test/java/com/ning/billing/invoice/TestInvoiceDispatcher.java
index e569623..467cf0a 100644
--- a/invoice/src/test/java/com/ning/billing/invoice/TestInvoiceDispatcher.java
+++ b/invoice/src/test/java/com/ning/billing/invoice/TestInvoiceDispatcher.java
@@ -39,8 +39,8 @@ import com.ning.billing.catalog.api.Currency;
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.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.invoice.InvoiceDispatcher.DateAndTimeZoneContext;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceApiException;
@@ -88,7 +88,7 @@ public class TestInvoiceDispatcher extends InvoiceTestSuiteWithEmbeddedDB {
final DateTime target = new DateTime();
final InvoiceNotifier invoiceNotifier = new NullInvoiceNotifier();
- final InvoiceDispatcher dispatcher = new InvoiceDispatcher(generator, accountApi, billingApi, entitlementApi, invoiceDao,
+ final InvoiceDispatcher dispatcher = new InvoiceDispatcher(generator, accountApi, billingApi, subscriptionApi, invoiceDao,
invoiceNotifier, locker, busService.getBus(),
clock);
@@ -142,7 +142,7 @@ public class TestInvoiceDispatcher extends InvoiceTestSuiteWithEmbeddedDB {
Mockito.when(billingApi.getBillingEventsForAccountAndUpdateAccountBCD(Mockito.<UUID>any(), Mockito.<InternalCallContext>any())).thenReturn(events);
final InvoiceNotifier invoiceNotifier = new NullInvoiceNotifier();
- final InvoiceDispatcher dispatcher = new InvoiceDispatcher(generator, accountApi, billingApi, entitlementApi, invoiceDao,
+ final InvoiceDispatcher dispatcher = new InvoiceDispatcher(generator, accountApi, billingApi, subscriptionApi, invoiceDao,
invoiceNotifier, locker, busService.getBus(),
clock);
@@ -202,7 +202,7 @@ public class TestInvoiceDispatcher extends InvoiceTestSuiteWithEmbeddedDB {
"planName", "phaseName", startDate, endDate, new BigDecimal("23.9"), new BigDecimal("23.9"), Currency.EUR, null);
final InvoiceNotifier invoiceNotifier = new NullInvoiceNotifier();
- final InvoiceDispatcher dispatcher = new InvoiceDispatcher(generator, accountApi, billingApi, entitlementApi, invoiceDao,
+ final InvoiceDispatcher dispatcher = new InvoiceDispatcher(generator, accountApi, billingApi, subscriptionApi, invoiceDao,
invoiceNotifier, locker, busService.getBus(),
clock);
diff --git a/invoice/src/test/java/com/ning/billing/invoice/TestInvoiceHelper.java b/invoice/src/test/java/com/ning/billing/invoice/TestInvoiceHelper.java
index baf076d..653aa4e 100644
--- a/invoice/src/test/java/com/ning/billing/invoice/TestInvoiceHelper.java
+++ b/invoice/src/test/java/com/ning/billing/invoice/TestInvoiceHelper.java
@@ -38,9 +38,8 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.Currency;
import com.ning.billing.catalog.api.Plan;
import com.ning.billing.catalog.api.PlanPhase;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceApiException;
import com.ning.billing.invoice.api.InvoiceItem;
@@ -56,13 +55,14 @@ import com.ning.billing.invoice.dao.InvoicePaymentSqlDao;
import com.ning.billing.invoice.generator.InvoiceGenerator;
import com.ning.billing.invoice.model.InvoicingConfiguration;
import com.ning.billing.invoice.notification.NullInvoiceNotifier;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
import com.ning.billing.util.callcontext.InternalCallContext;
import com.ning.billing.util.callcontext.InternalTenantContext;
import com.ning.billing.clock.Clock;
import com.ning.billing.util.entity.EntityPersistenceException;
import com.ning.billing.util.globallocker.GlobalLocker;
import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.junction.BillingEvent;
import com.ning.billing.util.svcapi.junction.BillingEventSet;
import com.ning.billing.util.svcapi.junction.BillingInternalApi;
@@ -129,7 +129,7 @@ public class TestInvoiceHelper {
private final InvoiceGenerator generator;
private final BillingInternalApi billingApi;
private final AccountInternalApi accountApi;
- private final EntitlementInternalApi entitlementApi;
+ private final SubscriptionInternalApi subscriptionApi;
private final BusService busService;
private final InvoiceDao invoiceDao;
private final GlobalLocker locker;
@@ -144,12 +144,12 @@ public class TestInvoiceHelper {
@Inject
public TestInvoiceHelper(final InvoiceGenerator generator, final IDBI dbi,
- final BillingInternalApi billingApi, final AccountInternalApi accountApi, final EntitlementInternalApi entitlementApi, final BusService busService,
+ final BillingInternalApi billingApi, final AccountInternalApi accountApi, final SubscriptionInternalApi subscriptionApi, final BusService busService,
final InvoiceDao invoiceDao, final GlobalLocker locker, final Clock clock, final InternalCallContext internalCallContext) {
this.generator = generator;
this.billingApi = billingApi;
this.accountApi = accountApi;
- this.entitlementApi = entitlementApi;
+ this.subscriptionApi = subscriptionApi;
this.busService = busService;
this.invoiceDao = invoiceDao;
this.locker = locker;
@@ -176,7 +176,7 @@ public class TestInvoiceHelper {
Mockito.when(billingApi.getBillingEventsForAccountAndUpdateAccountBCD(Mockito.<UUID>any(), Mockito.<InternalCallContext>any())).thenReturn(events);
final InvoiceNotifier invoiceNotifier = new NullInvoiceNotifier();
- final InvoiceDispatcher dispatcher = new InvoiceDispatcher(generator, accountApi, billingApi, entitlementApi,
+ final InvoiceDispatcher dispatcher = new InvoiceDispatcher(generator, accountApi, billingApi, subscriptionApi,
invoiceDao, invoiceNotifier, locker, busService.getBus(),
clock);
@@ -195,11 +195,11 @@ public class TestInvoiceHelper {
return invoice.getId();
}
- public Subscription createSubscription() throws EntitlementUserApiException {
+ public Subscription createSubscription() throws SubscriptionUserApiException {
UUID uuid = UUID.randomUUID();
final Subscription subscription = Mockito.mock(Subscription.class);
Mockito.when(subscription.getId()).thenReturn(uuid);
- Mockito.when(entitlementApi.getSubscriptionFromId(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
+ Mockito.when(subscriptionApi.getSubscriptionFromId(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
return subscription;
}
jaxrs/killbill-jaxrs.iml 3(+2 -1)
diff --git a/jaxrs/killbill-jaxrs.iml b/jaxrs/killbill-jaxrs.iml
index af21811..2ef1f8c 100644
--- a/jaxrs/killbill-jaxrs.iml
+++ b/jaxrs/killbill-jaxrs.iml
@@ -11,12 +11,13 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.findbugs:jsr305:1.3.9" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:14.0.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.inject:guice:3.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.inject:javax.inject:1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: aopalliance:aopalliance:1.0" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-util" />
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountTimelineJson.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountTimelineJson.java
index e070ff9..0b92e81 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountTimelineJson.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AccountTimelineJson.java
@@ -27,7 +27,7 @@ import java.util.UUID;
import javax.annotation.Nullable;
import com.ning.billing.account.api.Account;
-import com.ning.billing.entitlement.api.timeline.BundleTimeline;
+import com.ning.billing.subscription.api.timeline.BundleTimeline;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItem;
import com.ning.billing.invoice.api.InvoiceItemType;
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AnalyticsSanityJson.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AnalyticsSanityJson.java
index 8eade98..cd79460 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AnalyticsSanityJson.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/AnalyticsSanityJson.java
@@ -28,31 +28,31 @@ import com.google.common.collect.ImmutableList;
public class AnalyticsSanityJson extends JsonBase {
- private final List<String> checkEntitlement;
+ private final List<String> checkSubscription;
private final List<String> checkInvoice;
private final List<String> checkPayment;
private final List<String> checkTag;
private final List<String> checkConsistency;
@JsonCreator
- public AnalyticsSanityJson(@JsonProperty("checkEntitlement") final List<String> checkEntitlement,
+ public AnalyticsSanityJson(@JsonProperty("checkSubscription") final List<String> checkSubscription,
@JsonProperty("checkInvoice") final List<String> checkInvoice,
@JsonProperty("checkPayment") final List<String> checkPayment,
@JsonProperty("checkTag") final List<String> checkTag,
@JsonProperty("checkConsistency") final List<String> checkConsistency) {
- this.checkEntitlement = checkEntitlement;
+ this.checkSubscription = checkSubscription;
this.checkInvoice = checkInvoice;
this.checkPayment = checkPayment;
this.checkTag = checkTag;
this.checkConsistency = checkConsistency;
}
- public AnalyticsSanityJson(final Collection<UUID> checkEntitlement,
+ public AnalyticsSanityJson(final Collection<UUID> checkSubscription,
final Collection<UUID> checkInvoice,
final Collection<UUID> checkPayment,
final Collection<UUID> checkTag,
final Collection<UUID> checkConsistency) {
- this.checkEntitlement = ImmutableList.<String>copyOf(Collections2.transform(checkEntitlement, new Function<UUID, String>() {
+ this.checkSubscription = ImmutableList.<String>copyOf(Collections2.transform(checkSubscription, new Function<UUID, String>() {
@Override
public String apply(final UUID input) {
return input.toString();
@@ -84,8 +84,8 @@ public class AnalyticsSanityJson extends JsonBase {
}));
}
- public List<String> getCheckEntitlement() {
- return checkEntitlement;
+ public List<String> getCheckSubscription() {
+ return checkSubscription;
}
public List<String> getCheckInvoice() {
@@ -108,7 +108,7 @@ public class AnalyticsSanityJson extends JsonBase {
public String toString() {
final StringBuilder sb = new StringBuilder();
sb.append("AnalyticsSanityJson");
- sb.append("{checkEntitlement=").append(checkEntitlement);
+ sb.append("{checkSubscription=").append(checkSubscription);
sb.append(", checkInvoice=").append(checkInvoice);
sb.append(", checkPayment=").append(checkPayment);
sb.append(", checkTag=").append(checkTag);
@@ -131,7 +131,7 @@ public class AnalyticsSanityJson extends JsonBase {
if (checkConsistency != null ? !checkConsistency.equals(json.checkConsistency) : json.checkConsistency != null) {
return false;
}
- if (checkEntitlement != null ? !checkEntitlement.equals(json.checkEntitlement) : json.checkEntitlement != null) {
+ if (checkSubscription != null ? !checkSubscription.equals(json.checkSubscription) : json.checkSubscription != null) {
return false;
}
if (checkInvoice != null ? !checkInvoice.equals(json.checkInvoice) : json.checkInvoice != null) {
@@ -149,7 +149,7 @@ public class AnalyticsSanityJson extends JsonBase {
@Override
public int hashCode() {
- int result = checkEntitlement != null ? checkEntitlement.hashCode() : 0;
+ int result = checkSubscription != null ? checkSubscription.hashCode() : 0;
result = 31 * result + (checkInvoice != null ? checkInvoice.hashCode() : 0);
result = 31 * result + (checkPayment != null ? checkPayment.hashCode() : 0);
result = 31 * result + (checkTag != null ? checkTag.hashCode() : 0);
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BundleJsonNoSubscriptions.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BundleJsonNoSubscriptions.java
index 75b635c..b2ca891 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BundleJsonNoSubscriptions.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BundleJsonNoSubscriptions.java
@@ -20,7 +20,7 @@ import java.util.List;
import javax.annotation.Nullable;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BundleJsonWithSubscriptions.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BundleJsonWithSubscriptions.java
index 3c24ce3..6032579 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BundleJsonWithSubscriptions.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/BundleJsonWithSubscriptions.java
@@ -23,8 +23,8 @@ import java.util.UUID;
import javax.annotation.Nullable;
-import com.ning.billing.entitlement.api.timeline.BundleTimeline;
-import com.ning.billing.entitlement.api.timeline.SubscriptionTimeline;
+import com.ning.billing.subscription.api.timeline.BundleTimeline;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimeline;
import com.ning.billing.util.audit.AuditLog;
import com.fasterxml.jackson.annotation.JsonCreator;
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/SubscriptionJsonNoEvents.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/SubscriptionJsonNoEvents.java
index 2eae4f2..b56ae69 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/SubscriptionJsonNoEvents.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/SubscriptionJsonNoEvents.java
@@ -23,7 +23,7 @@ import javax.annotation.Nullable;
import org.joda.time.DateTime;
import com.ning.billing.catalog.api.Plan;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.util.audit.AuditLog;
import com.fasterxml.jackson.annotation.JsonCreator;
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/SubscriptionJsonWithEvents.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/SubscriptionJsonWithEvents.java
index 95cf365..6985ad0 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/json/SubscriptionJsonWithEvents.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/json/SubscriptionJsonWithEvents.java
@@ -26,9 +26,9 @@ import javax.annotation.Nullable;
import org.joda.time.DateTime;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
-import com.ning.billing.entitlement.api.timeline.SubscriptionTimeline;
-import com.ning.billing.entitlement.api.timeline.SubscriptionTimeline.ExistingEvent;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimeline;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimeline.ExistingEvent;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.util.audit.AuditLog;
import com.ning.billing.clock.DefaultClock;
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/mappers/BlockingApiExceptionMapper.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/mappers/BlockingApiExceptionMapper.java
index 76bf87c..7f23095 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/mappers/BlockingApiExceptionMapper.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/mappers/BlockingApiExceptionMapper.java
@@ -23,7 +23,7 @@ import javax.ws.rs.core.UriInfo;
import javax.ws.rs.ext.ExceptionMapper;
import javax.ws.rs.ext.Provider;
-import com.ning.billing.junction.api.BlockingApiException;
+import com.ning.billing.entitlement.api.BlockingApiException;
@Singleton
@Provider
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/AccountResource.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/AccountResource.java
index c3d75af..241f21a 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/AccountResource.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/AccountResource.java
@@ -47,12 +47,12 @@ import com.ning.billing.account.api.AccountData;
import com.ning.billing.account.api.AccountEmail;
import com.ning.billing.account.api.AccountUserApi;
import com.ning.billing.account.api.MutableAccountData;
-import com.ning.billing.entitlement.api.timeline.BundleTimeline;
-import com.ning.billing.entitlement.api.timeline.EntitlementRepairException;
-import com.ning.billing.entitlement.api.timeline.EntitlementTimelineApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.timeline.BundleTimeline;
+import com.ning.billing.subscription.api.timeline.SubscriptionRepairException;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimelineApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoicePayment;
import com.ning.billing.invoice.api.InvoicePaymentApi;
@@ -106,8 +106,8 @@ public class AccountResource extends JaxRsResourceBase {
private static final String ID_PARAM_NAME = "accountId";
private final AccountUserApi accountApi;
- private final EntitlementUserApi entitlementApi;
- private final EntitlementTimelineApi timelineApi;
+ private final SubscriptionUserApi subscriptionApi;
+ private final SubscriptionTimelineApi timelineApi;
private final InvoiceUserApi invoiceApi;
private final InvoicePaymentApi invoicePaymentApi;
private final PaymentApi paymentApi;
@@ -115,18 +115,18 @@ public class AccountResource extends JaxRsResourceBase {
@Inject
public AccountResource(final JaxrsUriBuilder uriBuilder,
final AccountUserApi accountApi,
- final EntitlementUserApi entitlementApi,
+ final SubscriptionUserApi subscriptionApi,
final InvoiceUserApi invoiceApi,
final InvoicePaymentApi invoicePaymentApi,
final PaymentApi paymentApi,
- final EntitlementTimelineApi timelineApi,
+ final SubscriptionTimelineApi timelineApi,
final TagUserApi tagUserApi,
final AuditUserApi auditUserApi,
final CustomFieldUserApi customFieldUserApi,
final Context context) {
super(uriBuilder, tagUserApi, customFieldUserApi, auditUserApi, context);
this.accountApi = accountApi;
- this.entitlementApi = entitlementApi;
+ this.subscriptionApi = subscriptionApi;
this.invoiceApi = invoiceApi;
this.invoicePaymentApi = invoicePaymentApi;
this.paymentApi = paymentApi;
@@ -150,18 +150,18 @@ public class AccountResource extends JaxRsResourceBase {
@Produces(APPLICATION_JSON)
public Response getAccountBundles(@PathParam("accountId") final String accountId,
@QueryParam(QUERY_EXTERNAL_KEY) final String externalKey,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws AccountApiException, EntitlementUserApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws AccountApiException, SubscriptionUserApiException {
final TenantContext tenantContext = context.createContext(request);
final UUID uuid = UUID.fromString(accountId);
accountApi.getAccountById(uuid, tenantContext);
if (externalKey != null) {
- final SubscriptionBundle bundle = entitlementApi.getBundleForAccountAndKey(uuid, externalKey, tenantContext);
+ final SubscriptionBundle bundle = subscriptionApi.getBundleForAccountAndKey(uuid, externalKey, tenantContext);
final BundleJsonNoSubscriptions json = new BundleJsonNoSubscriptions(bundle);
return Response.status(Status.OK).entity(json).build();
} else {
- final List<SubscriptionBundle> bundles = entitlementApi.getBundlesForAccount(uuid, tenantContext);
+ final List<SubscriptionBundle> bundles = subscriptionApi.getBundlesForAccount(uuid, tenantContext);
final Collection<BundleJsonNoSubscriptions> result = Collections2.transform(bundles, new Function<SubscriptionBundle, BundleJsonNoSubscriptions>() {
@Override
public BundleJsonNoSubscriptions apply(final SubscriptionBundle input) {
@@ -250,7 +250,7 @@ public class AccountResource extends JaxRsResourceBase {
@Produces(APPLICATION_JSON)
public Response getAccountTimeline(@PathParam("accountId") final String accountIdString,
@QueryParam(QUERY_AUDIT) @DefaultValue("NONE") final AuditMode auditMode,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws AccountApiException, PaymentApiException, EntitlementRepairException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws AccountApiException, PaymentApiException, SubscriptionRepairException {
final TenantContext tenantContext = context.createContext(request);
final UUID accountId = UUID.fromString(accountIdString);
@@ -281,7 +281,7 @@ public class AccountResource extends JaxRsResourceBase {
}
// Get the bundles
- final List<SubscriptionBundle> bundles = entitlementApi.getBundlesForAccount(account.getId(), tenantContext);
+ final List<SubscriptionBundle> bundles = subscriptionApi.getBundlesForAccount(account.getId(), tenantContext);
final List<BundleTimeline> bundlesTimeline = new LinkedList<BundleTimeline>();
for (final SubscriptionBundle bundle : bundles) {
bundlesTimeline.add(timelineApi.getBundleTimeline(bundle.getId(), tenantContext));
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/BundleResource.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/BundleResource.java
index f4da003..fc8d070 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/BundleResource.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/BundleResource.java
@@ -39,12 +39,12 @@ import javax.ws.rs.core.UriInfo;
import org.joda.time.DateTime;
import com.ning.billing.ObjectType;
-import com.ning.billing.entitlement.api.transfer.EntitlementTransferApi;
-import com.ning.billing.entitlement.api.transfer.EntitlementTransferApiException;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.transfer.SubscriptionTransferApi;
+import com.ning.billing.subscription.api.transfer.SubscriptionTransferApiException;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.jaxrs.json.BundleJsonNoSubscriptions;
import com.ning.billing.jaxrs.json.CustomFieldJson;
import com.ning.billing.jaxrs.json.SubscriptionJsonNoEvents;
@@ -72,19 +72,19 @@ public class BundleResource extends JaxRsResourceBase {
private static final String CUSTOM_FIELD_URI = JaxrsResource.CUSTOM_FIELDS;
private static final String TAG_URI = JaxrsResource.TAGS;
- private final EntitlementUserApi entitlementApi;
- private final EntitlementTransferApi transferApi;
+ private final SubscriptionUserApi subscriptionApi;
+ private final SubscriptionTransferApi transferApi;
@Inject
- public BundleResource(final EntitlementUserApi entitlementApi,
- final EntitlementTransferApi transferApi,
+ public BundleResource(final SubscriptionUserApi subscriptionApi,
+ final SubscriptionTransferApi transferApi,
final JaxrsUriBuilder uriBuilder,
final TagUserApi tagUserApi,
final CustomFieldUserApi customFieldUserApi,
final AuditUserApi auditUserApi,
final Context context) {
super(uriBuilder, tagUserApi, customFieldUserApi, auditUserApi, context);
- this.entitlementApi = entitlementApi;
+ this.subscriptionApi = subscriptionApi;
this.transferApi = transferApi;
}
@@ -92,8 +92,8 @@ public class BundleResource extends JaxRsResourceBase {
@Path("/{bundleId:" + UUID_PATTERN + "}")
@Produces(APPLICATION_JSON)
public Response getBundle(@PathParam("bundleId") final String bundleId,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementUserApiException {
- final SubscriptionBundle bundle = entitlementApi.getBundleFromId(UUID.fromString(bundleId), context.createContext(request));
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionUserApiException {
+ final SubscriptionBundle bundle = subscriptionApi.getBundleFromId(UUID.fromString(bundleId), context.createContext(request));
final BundleJsonNoSubscriptions json = new BundleJsonNoSubscriptions(bundle);
return Response.status(Status.OK).entity(json).build();
}
@@ -105,9 +105,9 @@ public class BundleResource extends JaxRsResourceBase {
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementUserApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionUserApiException {
final UUID accountId = UUID.fromString(json.getAccountId());
- final SubscriptionBundle bundle = entitlementApi.createBundleForAccount(accountId, json.getExternalKey(),
+ final SubscriptionBundle bundle = subscriptionApi.createBundleForAccount(accountId, json.getExternalKey(),
context.createContext(createdBy, reason, comment, request));
return uriBuilder.buildResponse(BundleResource.class, "getBundle", bundle.getId());
}
@@ -116,14 +116,14 @@ public class BundleResource extends JaxRsResourceBase {
@Path("/{bundleId:" + UUID_PATTERN + "}/" + SUBSCRIPTIONS)
@Produces(APPLICATION_JSON)
public Response getBundleSubscriptions(@PathParam("bundleId") final String bundleId,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementUserApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionUserApiException {
final TenantContext tenantContext = context.createContext(request);
final UUID uuid = UUID.fromString(bundleId);
- final SubscriptionBundle bundle = entitlementApi.getBundleFromId(uuid, tenantContext);
+ final SubscriptionBundle bundle = subscriptionApi.getBundleFromId(uuid, tenantContext);
if (bundle == null) {
return Response.status(Status.NO_CONTENT).build();
}
- final List<Subscription> subscriptions = entitlementApi.getSubscriptionsForBundle(uuid, tenantContext);
+ final List<Subscription> subscriptions = subscriptionApi.getSubscriptionsForBundle(uuid, tenantContext);
final Collection<SubscriptionJsonNoEvents> result = Collections2.transform(subscriptions, new Function<Subscription, SubscriptionJsonNoEvents>() {
@Override
public SubscriptionJsonNoEvents apply(final Subscription input) {
@@ -191,9 +191,9 @@ public class BundleResource extends JaxRsResourceBase {
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
@javax.ws.rs.core.Context final UriInfo uriInfo,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementUserApiException, EntitlementTransferApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionUserApiException, SubscriptionTransferApiException {
final CallContext callContext = context.createContext(createdBy, reason, comment, request);
- final SubscriptionBundle bundle = entitlementApi.getBundleFromId(UUID.fromString(id), callContext);
+ final SubscriptionBundle bundle = subscriptionApi.getBundleFromId(UUID.fromString(id), callContext);
final DateTime inputDate = (requestedDate != null) ? DATE_TIME_FORMATTER.parseDateTime(requestedDate) : null;
final SubscriptionBundle newBundle = transferApi.transferBundle(bundle.getAccountId(), UUID.fromString(json.getAccountId()), bundle.getExternalKey(), inputDate, transferAddOn,
cancelImmediatley, callContext);
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/OverdueResource.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/OverdueResource.java
index b0abcc0..c774b8c 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/OverdueResource.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/OverdueResource.java
@@ -29,10 +29,10 @@ import javax.ws.rs.core.Response.Status;
import com.ning.billing.account.api.Account;
import com.ning.billing.account.api.AccountApiException;
import com.ning.billing.account.api.AccountUserApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.jaxrs.json.OverdueStateJson;
import com.ning.billing.jaxrs.util.Context;
import com.ning.billing.jaxrs.util.JaxrsUriBuilder;
@@ -56,12 +56,12 @@ public class OverdueResource extends JaxRsResourceBase {
private final OverdueUserApi overdueApi;
private final AccountUserApi accountApi;
- private final EntitlementUserApi entitlementApi;
+ private final SubscriptionUserApi subscriptionApi;
@Inject
public OverdueResource(final OverdueUserApi overdueApi,
final AccountUserApi accountApi,
- final EntitlementUserApi entitlementApi,
+ final SubscriptionUserApi subscriptionApi,
final JaxrsUriBuilder uriBuilder,
final TagUserApi tagUserApi,
final CustomFieldUserApi customFieldUserApi,
@@ -70,7 +70,7 @@ public class OverdueResource extends JaxRsResourceBase {
super(uriBuilder, tagUserApi, customFieldUserApi, auditUserApi, context);
this.overdueApi = overdueApi;
this.accountApi = accountApi;
- this.entitlementApi = entitlementApi;
+ this.subscriptionApi = subscriptionApi;
}
@GET
@@ -90,10 +90,10 @@ public class OverdueResource extends JaxRsResourceBase {
@Path("/" + BUNDLES + "/{bundleId:" + UUID_PATTERN + "}")
@Produces(APPLICATION_JSON)
public Response getOverdueBundle(@PathParam("bundleId") final String bundleId,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementUserApiException, OverdueException, OverdueApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionUserApiException, OverdueException, OverdueApiException {
final TenantContext tenantContext = context.createContext(request);
- final SubscriptionBundle bundle = entitlementApi.getBundleFromId(UUID.fromString(bundleId), tenantContext);
+ final SubscriptionBundle bundle = subscriptionApi.getBundleFromId(UUID.fromString(bundleId), tenantContext);
final OverdueState<SubscriptionBundle> overdueState = overdueApi.getOverdueStateFor(bundle, tenantContext);
return Response.status(Status.OK).entity(new OverdueStateJson(overdueState)).build();
@@ -103,10 +103,10 @@ public class OverdueResource extends JaxRsResourceBase {
@Path("/" + SUBSCRIPTIONS + "/{subscriptionId:" + UUID_PATTERN + "}")
@Produces(APPLICATION_JSON)
public Response getOverdueSubscription(@PathParam("subscriptionId") final String subscriptionId,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementUserApiException, OverdueException, OverdueApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionUserApiException, OverdueException, OverdueApiException {
final TenantContext tenantContext = context.createContext(request);
- final Subscription subscription = entitlementApi.getSubscriptionFromId(UUID.fromString(subscriptionId), tenantContext);
+ final Subscription subscription = subscriptionApi.getSubscriptionFromId(UUID.fromString(subscriptionId), tenantContext);
final OverdueState<Subscription> overdueState = overdueApi.getOverdueStateFor(subscription, tenantContext);
return Response.status(Status.OK).entity(new OverdueStateJson(overdueState)).build();
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/SubscriptionResource.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/SubscriptionResource.java
index c2b8fef..9acd9a9 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/SubscriptionResource.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/SubscriptionResource.java
@@ -46,9 +46,9 @@ import com.ning.billing.catalog.api.ActionPolicy;
import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.jaxrs.json.CustomFieldJson;
import com.ning.billing.jaxrs.json.SubscriptionJsonNoEvents;
import com.ning.billing.jaxrs.util.Context;
@@ -80,11 +80,11 @@ public class SubscriptionResource extends JaxRsResourceBase {
private static final String CUSTOM_FIELD_URI = JaxrsResource.CUSTOM_FIELDS + "/{" + ID_PARAM_NAME + ":" + UUID_PATTERN + "}";
private static final String TAG_URI = JaxrsResource.TAGS + "/{" + ID_PARAM_NAME + ":" + UUID_PATTERN + "}";
- private final EntitlementUserApi entitlementApi;
+ private final SubscriptionUserApi subscriptionApi;
private final KillbillEventHandler killbillHandler;
@Inject
- public SubscriptionResource(final EntitlementUserApi entitlementApi,
+ public SubscriptionResource(final SubscriptionUserApi subscriptionApi,
final KillbillEventHandler killbillHandler,
final JaxrsUriBuilder uriBuilder,
final TagUserApi tagUserApi,
@@ -92,7 +92,7 @@ public class SubscriptionResource extends JaxRsResourceBase {
final AuditUserApi auditUserApi,
final Context context) {
super(uriBuilder, tagUserApi, customFieldUserApi, auditUserApi, context);
- this.entitlementApi = entitlementApi;
+ this.subscriptionApi = subscriptionApi;
this.killbillHandler = killbillHandler;
}
@@ -100,9 +100,9 @@ public class SubscriptionResource extends JaxRsResourceBase {
@Path("/{subscriptionId:" + UUID_PATTERN + "}")
@Produces(APPLICATION_JSON)
public Response getSubscription(@PathParam("subscriptionId") final String subscriptionId,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementUserApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionUserApiException {
final UUID uuid = UUID.fromString(subscriptionId);
- final Subscription subscription = entitlementApi.getSubscriptionFromId(uuid, context.createContext(request));
+ final Subscription subscription = subscriptionApi.getSubscriptionFromId(uuid, context.createContext(request));
final SubscriptionJsonNoEvents json = new SubscriptionJsonNoEvents(subscription, null);
return Response.status(Status.OK).entity(json).build();
}
@@ -117,12 +117,12 @@ public class SubscriptionResource extends JaxRsResourceBase {
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementUserApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionUserApiException {
final CallContext callContext = context.createContext(createdBy, reason, comment, request);
final SubscriptionCallCompletionCallback<Subscription> callback = new SubscriptionCallCompletionCallback<Subscription>() {
@Override
- public Subscription doOperation(final CallContext ctx) throws EntitlementUserApiException, InterruptedException, TimeoutException {
+ public Subscription doOperation(final CallContext ctx) throws SubscriptionUserApiException, InterruptedException, TimeoutException {
final DateTime inputDate = (requestedDate != null) ? DATE_TIME_FORMATTER.parseDateTime(requestedDate) : null;
final UUID uuid = UUID.fromString(subscription.getBundleId());
@@ -130,7 +130,7 @@ public class SubscriptionResource extends JaxRsResourceBase {
final PlanPhaseSpecifier spec = new PlanPhaseSpecifier(subscription.getProductName(),
ProductCategory.valueOf(subscription.getProductCategory()),
BillingPeriod.valueOf(subscription.getBillingPeriod()), subscription.getPriceList(), null);
- return entitlementApi.createSubscription(uuid, spec, inputDate, ctx);
+ return subscriptionApi.createSubscription(uuid, spec, inputDate, ctx);
}
@Override
@@ -161,7 +161,7 @@ public class SubscriptionResource extends JaxRsResourceBase {
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementUserApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionUserApiException {
final CallContext callContext = context.createContext(createdBy, reason, comment, request);
final SubscriptionCallCompletionCallback<Response> callback = new SubscriptionCallCompletionCallback<Response>() {
@@ -169,10 +169,10 @@ public class SubscriptionResource extends JaxRsResourceBase {
private boolean isImmediateOp = true;
@Override
- public Response doOperation(final CallContext ctx) throws EntitlementUserApiException, InterruptedException,
+ public Response doOperation(final CallContext ctx) throws SubscriptionUserApiException, InterruptedException,
TimeoutException {
final UUID uuid = UUID.fromString(subscriptionId);
- final Subscription current = entitlementApi.getSubscriptionFromId(uuid, callContext);
+ final Subscription current = subscriptionApi.getSubscriptionFromId(uuid, callContext);
final DateTime inputDate = (requestedDate != null) ? DATE_TIME_FORMATTER.parseDateTime(requestedDate) : null;
if (policyString == null) {
@@ -193,7 +193,7 @@ public class SubscriptionResource extends JaxRsResourceBase {
}
@Override
- public Response doResponseOk(final Response operationResponse) throws EntitlementUserApiException {
+ public Response doResponseOk(final Response operationResponse) throws SubscriptionUserApiException {
if (operationResponse.getStatus() != Status.OK.getStatusCode()) {
return operationResponse;
}
@@ -213,9 +213,9 @@ public class SubscriptionResource extends JaxRsResourceBase {
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementUserApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionUserApiException {
final UUID uuid = UUID.fromString(subscriptionId);
- final Subscription current = entitlementApi.getSubscriptionFromId(uuid, context.createContext(createdBy, reason, comment, request));
+ final Subscription current = subscriptionApi.getSubscriptionFromId(uuid, context.createContext(createdBy, reason, comment, request));
current.uncancel(context.createContext(createdBy, reason, comment, request));
return Response.status(Status.OK).build();
@@ -233,7 +233,7 @@ public class SubscriptionResource extends JaxRsResourceBase {
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
@javax.ws.rs.core.Context final UriInfo uriInfo,
- @javax.ws.rs.core.Context final HttpServletRequest request) throws EntitlementUserApiException {
+ @javax.ws.rs.core.Context final HttpServletRequest request) throws SubscriptionUserApiException {
final CallContext callContext = context.createContext(createdBy, reason, comment, request);
final SubscriptionCallCompletionCallback<Response> callback = new SubscriptionCallCompletionCallback<Response>() {
@@ -242,11 +242,11 @@ public class SubscriptionResource extends JaxRsResourceBase {
@Override
public Response doOperation(final CallContext ctx)
- throws EntitlementUserApiException, InterruptedException,
+ throws SubscriptionUserApiException, InterruptedException,
TimeoutException {
final UUID uuid = UUID.fromString(subscriptionId);
- final Subscription current = entitlementApi.getSubscriptionFromId(uuid, callContext);
+ final Subscription current = subscriptionApi.getSubscriptionFromId(uuid, callContext);
final DateTime inputDate = (requestedDate != null) ? DATE_TIME_FORMATTER.parseDateTime(requestedDate) : null;
if (policyString == null) {
@@ -316,11 +316,11 @@ public class SubscriptionResource extends JaxRsResourceBase {
private interface SubscriptionCallCompletionCallback<T> {
- public T doOperation(final CallContext ctx) throws EntitlementUserApiException, InterruptedException, TimeoutException;
+ public T doOperation(final CallContext ctx) throws SubscriptionUserApiException, InterruptedException, TimeoutException;
public boolean isImmOperation();
- public Response doResponseOk(final T operationResponse) throws EntitlementUserApiException;
+ public Response doResponseOk(final T operationResponse) throws SubscriptionUserApiException;
}
private class SubscriptionCallCompletion<T> {
@@ -328,7 +328,7 @@ public class SubscriptionResource extends JaxRsResourceBase {
public Response withSynchronization(final SubscriptionCallCompletionCallback<T> callback,
final long timeoutSec,
final boolean callCompletion,
- final CallContext callContext) throws EntitlementUserApiException {
+ final CallContext callContext) throws SubscriptionUserApiException {
final CompletionUserRequestSubscription waiter = callCompletion ? new CompletionUserRequestSubscription(callContext.getUserToken()) : null;
try {
if (waiter != null) {
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/util/KillbillEventHandler.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/util/KillbillEventHandler.java
index f0c1aee..fdb66df 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/util/KillbillEventHandler.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/util/KillbillEventHandler.java
@@ -57,7 +57,7 @@ public class KillbillEventHandler {
* Killbill server event handler
*/
@Subscribe
- public void handleEntitlementevents(final BusInternalEvent event) {
+ public void handleSubscriptionevents(final BusInternalEvent event) {
final List<CompletionUserRequestNotifier> runningWaiters = new ArrayList<CompletionUserRequestNotifier>();
synchronized (activeWaiters) {
runningWaiters.addAll(activeWaiters);
diff --git a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleJsonNoSubscriptions.java b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleJsonNoSubscriptions.java
index f39d98f..bff8c2f 100644
--- a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleJsonNoSubscriptions.java
+++ b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleJsonNoSubscriptions.java
@@ -23,7 +23,7 @@ import org.mockito.Mockito;
import org.testng.Assert;
import org.testng.annotations.Test;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.jaxrs.JaxrsTestSuiteNoDB;
import static com.ning.billing.jaxrs.JaxrsTestUtils.createAuditLogsJson;
diff --git a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleJsonWithSubscriptions.java b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleJsonWithSubscriptions.java
index 0571ff8..d569646 100644
--- a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleJsonWithSubscriptions.java
+++ b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleJsonWithSubscriptions.java
@@ -29,9 +29,9 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.PhaseType;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.timeline.BundleTimeline;
-import com.ning.billing.entitlement.api.timeline.SubscriptionTimeline;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.timeline.BundleTimeline;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimeline;
import com.ning.billing.jaxrs.JaxrsTestSuiteNoDB;
import com.ning.billing.util.audit.AuditLog;
import com.ning.billing.clock.DefaultClock;
diff --git a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleTimelineJson.java b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleTimelineJson.java
index e20a1f9..3f652a8 100644
--- a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleTimelineJson.java
+++ b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestBundleTimelineJson.java
@@ -31,8 +31,8 @@ import com.ning.billing.catalog.api.Currency;
import com.ning.billing.catalog.api.PhaseType;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.timeline.SubscriptionTimeline;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimeline;
import com.ning.billing.jaxrs.JaxrsTestSuiteNoDB;
import com.ning.billing.util.audit.AuditLog;
diff --git a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestSubscriptionJsonNoEvents.java b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestSubscriptionJsonNoEvents.java
index dbf2e11..ecf96bb 100644
--- a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestSubscriptionJsonNoEvents.java
+++ b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestSubscriptionJsonNoEvents.java
@@ -32,7 +32,7 @@ import com.ning.billing.catalog.api.PlanPhase;
import com.ning.billing.catalog.api.PriceList;
import com.ning.billing.catalog.api.Product;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.jaxrs.JaxrsTestSuiteNoDB;
import static com.ning.billing.jaxrs.JaxrsTestUtils.createAuditLogsJson;
diff --git a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestSubscriptionJsonWithEvents.java b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestSubscriptionJsonWithEvents.java
index a63f61b..0e89846 100644
--- a/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestSubscriptionJsonWithEvents.java
+++ b/jaxrs/src/test/java/com/ning/billing/jaxrs/json/TestSubscriptionJsonWithEvents.java
@@ -29,9 +29,9 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.PhaseType;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.timeline.SubscriptionTimeline;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimeline;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.jaxrs.JaxrsTestSuiteNoDB;
import com.ning.billing.util.audit.AuditLog;
import com.ning.billing.clock.DefaultClock;
junction/killbill-junction.iml 8(+6 -2)
diff --git a/junction/killbill-junction.iml b/junction/killbill-junction.iml
index 881a4ce..3d5fe31 100644
--- a/junction/killbill-junction.iml
+++ b/junction/killbill-junction.iml
@@ -4,21 +4,22 @@
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
- <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.findbugs:jsr305:1.3.9" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:14.0.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.inject:guice:3.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.inject:javax.inject:1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: aopalliance:aopalliance:1.0" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: com.h2database:h2:1.3.158" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-catalog" scope="TEST" production-on-test="" />
@@ -50,6 +51,9 @@
<orderEntry type="library" name="Maven: javax.mail:mail:1.4.1" level="project" />
<orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" />
<orderEntry type="module" module-name="killbill-catalog" scope="TEST" />
+ <orderEntry type="module" module-name="killbill-entitlement" scope="TEST" production-on-test="" />
+ <orderEntry type="library" scope="TEST" name="Maven: com.ning.billing:killbill-entitlement:test-jar:tests:0.3.4-SNAPSHOT" level="project" />
+ <orderEntry type="module" module-name="killbill-entitlement" scope="TEST" />
<orderEntry type="module" module-name="killbill-util" scope="TEST" production-on-test="" />
<orderEntry type="library" scope="TEST" name="Maven: com.ning.billing:killbill-util:test-jar:tests:0.3.4-SNAPSHOT" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: com.ning.billing.commons:killbill-clock:test-jar:tests:0.1.7" level="project" />
junction/pom.xml 11(+11 -0)
diff --git a/junction/pom.xml b/junction/pom.xml
index 41e1860..42a7c6d 100644
--- a/junction/pom.xml
+++ b/junction/pom.xml
@@ -66,6 +66,17 @@
</dependency>
<dependency>
<groupId>com.ning.billing</groupId>
+ <artifactId>killbill-entitlement</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing</groupId>
+ <artifactId>killbill-entitlement</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing</groupId>
<artifactId>killbill-internal-api</artifactId>
</dependency>
<dependency>
diff --git a/junction/src/main/java/com/ning/billing/junction/glue/DefaultJunctionModule.java b/junction/src/main/java/com/ning/billing/junction/glue/DefaultJunctionModule.java
index d92e52a..532fb35 100644
--- a/junction/src/main/java/com/ning/billing/junction/glue/DefaultJunctionModule.java
+++ b/junction/src/main/java/com/ning/billing/junction/glue/DefaultJunctionModule.java
@@ -16,26 +16,12 @@
package com.ning.billing.junction.glue;
-import org.skife.config.ConfigSource;
-
-import com.ning.billing.account.api.AccountUserApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
+import com.google.inject.AbstractModule;
import com.ning.billing.glue.JunctionModule;
-import com.ning.billing.junction.api.DefaultJunctionApi;
-import com.ning.billing.junction.api.JunctionApi;
-import com.ning.billing.junction.api.svcs.DefaultInternalBlockingApi;
-import com.ning.billing.junction.block.BlockingChecker;
-import com.ning.billing.junction.block.DefaultBlockingChecker;
-import com.ning.billing.junction.dao.BlockingStateDao;
-import com.ning.billing.junction.dao.DefaultBlockingStateDao;
-import com.ning.billing.junction.plumbing.api.BlockingAccountUserApi;
-import com.ning.billing.junction.plumbing.api.BlockingEntitlementUserApi;
import com.ning.billing.junction.plumbing.billing.BlockingCalculator;
import com.ning.billing.junction.plumbing.billing.DefaultInternalBillingApi;
import com.ning.billing.util.svcapi.junction.BillingInternalApi;
-import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
-
-import com.google.inject.AbstractModule;
+import org.skife.config.ConfigSource;
public class DefaultJunctionModule extends AbstractModule implements JunctionModule {
@@ -47,49 +33,18 @@ public class DefaultJunctionModule extends AbstractModule implements JunctionMod
@Override
protected void configure() {
- // External
- installBlockingApi();
- installAccountUserApi();
installBillingApi();
- installEntitlementUserApi();
- installBlockingChecker();
- installJunctionApi();
-
- // Internal
installBlockingCalculator();
- installBlockingStateDao();
- }
-
- public void installBlockingChecker() {
- bind(BlockingChecker.class).to(DefaultBlockingChecker.class).asEagerSingleton();
}
+ @Override
public void installBillingApi() {
bind(BillingInternalApi.class).to(DefaultInternalBillingApi.class).asEagerSingleton();
}
- public void installBlockingStateDao() {
- bind(BlockingStateDao.class).to(DefaultBlockingStateDao.class).asEagerSingleton();
- }
-
- public void installAccountUserApi() {
- bind(AccountUserApi.class).to(BlockingAccountUserApi.class).asEagerSingleton();
- }
-
- public void installEntitlementUserApi() {
- bind(EntitlementUserApi.class).to(BlockingEntitlementUserApi.class).asEagerSingleton();
- }
-
- public void installBlockingApi() {
- bind(BlockingInternalApi.class).to(DefaultInternalBlockingApi.class).asEagerSingleton();
- }
public void installBlockingCalculator() {
bind(BlockingCalculator.class).asEagerSingleton();
}
- @Override
- public void installJunctionApi() {
- bind(JunctionApi.class).to(DefaultJunctionApi.class).asEagerSingleton();
- }
}
diff --git a/junction/src/main/java/com/ning/billing/junction/plumbing/billing/BillCycleDayCalculator.java b/junction/src/main/java/com/ning/billing/junction/plumbing/billing/BillCycleDayCalculator.java
index 9000579..c19269f 100644
--- a/junction/src/main/java/com/ning/billing/junction/plumbing/billing/BillCycleDayCalculator.java
+++ b/junction/src/main/java/com/ning/billing/junction/plumbing/billing/BillCycleDayCalculator.java
@@ -35,13 +35,13 @@ import com.ning.billing.catalog.api.Plan;
import com.ning.billing.catalog.api.PlanPhase;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.Product;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.util.callcontext.InternalCallContext;
import com.ning.billing.util.events.EffectiveSubscriptionInternalEvent;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.google.common.annotations.VisibleForTesting;
import com.google.inject.Inject;
@@ -51,16 +51,16 @@ public class BillCycleDayCalculator {
private static final Logger log = LoggerFactory.getLogger(BillCycleDayCalculator.class);
private final CatalogService catalogService;
- private final EntitlementInternalApi entitlementApi;
+ private final SubscriptionInternalApi subscriptionApi;
@Inject
- public BillCycleDayCalculator(final CatalogService catalogService, final EntitlementInternalApi entitlementApi) {
+ public BillCycleDayCalculator(final CatalogService catalogService, final SubscriptionInternalApi subscriptionApi) {
this.catalogService = catalogService;
- this.entitlementApi = entitlementApi;
+ this.subscriptionApi = subscriptionApi;
}
protected int calculateBcd(final SubscriptionBundle bundle, final Subscription subscription, final EffectiveSubscriptionInternalEvent transition, final Account account, final InternalCallContext context)
- throws CatalogApiException, AccountApiException, EntitlementUserApiException {
+ throws CatalogApiException, AccountApiException, SubscriptionUserApiException {
final Catalog catalog = catalogService.getFullCatalog();
@@ -88,7 +88,7 @@ public class BillCycleDayCalculator {
@VisibleForTesting
int calculateBcdForAlignment(final BillingAlignment alignment, final SubscriptionBundle bundle, final Subscription subscription,
- final Account account, final Catalog catalog, final Plan plan, final InternalCallContext context) throws AccountApiException, EntitlementUserApiException, CatalogApiException {
+ final Account account, final Catalog catalog, final Plan plan, final InternalCallContext context) throws AccountApiException, SubscriptionUserApiException, CatalogApiException {
int result = 0;
switch (alignment) {
case ACCOUNT:
@@ -98,7 +98,7 @@ public class BillCycleDayCalculator {
}
break;
case BUNDLE:
- final Subscription baseSub = entitlementApi.getBaseSubscription(bundle.getId(), context);
+ final Subscription baseSub = subscriptionApi.getBaseSubscription(bundle.getId(), context);
Plan basePlan = baseSub.getCurrentPlan();
if (basePlan == null) {
// The BP has been cancelled
@@ -124,7 +124,7 @@ public class BillCycleDayCalculator {
// Retrieve the initial phase type for that subscription
// TODO - this should be extracted somewhere, along with this code above
final PhaseType initialPhaseType;
- final List<EffectiveSubscriptionInternalEvent> transitions = entitlementApi.getAllTransitions(subscription, context);
+ final List<EffectiveSubscriptionInternalEvent> transitions = subscriptionApi.getAllTransitions(subscription, context);
if (transitions.size() == 0) {
initialPhaseType = null;
} else {
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 666a666..7640d1b 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
@@ -33,9 +33,9 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.Currency;
import com.ning.billing.catalog.api.Plan;
import com.ning.billing.catalog.api.PlanPhase;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.junction.api.BlockingState;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.entitlement.api.BlockingState;
import com.ning.billing.util.callcontext.InternalTenantContext;
import com.ning.billing.util.svcapi.junction.BillingEvent;
import com.ning.billing.util.svcapi.junction.BillingModeType;
@@ -143,15 +143,9 @@ public class BlockingCalculator {
if (duration.getEnd() != null) { // no second event in the pair means they are still disabled (no re-enable)
result.add(createNewReenableEvent(duration.getEnd(), precedingFinalEvent));
}
-
} else if (precedingFinalEvent != null) { // can happen - e.g. phase event
- //
- // TODO: check with Jeff that this is going to do something sensible
- //
result.add(createNewReenableEvent(duration.getEnd(), precedingFinalEvent));
-
}
-
// N.B. if there's no precedingInitial and no precedingFinal then there's nothing to do
}
return result;
diff --git a/junction/src/main/java/com/ning/billing/junction/plumbing/billing/DefaultBillingEvent.java b/junction/src/main/java/com/ning/billing/junction/plumbing/billing/DefaultBillingEvent.java
index 4d7e135..18a65fa 100644
--- a/junction/src/main/java/com/ning/billing/junction/plumbing/billing/DefaultBillingEvent.java
+++ b/junction/src/main/java/com/ning/billing/junction/plumbing/billing/DefaultBillingEvent.java
@@ -28,8 +28,8 @@ import com.ning.billing.catalog.api.CatalogApiException;
import com.ning.billing.catalog.api.Currency;
import com.ning.billing.catalog.api.Plan;
import com.ning.billing.catalog.api.PlanPhase;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.util.events.EffectiveSubscriptionInternalEvent;
import com.ning.billing.util.svcapi.junction.BillingEvent;
import com.ning.billing.util.svcapi.junction.BillingModeType;
@@ -114,8 +114,8 @@ public class DefaultBillingEvent implements BillingEvent {
if (!getEffectiveDate().equals(e1.getEffectiveDate())) { // Secondly order by date
return getEffectiveDate().compareTo(e1.getEffectiveDate());
} else { // dates and subscriptions are the same
- // If an entitlement event and an overdue event happen at the exact same time,
- // we assume we want the entitlement event before the overdue event when entering
+ // If an subscription event and an overdue event happen at the exact same time,
+ // we assume we want the subscription event before the overdue event when entering
// the overdue period, and vice-versa when exiting the overdue period
if (SubscriptionTransitionType.START_BILLING_DISABLED.equals(getTransitionType())) {
if (SubscriptionTransitionType.END_BILLING_DISABLED.equals(e1.getTransitionType())) {
diff --git a/junction/src/main/java/com/ning/billing/junction/plumbing/billing/DefaultInternalBillingApi.java b/junction/src/main/java/com/ning/billing/junction/plumbing/billing/DefaultInternalBillingApi.java
index e6719fd..bbf3984 100644
--- a/junction/src/main/java/com/ning/billing/junction/plumbing/billing/DefaultInternalBillingApi.java
+++ b/junction/src/main/java/com/ning/billing/junction/plumbing/billing/DefaultInternalBillingApi.java
@@ -31,12 +31,12 @@ import com.ning.billing.account.api.AccountApiException;
import com.ning.billing.account.api.MutableAccountData;
import com.ning.billing.catalog.api.CatalogApiException;
import com.ning.billing.catalog.api.CatalogService;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.util.callcontext.InternalCallContext;
import com.ning.billing.util.events.EffectiveSubscriptionInternalEvent;
import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.junction.BillingEvent;
import com.ning.billing.util.svcapi.junction.BillingEventSet;
import com.ning.billing.util.svcapi.junction.BillingInternalApi;
@@ -53,7 +53,7 @@ public class DefaultInternalBillingApi implements BillingInternalApi {
private static final Logger log = LoggerFactory.getLogger(DefaultInternalBillingApi.class);
private final AccountInternalApi accountApi;
private final BillCycleDayCalculator bcdCalculator;
- private final EntitlementInternalApi entitlementApi;
+ private final SubscriptionInternalApi subscriptionApi;
private final CatalogService catalogService;
private final BlockingCalculator blockCalculator;
private final TagInternalApi tagApi;
@@ -61,12 +61,12 @@ public class DefaultInternalBillingApi implements BillingInternalApi {
@Inject
public DefaultInternalBillingApi(final AccountInternalApi accountApi,
final BillCycleDayCalculator bcdCalculator,
- final EntitlementInternalApi entitlementApi,
+ final SubscriptionInternalApi subscriptionApi,
final BlockingCalculator blockCalculator,
final CatalogService catalogService, final TagInternalApi tagApi) {
this.accountApi = accountApi;
this.bcdCalculator = bcdCalculator;
- this.entitlementApi = entitlementApi;
+ this.subscriptionApi = subscriptionApi;
this.catalogService = catalogService;
this.blockCalculator = blockCalculator;
this.tagApi = tagApi;
@@ -74,7 +74,7 @@ public class DefaultInternalBillingApi implements BillingInternalApi {
@Override
public BillingEventSet getBillingEventsForAccountAndUpdateAccountBCD(final UUID accountId, final InternalCallContext context) {
- final List<SubscriptionBundle> bundles = entitlementApi.getBundlesForAccount(accountId, context);
+ final List<SubscriptionBundle> bundles = subscriptionApi.getBundlesForAccount(accountId, context);
final DefaultBillingEventSet result = new DefaultBillingEventSet();
try {
@@ -113,7 +113,7 @@ public class DefaultInternalBillingApi implements BillingInternalApi {
private void addBillingEventsForBundles(final List<SubscriptionBundle> bundles, final Account account, final InternalCallContext context,
final DefaultBillingEventSet result) {
for (final SubscriptionBundle bundle : bundles) {
- final List<Subscription> subscriptions = entitlementApi.getSubscriptionsForBundle(bundle.getId(), context);
+ final List<Subscription> subscriptions = subscriptionApi.getSubscriptionsForBundle(bundle.getId(), context);
//Check if billing is off for the bundle
final List<Tag> bundleTags = tagApi.getTags(bundle.getId(), ObjectType.BUNDLE, context);
@@ -130,7 +130,7 @@ public class DefaultInternalBillingApi implements BillingInternalApi {
private void addBillingEventsForSubscription(final List<Subscription> subscriptions, final SubscriptionBundle bundle, final Account account, final InternalCallContext context, final DefaultBillingEventSet result) {
for (final Subscription subscription : subscriptions) {
- for (final EffectiveSubscriptionInternalEvent transition : entitlementApi.getBillingTransitions(subscription, context)) {
+ for (final EffectiveSubscriptionInternalEvent transition : subscriptionApi.getBillingTransitions(subscription, context)) {
try {
final int bcdLocal = bcdCalculator.calculateBcd(bundle, subscription, transition, account, context);
diff --git a/junction/src/test/java/com/ning/billing/junction/glue/TestJunctionModule.java b/junction/src/test/java/com/ning/billing/junction/glue/TestJunctionModule.java
index c0ad3e5..1324917 100644
--- a/junction/src/test/java/com/ning/billing/junction/glue/TestJunctionModule.java
+++ b/junction/src/test/java/com/ning/billing/junction/glue/TestJunctionModule.java
@@ -16,11 +16,16 @@
package com.ning.billing.junction.glue;
+import com.ning.billing.entitlement.api.svcs.DefaultInternalBlockingApi;
+import com.ning.billing.entitlement.dao.BlockingStateDao;
+import com.ning.billing.entitlement.dao.MockBlockingStateDao;
+import com.ning.billing.mock.glue.MockEntitlementModule;
+import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
import org.skife.config.ConfigSource;
import com.ning.billing.catalog.MockCatalogModule;
import com.ning.billing.mock.glue.MockAccountModule;
-import com.ning.billing.mock.glue.MockEntitlementModule;
+import com.ning.billing.mock.glue.MockSubscriptionModule;
import com.ning.billing.util.glue.CacheModule;
import com.ning.billing.util.glue.CallContextModule;
@@ -38,6 +43,20 @@ public class TestJunctionModule extends DefaultJunctionModule {
install(new CallContextModule());
install(new MockAccountModule());
install(new MockCatalogModule());
- install(new MockEntitlementModule());
+ install(new MockSubscriptionModule());
+ install(new MockEntitlementModuleForJunction());
+ }
+
+ public class MockEntitlementModuleForJunction extends MockEntitlementModule {
+
+ @Override
+ public void installBlockingApi() {
+ bind(BlockingInternalApi.class).to(DefaultInternalBlockingApi.class).asEagerSingleton();
+ }
+
+ @Override
+ public void installBlockingStateDao() {
+ bind(BlockingStateDao.class).to(MockBlockingStateDao.class).asEagerSingleton();
+ }
}
}
diff --git a/junction/src/test/java/com/ning/billing/junction/glue/TestJunctionModuleNoDB.java b/junction/src/test/java/com/ning/billing/junction/glue/TestJunctionModuleNoDB.java
index 2139fe6..c7d2be2 100644
--- a/junction/src/test/java/com/ning/billing/junction/glue/TestJunctionModuleNoDB.java
+++ b/junction/src/test/java/com/ning/billing/junction/glue/TestJunctionModuleNoDB.java
@@ -19,8 +19,6 @@ package com.ning.billing.junction.glue;
import org.skife.config.ConfigSource;
import com.ning.billing.GuicyKillbillTestNoDBModule;
-import com.ning.billing.junction.dao.BlockingStateDao;
-import com.ning.billing.junction.dao.MockBlockingStateDao;
import com.ning.billing.mock.glue.MockNonEntityDaoModule;
import com.ning.billing.mock.glue.MockTagModule;
import com.ning.billing.util.bus.InMemoryBusModule;
@@ -32,11 +30,6 @@ public class TestJunctionModuleNoDB extends TestJunctionModule {
}
@Override
- public void installBlockingStateDao() {
- bind(BlockingStateDao.class).toInstance(new MockBlockingStateDao());
- }
-
- @Override
protected void configure() {
super.configure();
diff --git a/junction/src/test/java/com/ning/billing/junction/JunctionTestSuiteNoDB.java b/junction/src/test/java/com/ning/billing/junction/JunctionTestSuiteNoDB.java
index 73ea27b..cc65b12 100644
--- a/junction/src/test/java/com/ning/billing/junction/JunctionTestSuiteNoDB.java
+++ b/junction/src/test/java/com/ning/billing/junction/JunctionTestSuiteNoDB.java
@@ -16,30 +16,27 @@
package com.ning.billing.junction;
-import org.testng.annotations.AfterMethod;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.BeforeMethod;
-
+import com.google.inject.Guice;
+import com.google.inject.Inject;
+import com.google.inject.Injector;
import com.ning.billing.GuicyKillbillTestSuiteNoDB;
import com.ning.billing.bus.api.PersistentBus;
import com.ning.billing.catalog.api.CatalogService;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
-import com.ning.billing.junction.block.BlockingChecker;
-import com.ning.billing.junction.dao.BlockingStateDao;
+import com.ning.billing.entitlement.dao.BlockingStateDao;
import com.ning.billing.junction.glue.TestJunctionModuleNoDB;
import com.ning.billing.junction.plumbing.billing.BillCycleDayCalculator;
import com.ning.billing.junction.plumbing.billing.BlockingCalculator;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
import com.ning.billing.util.glue.RealImplementation;
import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
import com.ning.billing.util.svcapi.junction.BillingInternalApi;
import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.tag.TagInternalApi;
import com.ning.billing.util.tag.dao.TagDao;
-
-import com.google.inject.Guice;
-import com.google.inject.Inject;
-import com.google.inject.Injector;
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.BeforeMethod;
public abstract class JunctionTestSuiteNoDB extends GuicyKillbillTestSuiteNoDB {
@@ -52,24 +49,22 @@ public abstract class JunctionTestSuiteNoDB extends GuicyKillbillTestSuiteNoDB {
@Inject
protected BlockingCalculator blockingCalculator;
@Inject
- protected BlockingChecker blockingChecker;
- @Inject
protected BlockingInternalApi blockingInternalApi;
@Inject
- protected BlockingStateDao blockingStateDao;
- @Inject
protected CatalogService catalogService;
@Inject
@RealImplementation
- protected EntitlementUserApi entitlementUserApi;
+ protected SubscriptionUserApi subscriptionUserApi;
@Inject
- protected EntitlementInternalApi entitlementInternalApi;
+ protected SubscriptionInternalApi subscriptionInternalApi;
@Inject
protected PersistentBus bus;
@Inject
protected TagDao tagDao;
@Inject
protected TagInternalApi tagInternalApi;
+ @Inject
+ protected BlockingStateDao blockingStateDao;
@BeforeClass(groups = "fast")
protected void beforeClass() throws Exception {
diff --git a/junction/src/test/java/com/ning/billing/junction/JunctionTestSuiteWithEmbeddedDB.java b/junction/src/test/java/com/ning/billing/junction/JunctionTestSuiteWithEmbeddedDB.java
index db541b2..28e5a88 100644
--- a/junction/src/test/java/com/ning/billing/junction/JunctionTestSuiteWithEmbeddedDB.java
+++ b/junction/src/test/java/com/ning/billing/junction/JunctionTestSuiteWithEmbeddedDB.java
@@ -16,29 +16,25 @@
package com.ning.billing.junction;
-import org.testng.annotations.AfterMethod;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.BeforeMethod;
-
+import com.google.inject.Guice;
+import com.google.inject.Inject;
+import com.google.inject.Injector;
import com.ning.billing.GuicyKillbillTestSuiteWithEmbeddedDB;
import com.ning.billing.bus.api.PersistentBus;
import com.ning.billing.catalog.api.CatalogService;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
-import com.ning.billing.junction.block.BlockingChecker;
-import com.ning.billing.junction.dao.BlockingStateDao;
import com.ning.billing.junction.glue.TestJunctionModuleWithEmbeddedDB;
import com.ning.billing.junction.plumbing.billing.BlockingCalculator;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
import com.ning.billing.util.glue.RealImplementation;
import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
import com.ning.billing.util.svcapi.junction.BillingInternalApi;
import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.tag.TagInternalApi;
import com.ning.billing.util.tag.dao.TagDao;
-
-import com.google.inject.Guice;
-import com.google.inject.Inject;
-import com.google.inject.Injector;
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.BeforeMethod;
public abstract class JunctionTestSuiteWithEmbeddedDB extends GuicyKillbillTestSuiteWithEmbeddedDB {
@@ -49,18 +45,14 @@ public abstract class JunctionTestSuiteWithEmbeddedDB extends GuicyKillbillTestS
@Inject
protected BlockingCalculator blockingCalculator;
@Inject
- protected BlockingChecker blockingChecker;
- @Inject
protected BlockingInternalApi blockingInternalApi;
@Inject
- protected BlockingStateDao blockingStateDao;
- @Inject
protected CatalogService catalogService;
@Inject
@RealImplementation
- protected EntitlementUserApi entitlementUserApi;
+ protected SubscriptionUserApi subscriptionUserApi;
@Inject
- protected EntitlementInternalApi entitlementInternalApi;
+ protected SubscriptionInternalApi subscriptionInternalApi;
@Inject
protected PersistentBus bus;
@Inject
diff --git a/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBillCycleDayCalculator.java b/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBillCycleDayCalculator.java
index 2fc5006..be6a814 100644
--- a/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBillCycleDayCalculator.java
+++ b/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBillCycleDayCalculator.java
@@ -31,11 +31,11 @@ import com.ning.billing.catalog.api.Catalog;
import com.ning.billing.catalog.api.CatalogApiException;
import com.ning.billing.catalog.api.CatalogService;
import com.ning.billing.catalog.api.Plan;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.junction.JunctionTestSuiteNoDB;
import com.ning.billing.util.callcontext.InternalTenantContext;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
public class TestBillCycleDayCalculator extends JunctionTestSuiteNoDB {
@@ -51,7 +51,7 @@ public class TestBillCycleDayCalculator extends JunctionTestSuiteNoDB {
Mockito.when(subscription.getStartDate()).thenReturn(bpStartDateUTC);
// subscription.getCurrentPlan() will return null as expected (cancelled BP)
- Mockito.when(entitlementInternalApi.getBaseSubscription(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
+ Mockito.when(subscriptionInternalApi.getBaseSubscription(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
// Create a the base plan associated with that subscription
final Plan plan = Mockito.mock(Plan.class);
@@ -124,7 +124,7 @@ public class TestBillCycleDayCalculator extends JunctionTestSuiteNoDB {
}
private void verifyBCDCalculation(final DateTimeZone accountTimeZone, final DateTime startDateUTC, final int bcdLocal) throws AccountApiException, CatalogApiException {
- final BillCycleDayCalculator billCycleDayCalculator = new BillCycleDayCalculator(Mockito.mock(CatalogService.class), Mockito.mock(EntitlementInternalApi.class));
+ final BillCycleDayCalculator billCycleDayCalculator = new BillCycleDayCalculator(Mockito.mock(CatalogService.class), Mockito.mock(SubscriptionInternalApi.class));
final Subscription subscription = Mockito.mock(Subscription.class);
Mockito.when(subscription.getStartDate()).thenReturn(startDateUTC);
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 198e8e9..dc9bce8 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
@@ -16,20 +16,7 @@
package com.ning.billing.junction.plumbing.billing;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.SortedSet;
-import java.util.UUID;
-
-import org.joda.time.DateTime;
-import org.joda.time.DateTimeZone;
-import org.mockito.Mockito;
-import org.testng.Assert;
-import org.testng.annotations.BeforeMethod;
-import org.testng.annotations.Test;
-
+import com.google.common.collect.ImmutableList;
import com.ning.billing.ObjectType;
import com.ning.billing.account.api.Account;
import com.ning.billing.account.api.AccountApiException;
@@ -42,16 +29,16 @@ import com.ning.billing.catalog.api.Plan;
import com.ning.billing.catalog.api.PlanPhase;
import com.ning.billing.catalog.api.PriceList;
import com.ning.billing.catalog.api.PriceListSet;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionState;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.entitlement.dao.MockBlockingStateDao;
import com.ning.billing.junction.JunctionTestSuiteNoDB;
-import com.ning.billing.junction.api.BlockingState;
-import com.ning.billing.junction.api.Type;
-import com.ning.billing.junction.dao.MockBlockingStateDao;
+import com.ning.billing.entitlement.api.BlockingState;
+import com.ning.billing.entitlement.api.Type;
import com.ning.billing.mock.MockEffectiveSubscriptionEvent;
import com.ning.billing.mock.MockSubscription;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionState;
import com.ning.billing.util.api.TagApiException;
import com.ning.billing.util.callcontext.InternalTenantContext;
import com.ning.billing.util.events.EffectiveSubscriptionInternalEvent;
@@ -61,8 +48,19 @@ import com.ning.billing.util.svcapi.junction.BillingModeType;
import com.ning.billing.util.svcapi.junction.DefaultBlockingState;
import com.ning.billing.util.tag.ControlTagType;
import com.ning.billing.util.tag.dao.MockTagDao;
+import org.joda.time.DateTime;
+import org.joda.time.DateTimeZone;
+import org.mockito.Mockito;
+import org.testng.Assert;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
-import com.google.common.collect.ImmutableList;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.SortedSet;
+import java.util.UUID;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNull;
@@ -81,7 +79,7 @@ public class TestBillingApi extends JunctionTestSuiteNoDB {
private MockCatalog catalog;
@BeforeMethod(groups = "fast")
- public void beforeMethod() throws Exception {
+ public void beforeMethod() throws Exception {
super.beforeMethod();
final SubscriptionBundle bundle = Mockito.mock(SubscriptionBundle.class);
Mockito.when(bundle.getId()).thenReturn(bunId);
@@ -93,13 +91,13 @@ public class TestBillingApi extends JunctionTestSuiteNoDB {
subscription = new MockSubscription(subId, bunId, null, subscriptionStartDate, effectiveSubscriptionTransitions);
final List<Subscription> subscriptions = ImmutableList.<Subscription>of(subscription);
- Mockito.when(entitlementInternalApi.getBundlesForAccount(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(bundles);
- Mockito.when(entitlementInternalApi.getSubscriptionsForBundle(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscriptions);
- Mockito.when(entitlementInternalApi.getSubscriptionFromId(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
- Mockito.when(entitlementInternalApi.getBundleFromId(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(bundle);
- Mockito.when(entitlementInternalApi.getBaseSubscription(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
- Mockito.when(entitlementInternalApi.getBillingTransitions(Mockito.<Subscription>any(), Mockito.<InternalTenantContext>any())).thenReturn(effectiveSubscriptionTransitions);
- Mockito.when(entitlementInternalApi.getAllTransitions(Mockito.<Subscription>any(), Mockito.<InternalTenantContext>any())).thenReturn(effectiveSubscriptionTransitions);
+ Mockito.when(subscriptionInternalApi.getBundlesForAccount(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(bundles);
+ Mockito.when(subscriptionInternalApi.getSubscriptionsForBundle(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscriptions);
+ Mockito.when(subscriptionInternalApi.getSubscriptionFromId(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
+ Mockito.when(subscriptionInternalApi.getBundleFromId(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(bundle);
+ Mockito.when(subscriptionInternalApi.getBaseSubscription(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
+ Mockito.when(subscriptionInternalApi.getBillingTransitions(Mockito.<Subscription>any(), Mockito.<InternalTenantContext>any())).thenReturn(effectiveSubscriptionTransitions);
+ Mockito.when(subscriptionInternalApi.getAllTransitions(Mockito.<Subscription>any(), Mockito.<InternalTenantContext>any())).thenReturn(effectiveSubscriptionTransitions);
catalog = ((MockCatalog) catalogService.getCurrentCatalog());
// TODO The MockCatalog module returns two different things for full vs current catalog
@@ -282,7 +280,7 @@ public class TestBillingApi extends JunctionTestSuiteNoDB {
eventId, subId, bunId, then, now, null, null, null, null, SubscriptionState.ACTIVE,
nextPlan.getName(), nextPhase.getName(),
nextPriceList.getName(), 1L,
- SubscriptionTransitionType.CREATE, 1, null, 1L, 2L, null);
+ SubscriptionTransitionType.CREATE, 1, null, 1L, 2L, null);
effectiveSubscriptionTransitions.add(t);
return now;
diff --git a/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBlockingCalculator.java b/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBlockingCalculator.java
index 58c6325..4c19894 100644
--- a/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBlockingCalculator.java
+++ b/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestBlockingCalculator.java
@@ -16,22 +16,6 @@
package com.ning.billing.junction.plumbing.billing;
-import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.SortedSet;
-import java.util.TreeSet;
-import java.util.UUID;
-
-import org.joda.time.DateTime;
-import org.joda.time.DateTimeZone;
-import org.joda.time.LocalDate;
-import org.mockito.Mockito;
-import org.testng.annotations.BeforeMethod;
-import org.testng.annotations.Test;
-
import com.ning.billing.account.api.Account;
import com.ning.billing.catalog.MockPlan;
import com.ning.billing.catalog.MockPlanPhase;
@@ -39,16 +23,31 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.Currency;
import com.ning.billing.catalog.api.Plan;
import com.ning.billing.catalog.api.PlanPhase;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.entitlement.dao.MockBlockingStateDao;
import com.ning.billing.junction.JunctionTestSuiteNoDB;
-import com.ning.billing.junction.api.Type;
-import com.ning.billing.junction.api.BlockingState;
-import com.ning.billing.junction.dao.MockBlockingStateDao;
+import com.ning.billing.entitlement.api.BlockingState;
+import com.ning.billing.entitlement.api.Type;
import com.ning.billing.junction.plumbing.billing.BlockingCalculator.DisabledDuration;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.util.svcapi.junction.BillingEvent;
import com.ning.billing.util.svcapi.junction.BillingModeType;
import com.ning.billing.util.svcapi.junction.DefaultBlockingState;
+import org.joda.time.DateTime;
+import org.joda.time.DateTimeZone;
+import org.joda.time.LocalDate;
+import org.mockito.Mockito;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Hashtable;
+import java.util.Iterator;
+import java.util.List;
+import java.util.SortedSet;
+import java.util.TreeSet;
+import java.util.UUID;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
@@ -539,9 +538,9 @@ public class TestBlockingCalculator extends JunctionTestSuiteNoDB {
final DateTimeZone tz = DateTimeZone.UTC;
return new DefaultBillingEvent(account, subscription, effectiveDate, plan, planPhase,
- fixedPrice, recurringPrice, currency,
- billingPeriod, billCycleDay, billingModeType,
- description, totalOrdering, type, tz);
+ fixedPrice, recurringPrice, currency,
+ billingPeriod, billCycleDay, billingModeType,
+ description, totalOrdering, type, tz);
}
@Test(groups = "fast")
@@ -611,7 +610,7 @@ public class TestBlockingCalculator extends JunctionTestSuiteNoDB {
public MockBillingEvent() {
super(account, subscription1, clock.getUTCNow(), null, null, BigDecimal.ZERO, BigDecimal.TEN, Currency.USD, BillingPeriod.ANNUAL,
- 4, BillingModeType.IN_ADVANCE, "", 3L, SubscriptionTransitionType.CREATE, DateTimeZone.UTC);
+ 4, BillingModeType.IN_ADVANCE, "", 3L, SubscriptionTransitionType.CREATE, DateTimeZone.UTC);
}
}
diff --git a/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestDefaultBillingEvent.java b/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestDefaultBillingEvent.java
index e2b8f2c..5a23dbe 100644
--- a/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestDefaultBillingEvent.java
+++ b/junction/src/test/java/com/ning/billing/junction/plumbing/billing/TestDefaultBillingEvent.java
@@ -40,8 +40,8 @@ import com.ning.billing.catalog.api.Currency;
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.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.user.Subscription;
import com.ning.billing.junction.JunctionTestSuiteNoDB;
import com.ning.billing.mock.MockAccountBuilder;
import com.ning.billing.util.svcapi.junction.BillingEvent;
diff --git a/junction/src/test/resources/resource.properties b/junction/src/test/resources/resource.properties
index d0bda94..40eb8f3 100644
--- a/junction/src/test/resources/resource.properties
+++ b/junction/src/test/resources/resource.properties
@@ -1,7 +1,4 @@
killbill.catalog.uri=file:src/test/resources/catalogSample.xml
-killbill.entitlement.dao.claim.time=60000
-killbill.entitlement.dao.ready.max=1
-killbill.entitlement.engine.notifications.sleep=500
killbill.billing.persistent.bus.claimed=1
user.timezone=UTC
osgi/killbill-osgi.iml 3(+2 -1)
diff --git a/osgi/killbill-osgi.iml b/osgi/killbill-osgi.iml
index 847fa33..f19aa06 100644
--- a/osgi/killbill-osgi.iml
+++ b/osgi/killbill-osgi.iml
@@ -10,6 +10,7 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:14.0.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.inject:guice:3.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.inject:javax.inject:1" level="project" />
@@ -19,7 +20,7 @@
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: cglib:cglib-nodep:2.2" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.objenesis:objenesis:1.2" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-internal-api" />
diff --git a/osgi/src/main/java/com/ning/billing/osgi/DefaultOSGIKillbill.java b/osgi/src/main/java/com/ning/billing/osgi/DefaultOSGIKillbill.java
index a467709..8e0c04b 100644
--- a/osgi/src/main/java/com/ning/billing/osgi/DefaultOSGIKillbill.java
+++ b/osgi/src/main/java/com/ning/billing/osgi/DefaultOSGIKillbill.java
@@ -16,22 +16,20 @@
package com.ning.billing.osgi;
-import javax.inject.Inject;
-
import com.ning.billing.account.api.AccountUserApi;
import com.ning.billing.catalog.api.CatalogUserApi;
-import com.ning.billing.entitlement.api.migration.EntitlementMigrationApi;
-import com.ning.billing.entitlement.api.timeline.EntitlementTimelineApi;
-import com.ning.billing.entitlement.api.transfer.EntitlementTransferApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
import com.ning.billing.invoice.api.InvoiceMigrationApi;
import com.ning.billing.invoice.api.InvoicePaymentApi;
import com.ning.billing.invoice.api.InvoiceUserApi;
-import com.ning.billing.junction.api.JunctionApi;
+import com.ning.billing.entitlement.api.EntitlementApi;
import com.ning.billing.osgi.api.OSGIKillbill;
import com.ning.billing.osgi.api.config.PluginConfigServiceApi;
import com.ning.billing.overdue.OverdueUserApi;
import com.ning.billing.payment.api.PaymentApi;
+import com.ning.billing.subscription.api.migration.SubscriptionMigrationApi;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimelineApi;
+import com.ning.billing.subscription.api.transfer.SubscriptionTransferApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
import com.ning.billing.tenant.api.TenantUserApi;
import com.ning.billing.usage.api.UsageUserApi;
import com.ning.billing.util.api.AuditUserApi;
@@ -40,14 +38,16 @@ import com.ning.billing.util.api.ExportUserApi;
import com.ning.billing.util.api.RecordIdApi;
import com.ning.billing.util.api.TagUserApi;
+import javax.inject.Inject;
+
public class DefaultOSGIKillbill implements OSGIKillbill {
private final AccountUserApi accountUserApi;
private final CatalogUserApi catalogUserApi;
- private final EntitlementMigrationApi entitlementMigrationApi;
- private final EntitlementTimelineApi entitlementTimelineApi;
- private final EntitlementTransferApi entitlementTransferApi;
- private final EntitlementUserApi entitlementUserApi;
+ private final SubscriptionMigrationApi subscriptionMigrationApi;
+ private final SubscriptionTimelineApi subscriptionTimelineApi;
+ private final SubscriptionTransferApi subscriptionTransferApi;
+ private final SubscriptionUserApi subscriptionUserApi;
private final InvoiceMigrationApi invoiceMigrationApi;
private final InvoicePaymentApi invoicePaymentApi;
private final InvoiceUserApi invoiceUserApi;
@@ -59,7 +59,7 @@ public class DefaultOSGIKillbill implements OSGIKillbill {
private final CustomFieldUserApi customFieldUserApi;
private final ExportUserApi exportUserApi;
private final TagUserApi tagUserApi;
- private final JunctionApi junctionApi;
+ private final EntitlementApi entitlementApi;
private final RecordIdApi recordIdApi;
private final PluginConfigServiceApi configServiceApi;
@@ -67,10 +67,10 @@ public class DefaultOSGIKillbill implements OSGIKillbill {
@Inject
public DefaultOSGIKillbill(final AccountUserApi accountUserApi,
final CatalogUserApi catalogUserApi,
- final EntitlementMigrationApi entitlementMigrationApi,
- final EntitlementTimelineApi entitlementTimelineApi,
- final EntitlementTransferApi entitlementTransferApi,
- final EntitlementUserApi entitlementUserApi,
+ final SubscriptionMigrationApi subscriptionMigrationApi,
+ final SubscriptionTimelineApi subscriptionTimelineApi,
+ final SubscriptionTransferApi subscriptionTransferApi,
+ final SubscriptionUserApi subscriptionUserApi,
final InvoiceMigrationApi invoiceMigrationApi,
final InvoicePaymentApi invoicePaymentApi,
final InvoiceUserApi invoiceUserApi,
@@ -82,15 +82,15 @@ public class DefaultOSGIKillbill implements OSGIKillbill {
final CustomFieldUserApi customFieldUserApi,
final ExportUserApi exportUserApi,
final TagUserApi tagUserApi,
- final JunctionApi junctionApi,
+ final EntitlementApi entitlementApi,
final RecordIdApi recordIdApi,
final PluginConfigServiceApi configServiceApi) {
this.accountUserApi = accountUserApi;
this.catalogUserApi = catalogUserApi;
- this.entitlementMigrationApi = entitlementMigrationApi;
- this.entitlementTimelineApi = entitlementTimelineApi;
- this.entitlementTransferApi = entitlementTransferApi;
- this.entitlementUserApi = entitlementUserApi;
+ this.subscriptionMigrationApi = subscriptionMigrationApi;
+ this.subscriptionTimelineApi = subscriptionTimelineApi;
+ this.subscriptionTransferApi = subscriptionTransferApi;
+ this.subscriptionUserApi = subscriptionUserApi;
this.invoiceMigrationApi = invoiceMigrationApi;
this.invoicePaymentApi = invoicePaymentApi;
this.invoiceUserApi = invoiceUserApi;
@@ -102,7 +102,7 @@ public class DefaultOSGIKillbill implements OSGIKillbill {
this.customFieldUserApi = customFieldUserApi;
this.exportUserApi = exportUserApi;
this.tagUserApi = tagUserApi;
- this.junctionApi = junctionApi;
+ this.entitlementApi = entitlementApi;
this.recordIdApi = recordIdApi;
this.configServiceApi = configServiceApi;
}
@@ -118,18 +118,18 @@ public class DefaultOSGIKillbill implements OSGIKillbill {
}
@Override
- public EntitlementTimelineApi getEntitlementTimelineApi() {
- return entitlementTimelineApi;
+ public SubscriptionTimelineApi getSubscriptionTimelineApi() {
+ return subscriptionTimelineApi;
}
@Override
- public EntitlementTransferApi getEntitlementTransferApi() {
- return entitlementTransferApi;
+ public SubscriptionTransferApi getSubscriptionTransferApi() {
+ return subscriptionTransferApi;
}
@Override
- public EntitlementUserApi getEntitlementUserApi() {
- return entitlementUserApi;
+ public SubscriptionUserApi getSubscriptionUserApi() {
+ return subscriptionUserApi;
}
@Override
@@ -183,8 +183,8 @@ public class DefaultOSGIKillbill implements OSGIKillbill {
}
@Override
- public JunctionApi getJunctionApi() {
- return junctionApi;
+ public EntitlementApi getEntitlementApi() {
+ return entitlementApi;
}
@Override
diff --git a/osgi-bundles/bundles/jruby/killbill-osgi-bundles-jruby.iml b/osgi-bundles/bundles/jruby/killbill-osgi-bundles-jruby.iml
index ead6929..d43cff6 100644
--- a/osgi-bundles/bundles/jruby/killbill-osgi-bundles-jruby.iml
+++ b/osgi-bundles/bundles/jruby/killbill-osgi-bundles-jruby.iml
@@ -9,8 +9,9 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
- <orderEntry type="library" name="Maven: com.google.guava:guava:14.0.1" level="project" />
<orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.google.guava:guava:14.0.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="library" name="Maven: com.ning.billing.plugin:killbill-plugin-api-notification:0.2.5" level="project" />
osgi-bundles/bundles/jruby/pom.xml 9(+5 -4)
diff --git a/osgi-bundles/bundles/jruby/pom.xml b/osgi-bundles/bundles/jruby/pom.xml
index cdae3e9..c6de8b0 100644
--- a/osgi-bundles/bundles/jruby/pom.xml
+++ b/osgi-bundles/bundles/jruby/pom.xml
@@ -130,11 +130,12 @@
com.ning.billing.analytics.api.user;
com.ning.billing.beatrix.bus.api;
com.ning.billing.catalog.api;
+ com.ning.billing.subscription.api;
+ com.ning.billing.subscription.api.migration;
+ com.ning.billing.subscription.api.timeline;
+ com.ning.billing.subscription.api.transfer;
+ com.ning.billing.subscription.api.user;
com.ning.billing.entitlement.api;
- com.ning.billing.entitlement.api.migration;
- com.ning.billing.entitlement.api.timeline;
- com.ning.billing.entitlement.api.transfer;
- com.ning.billing.entitlement.api.user;
com.ning.billing.invoice.api;
com.ning.billing.junction.api;
com.ning.billing;
diff --git a/osgi-bundles/bundles/jruby/src/main/java/com/ning/billing/osgi/bundles/jruby/JRubyActivator.java b/osgi-bundles/bundles/jruby/src/main/java/com/ning/billing/osgi/bundles/jruby/JRubyActivator.java
index c6942e6..56370f5 100644
--- a/osgi-bundles/bundles/jruby/src/main/java/com/ning/billing/osgi/bundles/jruby/JRubyActivator.java
+++ b/osgi-bundles/bundles/jruby/src/main/java/com/ning/billing/osgi/bundles/jruby/JRubyActivator.java
@@ -171,7 +171,7 @@ public class JRubyActivator extends KillbillActivatorBase {
// See killbill/plugin.rb for the naming convention magic
killbillUserApis.put("account_user_api", killbillAPI.getAccountUserApi());
killbillUserApis.put("catalog_user_api", killbillAPI.getCatalogUserApi());
- killbillUserApis.put("entitlement_user_api", killbillAPI.getEntitlementUserApi());
+ killbillUserApis.put("subscription_user_api", killbillAPI.getSubscriptionUserApi());
killbillUserApis.put("invoice_payment_api", killbillAPI.getInvoicePaymentApi());
killbillUserApis.put("invoice_user_api", killbillAPI.getInvoiceUserApi());
killbillUserApis.put("overdue_user_api", killbillAPI.getOverdueUserApi());
diff --git a/osgi-bundles/defaultbundles/killbill-osgi-bundles-defaultbundles.iml b/osgi-bundles/defaultbundles/killbill-osgi-bundles-defaultbundles.iml
index 34f1251..a2fa985 100644
--- a/osgi-bundles/defaultbundles/killbill-osgi-bundles-defaultbundles.iml
+++ b/osgi-bundles/defaultbundles/killbill-osgi-bundles-defaultbundles.iml
@@ -9,10 +9,11 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" name="Maven: com.ning.billing:killbill-osgi-bundles-analytics:0.3.2" level="project" />
<orderEntry type="module" module-name="killbill-osgi-bundles-jruby" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:14.0.1" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="library" name="Maven: com.ning.billing.plugin:killbill-plugin-api-notification:0.2.5" level="project" />
diff --git a/osgi-bundles/libs/killbill/killbill-osgi-bundles-lib-killbill.iml b/osgi-bundles/libs/killbill/killbill-osgi-bundles-lib-killbill.iml
index 6571255..3289080 100644
--- a/osgi-bundles/libs/killbill/killbill-osgi-bundles-lib-killbill.iml
+++ b/osgi-bundles/libs/killbill/killbill-osgi-bundles-lib-killbill.iml
@@ -9,8 +9,9 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
- <orderEntry type="library" name="Maven: com.google.code.findbugs:jsr305:1.3.9" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.google.code.findbugs:jsr305:1.3.9" level="project" />
+ <orderEntry type="library" scope="PROVIDED" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.ning.billing.plugin:killbill-plugin-api-notification:0.2.5" level="project" />
diff --git a/osgi-bundles/libs/killbill/src/main/java/com/ning/killbill/osgi/libs/killbill/OSGIKillbillAPI.java b/osgi-bundles/libs/killbill/src/main/java/com/ning/killbill/osgi/libs/killbill/OSGIKillbillAPI.java
index e617a0e..07b47bc 100644
--- a/osgi-bundles/libs/killbill/src/main/java/com/ning/killbill/osgi/libs/killbill/OSGIKillbillAPI.java
+++ b/osgi-bundles/libs/killbill/src/main/java/com/ning/killbill/osgi/libs/killbill/OSGIKillbillAPI.java
@@ -16,21 +16,18 @@
package com.ning.killbill.osgi.libs.killbill;
-import org.osgi.framework.BundleContext;
-import org.osgi.util.tracker.ServiceTracker;
-
import com.ning.billing.account.api.AccountUserApi;
import com.ning.billing.catalog.api.CatalogUserApi;
-import com.ning.billing.entitlement.api.timeline.EntitlementTimelineApi;
-import com.ning.billing.entitlement.api.transfer.EntitlementTransferApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
import com.ning.billing.invoice.api.InvoicePaymentApi;
import com.ning.billing.invoice.api.InvoiceUserApi;
-import com.ning.billing.junction.api.JunctionApi;
+import com.ning.billing.entitlement.api.EntitlementApi;
import com.ning.billing.osgi.api.OSGIKillbill;
import com.ning.billing.osgi.api.config.PluginConfigServiceApi;
import com.ning.billing.overdue.OverdueUserApi;
import com.ning.billing.payment.api.PaymentApi;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimelineApi;
+import com.ning.billing.subscription.api.transfer.SubscriptionTransferApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
import com.ning.billing.tenant.api.TenantUserApi;
import com.ning.billing.usage.api.UsageUserApi;
import com.ning.billing.util.api.AuditUserApi;
@@ -38,6 +35,8 @@ import com.ning.billing.util.api.CustomFieldUserApi;
import com.ning.billing.util.api.ExportUserApi;
import com.ning.billing.util.api.RecordIdApi;
import com.ning.billing.util.api.TagUserApi;
+import org.osgi.framework.BundleContext;
+import org.osgi.util.tracker.ServiceTracker;
public class OSGIKillbillAPI extends OSGIKillbillLibraryBase implements OSGIKillbill {
@@ -78,31 +77,31 @@ public class OSGIKillbillAPI extends OSGIKillbillLibraryBase implements OSGIKill
}
@Override
- public EntitlementTimelineApi getEntitlementTimelineApi() {
- return withServiceTracker(killbillTracker, new APICallback<EntitlementTimelineApi, OSGIKillbill>(KILLBILL_SERVICE_NAME) {
+ public SubscriptionTimelineApi getSubscriptionTimelineApi() {
+ return withServiceTracker(killbillTracker, new APICallback<SubscriptionTimelineApi, OSGIKillbill>(KILLBILL_SERVICE_NAME) {
@Override
- public EntitlementTimelineApi executeWithService(final OSGIKillbill service) {
- return service.getEntitlementTimelineApi();
+ public SubscriptionTimelineApi executeWithService(final OSGIKillbill service) {
+ return service.getSubscriptionTimelineApi();
}
});
}
@Override
- public EntitlementTransferApi getEntitlementTransferApi() {
- return withServiceTracker(killbillTracker, new APICallback<EntitlementTransferApi, OSGIKillbill>(KILLBILL_SERVICE_NAME) {
+ public SubscriptionTransferApi getSubscriptionTransferApi() {
+ return withServiceTracker(killbillTracker, new APICallback<SubscriptionTransferApi, OSGIKillbill>(KILLBILL_SERVICE_NAME) {
@Override
- public EntitlementTransferApi executeWithService(final OSGIKillbill service) {
- return service.getEntitlementTransferApi();
+ public SubscriptionTransferApi executeWithService(final OSGIKillbill service) {
+ return service.getSubscriptionTransferApi();
}
});
}
@Override
- public EntitlementUserApi getEntitlementUserApi() {
- return withServiceTracker(killbillTracker, new APICallback<EntitlementUserApi, OSGIKillbill>(KILLBILL_SERVICE_NAME) {
+ public SubscriptionUserApi getSubscriptionUserApi() {
+ return withServiceTracker(killbillTracker, new APICallback<SubscriptionUserApi, OSGIKillbill>(KILLBILL_SERVICE_NAME) {
@Override
- public EntitlementUserApi executeWithService(final OSGIKillbill service) {
- return service.getEntitlementUserApi();
+ public SubscriptionUserApi executeWithService(final OSGIKillbill service) {
+ return service.getSubscriptionUserApi();
}
});
}
@@ -208,11 +207,11 @@ public class OSGIKillbillAPI extends OSGIKillbillLibraryBase implements OSGIKill
}
@Override
- public JunctionApi getJunctionApi() {
- return withServiceTracker(killbillTracker, new APICallback<JunctionApi, OSGIKillbill>(KILLBILL_SERVICE_NAME) {
+ public EntitlementApi getEntitlementApi() {
+ return withServiceTracker(killbillTracker, new APICallback<EntitlementApi, OSGIKillbill>(KILLBILL_SERVICE_NAME) {
@Override
- public JunctionApi executeWithService(final OSGIKillbill service) {
- return service.getJunctionApi();
+ public EntitlementApi executeWithService(final OSGIKillbill service) {
+ return service.getEntitlementApi();
}
});
}
diff --git a/osgi-bundles/tests/beatrix/killbill-osgi-bundles-test-beatrix.iml b/osgi-bundles/tests/beatrix/killbill-osgi-bundles-test-beatrix.iml
index 9f4d684..e9f5b84 100644
--- a/osgi-bundles/tests/beatrix/killbill-osgi-bundles-test-beatrix.iml
+++ b/osgi-bundles/tests/beatrix/killbill-osgi-bundles-test-beatrix.iml
@@ -12,6 +12,7 @@
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-osgi-bundles-lib-killbill" />
diff --git a/osgi-bundles/tests/killbill-osgi-test-bundles.iml b/osgi-bundles/tests/killbill-osgi-test-bundles.iml
index bbd805c..e2309b3 100644
--- a/osgi-bundles/tests/killbill-osgi-test-bundles.iml
+++ b/osgi-bundles/tests/killbill-osgi-test-bundles.iml
@@ -3,7 +3,6 @@
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_6" inherit-compiler-output="false">
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
- <exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/target" />
diff --git a/osgi-bundles/tests/payment/killbill-osgi-bundles-test-payment.iml b/osgi-bundles/tests/payment/killbill-osgi-bundles-test-payment.iml
index 4e14110..73ee382 100644
--- a/osgi-bundles/tests/payment/killbill-osgi-bundles-test-payment.iml
+++ b/osgi-bundles/tests/payment/killbill-osgi-bundles-test-payment.iml
@@ -12,6 +12,7 @@
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-osgi-bundles-lib-killbill" />
overdue/killbill-overdue.iml 3(+2 -1)
diff --git a/overdue/killbill-overdue.iml b/overdue/killbill-overdue.iml
index 7c8faf4..79622fe 100644
--- a/overdue/killbill-overdue.iml
+++ b/overdue/killbill-overdue.iml
@@ -11,6 +11,7 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.findbugs:jsr305:1.3.9" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:14.0.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.inject:guice:3.0" level="project" />
@@ -22,7 +23,7 @@
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: cglib:cglib-nodep:2.2" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.objenesis:objenesis:1.2" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-catalog" scope="TEST" production-on-test="" />
diff --git a/overdue/src/main/java/com/ning/billing/ovedue/notification/DefaultOverdueCheckPoster.java b/overdue/src/main/java/com/ning/billing/ovedue/notification/DefaultOverdueCheckPoster.java
index 1047152..5b76e64 100644
--- a/overdue/src/main/java/com/ning/billing/ovedue/notification/DefaultOverdueCheckPoster.java
+++ b/overdue/src/main/java/com/ning/billing/ovedue/notification/DefaultOverdueCheckPoster.java
@@ -27,8 +27,8 @@ import org.skife.jdbi.v2.IDBI;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.ning.billing.junction.api.Blockable;
-import com.ning.billing.junction.api.Type;
+import com.ning.billing.entitlement.api.Blockable;
+import com.ning.billing.entitlement.api.Type;
import com.ning.billing.notificationq.api.NotificationEventWithMetadata;
import com.ning.billing.notificationq.api.NotificationQueue;
import com.ning.billing.notificationq.api.NotificationQueueService;
diff --git a/overdue/src/main/java/com/ning/billing/ovedue/notification/OverdueCheckNotificationKey.java b/overdue/src/main/java/com/ning/billing/ovedue/notification/OverdueCheckNotificationKey.java
index ac96145..56b1bb9 100644
--- a/overdue/src/main/java/com/ning/billing/ovedue/notification/OverdueCheckNotificationKey.java
+++ b/overdue/src/main/java/com/ning/billing/ovedue/notification/OverdueCheckNotificationKey.java
@@ -18,7 +18,7 @@ package com.ning.billing.ovedue.notification;
import java.util.UUID;
-import com.ning.billing.junction.api.Type;
+import com.ning.billing.entitlement.api.Type;
import com.ning.billing.notificationq.DefaultUUIDNotificationKey;
import com.fasterxml.jackson.annotation.JsonCreator;
diff --git a/overdue/src/main/java/com/ning/billing/ovedue/notification/OverdueCheckPoster.java b/overdue/src/main/java/com/ning/billing/ovedue/notification/OverdueCheckPoster.java
index 9768a62..9f24c10 100644
--- a/overdue/src/main/java/com/ning/billing/ovedue/notification/OverdueCheckPoster.java
+++ b/overdue/src/main/java/com/ning/billing/ovedue/notification/OverdueCheckPoster.java
@@ -18,7 +18,7 @@ package com.ning.billing.ovedue.notification;
import org.joda.time.DateTime;
-import com.ning.billing.junction.api.Blockable;
+import com.ning.billing.entitlement.api.Blockable;
import com.ning.billing.util.callcontext.InternalCallContext;
public interface OverdueCheckPoster {
diff --git a/overdue/src/main/java/com/ning/billing/overdue/api/DefaultOverdueUserApi.java b/overdue/src/main/java/com/ning/billing/overdue/api/DefaultOverdueUserApi.java
index 439c2bb..63fb49a 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/api/DefaultOverdueUserApi.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/api/DefaultOverdueUserApi.java
@@ -21,9 +21,9 @@ import org.slf4j.LoggerFactory;
import com.ning.billing.ErrorCode;
import com.ning.billing.ObjectType;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.junction.api.Blockable;
-import com.ning.billing.junction.api.Type;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
+import com.ning.billing.entitlement.api.Blockable;
+import com.ning.billing.entitlement.api.Type;
import com.ning.billing.overdue.OverdueApiException;
import com.ning.billing.overdue.OverdueState;
import com.ning.billing.overdue.OverdueUserApi;
diff --git a/overdue/src/main/java/com/ning/billing/overdue/applicator/DefaultOverdueChangeEvent.java b/overdue/src/main/java/com/ning/billing/overdue/applicator/DefaultOverdueChangeEvent.java
index cf68d7c..01b53cf 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/applicator/DefaultOverdueChangeEvent.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/applicator/DefaultOverdueChangeEvent.java
@@ -18,7 +18,7 @@ package com.ning.billing.overdue.applicator;
import java.util.UUID;
-import com.ning.billing.junction.api.Type;
+import com.ning.billing.entitlement.api.Type;
import com.ning.billing.util.events.BusEventBase;
import com.ning.billing.util.events.OverdueChangeInternalEvent;
diff --git a/overdue/src/main/java/com/ning/billing/overdue/applicator/OverdueEmailGenerator.java b/overdue/src/main/java/com/ning/billing/overdue/applicator/OverdueEmailGenerator.java
index c244272..72fc664 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/applicator/OverdueEmailGenerator.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/applicator/OverdueEmailGenerator.java
@@ -21,7 +21,7 @@ import java.util.HashMap;
import java.util.Map;
import com.ning.billing.account.api.Account;
-import com.ning.billing.junction.api.Blockable;
+import com.ning.billing.entitlement.api.Blockable;
import com.ning.billing.overdue.OverdueState;
import com.ning.billing.overdue.applicator.formatters.OverdueEmailFormatterFactory;
import com.ning.billing.overdue.config.api.BillingState;
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 5cfa32a..f4814d1 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
@@ -33,12 +33,12 @@ import com.ning.billing.account.api.AccountApiException;
import com.ning.billing.bus.api.PersistentBus;
import com.ning.billing.catalog.api.ActionPolicy;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.junction.api.Blockable;
-import com.ning.billing.junction.api.BlockingApiException;
-import com.ning.billing.junction.api.Type;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
+import com.ning.billing.entitlement.api.Blockable;
+import com.ning.billing.entitlement.api.BlockingApiException;
+import com.ning.billing.entitlement.api.Type;
import com.ning.billing.ovedue.notification.OverdueCheckPoster;
import com.ning.billing.overdue.OverdueApiException;
import com.ning.billing.overdue.OverdueCancellationPolicicy;
@@ -55,7 +55,7 @@ import com.ning.billing.util.email.EmailConfig;
import com.ning.billing.util.email.EmailSender;
import com.ning.billing.util.events.OverdueChangeInternalEvent;
import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
import com.ning.billing.util.svcapi.junction.DefaultBlockingState;
import com.ning.billing.util.svcapi.tag.TagInternalApi;
@@ -75,18 +75,18 @@ public class OverdueStateApplicator<T extends Blockable> {
private final OverdueCheckPoster poster;
private final PersistentBus bus;
private final AccountInternalApi accountApi;
- private final EntitlementInternalApi entitlementUserApi;
+ private final SubscriptionInternalApi subscriptionUserApi;
private final OverdueEmailGenerator overdueEmailGenerator;
final TagInternalApi tagApi;
private final EmailSender emailSender;
@Inject
- public OverdueStateApplicator(final BlockingInternalApi accessApi, final AccountInternalApi accountApi, final EntitlementInternalApi entitlementUserApi,
+ public OverdueStateApplicator(final BlockingInternalApi accessApi, final AccountInternalApi accountApi, final SubscriptionInternalApi subscriptionUserApi,
final Clock clock, final OverdueCheckPoster poster, final OverdueEmailGenerator overdueEmailGenerator,
final EmailConfig config, final PersistentBus bus, final TagInternalApi tagApi) {
this.blockingApi = accessApi;
this.accountApi = accountApi;
- this.entitlementUserApi = entitlementUserApi;
+ this.subscriptionUserApi = subscriptionUserApi;
this.clock = clock;
this.poster = poster;
this.overdueEmailGenerator = overdueEmailGenerator;
@@ -224,24 +224,24 @@ public class OverdueStateApplicator<T extends Blockable> {
// STEPH Need conversion toCallContext because we are calling a public API through the Subscription object
cur.cancelWithPolicy(clock.getUTCNow(), actionPolicy, context.toCallContext());
}
- } catch (EntitlementUserApiException e) {
+ } catch (SubscriptionUserApiException e) {
throw new OverdueException(e);
}
}
@SuppressWarnings("unchecked")
- private void computeSubscriptionsToCancel(final T blockable, final List<Subscription> result, final InternalTenantContext context) throws EntitlementUserApiException {
+ private void computeSubscriptionsToCancel(final T blockable, final List<Subscription> result, final InternalTenantContext context) throws SubscriptionUserApiException {
if (blockable instanceof Subscription) {
result.add((Subscription) blockable);
} else if (blockable instanceof SubscriptionBundle) {
- for (final Subscription cur : entitlementUserApi.getSubscriptionsForBundle(blockable.getId(), context)) {
+ for (final Subscription cur : subscriptionUserApi.getSubscriptionsForBundle(blockable.getId(), context)) {
// Entitlement is smart enough and will cancel the associated add-ons
if (!ProductCategory.ADD_ON.equals(cur.getCategory())) {
computeSubscriptionsToCancel((T) cur, result, context);
}
}
} else if (blockable instanceof Account) {
- for (final SubscriptionBundle cur : entitlementUserApi.getBundlesForAccount(blockable.getId(), context)) {
+ for (final SubscriptionBundle cur : subscriptionUserApi.getBundlesForAccount(blockable.getId(), context)) {
computeSubscriptionsToCancel((T) cur, result, context);
}
}
@@ -264,11 +264,11 @@ public class OverdueStateApplicator<T extends Blockable> {
try {
if (Type.SUBSCRIPTION.equals(overdueableType)) {
final UUID bundleId = ((Subscription) overdueable).getBundleId();
- final SubscriptionBundle bundle = entitlementUserApi.getBundleFromId(bundleId, context);
+ final SubscriptionBundle bundle = subscriptionUserApi.getBundleFromId(bundleId, context);
account = accountApi.getAccountById(bundle.getAccountId(), context);
} else if (Type.SUBSCRIPTION_BUNDLE.equals(overdueableType)) {
final UUID bundleId = ((SubscriptionBundle) overdueable).getId();
- final SubscriptionBundle bundle = entitlementUserApi.getBundleFromId(bundleId, context);
+ final SubscriptionBundle bundle = subscriptionUserApi.getBundleFromId(bundleId, context);
account = accountApi.getAccountById(bundle.getAccountId(), context);
} else if (Type.ACCOUNT.equals(overdueableType)) {
account = (Account) overdueable;
@@ -276,7 +276,7 @@ public class OverdueStateApplicator<T extends Blockable> {
log.warn("Unable to retrieve account for overdueable {} (type {})", overdueable.getId(), overdueableType);
return;
}
- } catch (EntitlementUserApiException e) {
+ } catch (SubscriptionUserApiException e) {
log.warn(String.format("Unable to retrieve account for overdueable %s (type %s)", overdueable.getId(), overdueableType), e);
return;
} catch (AccountApiException e) {
diff --git a/overdue/src/main/java/com/ning/billing/overdue/calculator/BillingStateCalculator.java b/overdue/src/main/java/com/ning/billing/overdue/calculator/BillingStateCalculator.java
index 8d246d7..f6968f7 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/calculator/BillingStateCalculator.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/calculator/BillingStateCalculator.java
@@ -28,7 +28,7 @@ import org.joda.time.DateTimeZone;
import org.joda.time.LocalDate;
import com.ning.billing.invoice.api.Invoice;
-import com.ning.billing.junction.api.Blockable;
+import com.ning.billing.entitlement.api.Blockable;
import com.ning.billing.overdue.config.api.BillingState;
import com.ning.billing.overdue.config.api.OverdueException;
import com.ning.billing.util.callcontext.InternalTenantContext;
diff --git a/overdue/src/main/java/com/ning/billing/overdue/calculator/BillingStateCalculatorBundle.java b/overdue/src/main/java/com/ning/billing/overdue/calculator/BillingStateCalculatorBundle.java
index 7dd8f6c..be3e4b0 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/calculator/BillingStateCalculatorBundle.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/calculator/BillingStateCalculatorBundle.java
@@ -31,9 +31,9 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.PhaseType;
import com.ning.billing.catalog.api.PriceList;
import com.ning.billing.catalog.api.Product;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItem;
import com.ning.billing.overdue.config.api.BillingStateBundle;
@@ -42,7 +42,7 @@ import com.ning.billing.overdue.config.api.PaymentResponse;
import com.ning.billing.util.callcontext.InternalTenantContext;
import com.ning.billing.clock.Clock;
import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.invoice.InvoiceInternalApi;
import com.ning.billing.util.tag.Tag;
@@ -50,14 +50,14 @@ import com.google.inject.Inject;
public class BillingStateCalculatorBundle extends BillingStateCalculator<SubscriptionBundle> {
- private final EntitlementInternalApi entitlementApi;
+ private final SubscriptionInternalApi subscriptionApi;
private final AccountInternalApi accountApi;
@Inject
- public BillingStateCalculatorBundle(final EntitlementInternalApi entitlementApi, final InvoiceInternalApi invoiceApi,
+ public BillingStateCalculatorBundle(final SubscriptionInternalApi subscriptionApi, final InvoiceInternalApi invoiceApi,
final AccountInternalApi accountApi, final Clock clock) {
super(invoiceApi, clock);
- this.entitlementApi = entitlementApi;
+ this.subscriptionApi = subscriptionApi;
this.accountApi = accountApi;
}
@@ -114,7 +114,7 @@ public class BillingStateCalculatorBundle extends BillingStateCalculator<Subscri
basePlanBillingPeriod,
basePlanPriceList,
basePlanPhaseType);
- } catch (EntitlementUserApiException e) {
+ } catch (SubscriptionUserApiException e) {
throw new OverdueException(e);
} catch (AccountApiException e) {
throw new OverdueException(e);
@@ -133,12 +133,12 @@ public class BillingStateCalculatorBundle extends BillingStateCalculator<Subscri
return result;
}
- private Subscription getBasePlanIfExist(UUID bundleId, final InternalTenantContext context) throws EntitlementUserApiException {
+ private Subscription getBasePlanIfExist(UUID bundleId, final InternalTenantContext context) throws SubscriptionUserApiException {
try {
- final Subscription basePlan = entitlementApi.getBaseSubscription(bundleId, context);
+ final Subscription basePlan = subscriptionApi.getBaseSubscription(bundleId, context);
return basePlan;
- } catch (EntitlementUserApiException e) {
- if (e.getCode() == ErrorCode.ENT_GET_NO_SUCH_BASE_SUBSCRIPTION.getCode()) {
+ } catch (SubscriptionUserApiException e) {
+ if (e.getCode() == ErrorCode.SUB_GET_NO_SUCH_BASE_SUBSCRIPTION.getCode()) {
// No base plan probably a STANDALONE subscription in a bundle
return null;
}
diff --git a/overdue/src/main/java/com/ning/billing/overdue/config/DefaultCondition.java b/overdue/src/main/java/com/ning/billing/overdue/config/DefaultCondition.java
index a151e78..94319e3 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/config/DefaultCondition.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/config/DefaultCondition.java
@@ -28,7 +28,7 @@ import org.joda.time.LocalDate;
import com.ning.billing.catalog.api.Duration;
import com.ning.billing.catalog.api.TimeUnit;
-import com.ning.billing.junction.api.Blockable;
+import com.ning.billing.entitlement.api.Blockable;
import com.ning.billing.overdue.Condition;
import com.ning.billing.overdue.config.api.BillingState;
import com.ning.billing.overdue.config.api.PaymentResponse;
diff --git a/overdue/src/main/java/com/ning/billing/overdue/config/DefaultOverdueState.java b/overdue/src/main/java/com/ning/billing/overdue/config/DefaultOverdueState.java
index 2d5ecf3..d1c1c8a 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/config/DefaultOverdueState.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/config/DefaultOverdueState.java
@@ -26,7 +26,7 @@ import org.joda.time.Period;
import com.ning.billing.ErrorCode;
import com.ning.billing.catalog.api.TimeUnit;
-import com.ning.billing.junction.api.Blockable;
+import com.ning.billing.entitlement.api.Blockable;
import com.ning.billing.overdue.EmailNotification;
import com.ning.billing.overdue.OverdueApiException;
import com.ning.billing.overdue.OverdueCancellationPolicicy;
diff --git a/overdue/src/main/java/com/ning/billing/overdue/config/DefaultOverdueStateSet.java b/overdue/src/main/java/com/ning/billing/overdue/config/DefaultOverdueStateSet.java
index a61d2de..a3f28ef 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/config/DefaultOverdueStateSet.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/config/DefaultOverdueStateSet.java
@@ -23,7 +23,7 @@ import org.joda.time.LocalDate;
import org.joda.time.Period;
import com.ning.billing.ErrorCode;
-import com.ning.billing.junction.api.Blockable;
+import com.ning.billing.entitlement.api.Blockable;
import com.ning.billing.overdue.OverdueApiException;
import com.ning.billing.overdue.OverdueState;
import com.ning.billing.overdue.config.api.BillingState;
diff --git a/overdue/src/main/java/com/ning/billing/overdue/config/OverdueConfig.java b/overdue/src/main/java/com/ning/billing/overdue/config/OverdueConfig.java
index d5c0d5c..939c0a0 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/config/OverdueConfig.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/config/OverdueConfig.java
@@ -22,7 +22,7 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import java.net.URI;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.util.config.catalog.ValidatingConfig;
import com.ning.billing.util.config.catalog.ValidationErrors;
diff --git a/overdue/src/main/java/com/ning/billing/overdue/config/OverdueStatesBundle.java b/overdue/src/main/java/com/ning/billing/overdue/config/OverdueStatesBundle.java
index 5b7a27a..b5bdd3e 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/config/OverdueStatesBundle.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/config/OverdueStatesBundle.java
@@ -18,7 +18,7 @@ package com.ning.billing.overdue.config;
import javax.xml.bind.annotation.XmlElement;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
public class OverdueStatesBundle extends DefaultOverdueStateSet<SubscriptionBundle> {
diff --git a/overdue/src/main/java/com/ning/billing/overdue/listener/OverdueDispatcher.java b/overdue/src/main/java/com/ning/billing/overdue/listener/OverdueDispatcher.java
index d1668b9..a10ec20 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/listener/OverdueDispatcher.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/listener/OverdueDispatcher.java
@@ -23,11 +23,11 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.ning.billing.BillingExceptionBase;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.junction.api.Type;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
+import com.ning.billing.entitlement.api.Type;
import com.ning.billing.overdue.wrapper.OverdueWrapperFactory;
import com.ning.billing.util.callcontext.InternalCallContext;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.google.inject.Inject;
@@ -35,25 +35,25 @@ public class OverdueDispatcher {
Logger log = LoggerFactory.getLogger(OverdueDispatcher.class);
- private final EntitlementInternalApi entitlementApi;
+ private final SubscriptionInternalApi subscriptionApi;
private final OverdueWrapperFactory factory;
@Inject
- public OverdueDispatcher(final EntitlementInternalApi entitlementApi,
+ public OverdueDispatcher(final SubscriptionInternalApi subscriptionApi,
final OverdueWrapperFactory factory) {
- this.entitlementApi = entitlementApi;
+ this.subscriptionApi = subscriptionApi;
this.factory = factory;
}
public void processOverdueForAccount(final UUID accountId, final InternalCallContext context) {
- final List<SubscriptionBundle> bundles = entitlementApi.getBundlesForAccount(accountId, context);
+ final List<SubscriptionBundle> bundles = subscriptionApi.getBundlesForAccount(accountId, context);
for (final SubscriptionBundle bundle : bundles) {
processOverdue(Type.SUBSCRIPTION_BUNDLE, bundle.getId(), context);
}
}
public void clearOverdueForAccount(final UUID accountId, final InternalCallContext context) {
- final List<SubscriptionBundle> bundles = entitlementApi.getBundlesForAccount(accountId, context);
+ final List<SubscriptionBundle> bundles = subscriptionApi.getBundlesForAccount(accountId, context);
for (final SubscriptionBundle bundle : bundles) {
clearOverdue(Type.SUBSCRIPTION_BUNDLE, bundle.getId(), context);
}
diff --git a/overdue/src/main/java/com/ning/billing/overdue/wrapper/OverdueWrapper.java b/overdue/src/main/java/com/ning/billing/overdue/wrapper/OverdueWrapper.java
index 6615c38..ef2c11f 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/wrapper/OverdueWrapper.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/wrapper/OverdueWrapper.java
@@ -16,7 +16,7 @@
package com.ning.billing.overdue.wrapper;
-import com.ning.billing.junction.api.Blockable;
+import com.ning.billing.entitlement.api.Blockable;
import com.ning.billing.overdue.OverdueApiException;
import com.ning.billing.overdue.OverdueState;
import com.ning.billing.overdue.applicator.OverdueStateApplicator;
diff --git a/overdue/src/main/java/com/ning/billing/overdue/wrapper/OverdueWrapperFactory.java b/overdue/src/main/java/com/ning/billing/overdue/wrapper/OverdueWrapperFactory.java
index 64d061c..4420de4 100644
--- a/overdue/src/main/java/com/ning/billing/overdue/wrapper/OverdueWrapperFactory.java
+++ b/overdue/src/main/java/com/ning/billing/overdue/wrapper/OverdueWrapperFactory.java
@@ -22,10 +22,10 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.ning.billing.ErrorCode;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.junction.api.Blockable;
-import com.ning.billing.junction.api.Type;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
+import com.ning.billing.entitlement.api.Blockable;
+import com.ning.billing.entitlement.api.Type;
import com.ning.billing.overdue.applicator.OverdueStateApplicator;
import com.ning.billing.overdue.calculator.BillingStateCalculatorBundle;
import com.ning.billing.overdue.config.DefaultOverdueState;
@@ -35,7 +35,7 @@ import com.ning.billing.overdue.config.api.OverdueException;
import com.ning.billing.overdue.config.api.OverdueStateSet;
import com.ning.billing.util.callcontext.InternalTenantContext;
import com.ning.billing.clock.Clock;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
import com.google.inject.Inject;
@@ -43,7 +43,7 @@ import com.google.inject.Inject;
public class OverdueWrapperFactory {
private static final Logger log = LoggerFactory.getLogger(OverdueWrapperFactory.class);
- private final EntitlementInternalApi entitlementApi;
+ private final SubscriptionInternalApi subscriptionApi;
private final BillingStateCalculatorBundle billingStateCalcuatorBundle;
private final OverdueStateApplicator<SubscriptionBundle> overdueStateApplicatorBundle;
private final BlockingInternalApi api;
@@ -54,10 +54,10 @@ public class OverdueWrapperFactory {
public OverdueWrapperFactory(final BlockingInternalApi api, final Clock clock,
final BillingStateCalculatorBundle billingStateCalcuatorBundle,
final OverdueStateApplicator<SubscriptionBundle> overdueStateApplicatorBundle,
- final EntitlementInternalApi entitlementApi) {
+ final SubscriptionInternalApi subscriptionApi) {
this.billingStateCalcuatorBundle = billingStateCalcuatorBundle;
this.overdueStateApplicatorBundle = overdueStateApplicatorBundle;
- this.entitlementApi = entitlementApi;
+ this.subscriptionApi = subscriptionApi;
this.api = api;
this.clock = clock;
}
@@ -78,7 +78,7 @@ public class OverdueWrapperFactory {
try {
switch (type) {
case SUBSCRIPTION_BUNDLE: {
- final SubscriptionBundle bundle = entitlementApi.getBundleFromId(id, context);
+ final SubscriptionBundle bundle = subscriptionApi.getBundleFromId(id, context);
return (OverdueWrapper<T>) new OverdueWrapper<SubscriptionBundle>(bundle, api, getOverdueStateSetBundle(),
clock, billingStateCalcuatorBundle, overdueStateApplicatorBundle);
}
@@ -87,7 +87,7 @@ public class OverdueWrapperFactory {
}
}
- } catch (EntitlementUserApiException e) {
+ } catch (SubscriptionUserApiException e) {
throw new OverdueException(e);
}
}
diff --git a/overdue/src/test/java/com/ning/billing/ovedue/notification/TestDefaultOverdueCheckPoster.java b/overdue/src/test/java/com/ning/billing/ovedue/notification/TestDefaultOverdueCheckPoster.java
index be6e72d..cdd1d14 100644
--- a/overdue/src/test/java/com/ning/billing/ovedue/notification/TestDefaultOverdueCheckPoster.java
+++ b/overdue/src/test/java/com/ning/billing/ovedue/notification/TestDefaultOverdueCheckPoster.java
@@ -26,10 +26,10 @@ import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.junction.api.Blockable;
-import com.ning.billing.junction.api.Type;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
+import com.ning.billing.entitlement.api.Blockable;
+import com.ning.billing.entitlement.api.Type;
import com.ning.billing.notificationq.api.NotificationEventWithMetadata;
import com.ning.billing.notificationq.api.NotificationQueue;
import com.ning.billing.overdue.OverdueTestSuiteWithEmbeddedDB;
diff --git a/overdue/src/test/java/com/ning/billing/overdue/applicator/TestOverdueStateApplicator.java b/overdue/src/test/java/com/ning/billing/overdue/applicator/TestOverdueStateApplicator.java
index 97edc14..1b2b10d 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/applicator/TestOverdueStateApplicator.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/applicator/TestOverdueStateApplicator.java
@@ -26,7 +26,7 @@ import org.mockito.Mockito;
import org.testng.Assert;
import org.testng.annotations.Test;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.overdue.OverdueState;
import com.ning.billing.overdue.OverdueTestSuiteWithEmbeddedDB;
import com.ning.billing.overdue.config.OverdueConfig;
diff --git a/overdue/src/test/java/com/ning/billing/overdue/calculator/TestBillingStateCalculator.java b/overdue/src/test/java/com/ning/billing/overdue/calculator/TestBillingStateCalculator.java
index 4d134d6..2401f58 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/calculator/TestBillingStateCalculator.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/calculator/TestBillingStateCalculator.java
@@ -31,7 +31,7 @@ import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import com.ning.billing.account.api.Account;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItem;
import com.ning.billing.overdue.OverdueTestSuiteNoDB;
diff --git a/overdue/src/test/java/com/ning/billing/overdue/calculator/TestBillingStateCalculatorBundle.java b/overdue/src/test/java/com/ning/billing/overdue/calculator/TestBillingStateCalculatorBundle.java
index 653d5da..1766d7f 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/calculator/TestBillingStateCalculatorBundle.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/calculator/TestBillingStateCalculatorBundle.java
@@ -34,14 +34,14 @@ import com.ning.billing.catalog.MockPlan;
import com.ning.billing.catalog.MockPriceList;
import com.ning.billing.catalog.api.Plan;
import com.ning.billing.catalog.api.PriceList;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItem;
import com.ning.billing.overdue.config.api.BillingStateBundle;
import com.ning.billing.overdue.config.api.PaymentResponse;
import com.ning.billing.util.callcontext.InternalTenantContext;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.google.common.base.Predicate;
import com.google.common.collect.Collections2;
@@ -67,11 +67,11 @@ public class TestBillingStateCalculatorBundle extends TestBillingStateCalculator
final SubscriptionBundle bundle = Mockito.mock(SubscriptionBundle.class);
Mockito.when(bundle.getId()).thenReturn(bundleId);
- final EntitlementInternalApi entitlementApi = Mockito.mock(EntitlementInternalApi.class);
+ final SubscriptionInternalApi subscriptionApi = Mockito.mock(SubscriptionInternalApi.class);
final Subscription subscription = Mockito.mock(Subscription.class);
- Mockito.when(entitlementApi.getBaseSubscription(Mockito.eq(bundleId), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
+ Mockito.when(subscriptionApi.getBaseSubscription(Mockito.eq(bundleId), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
- final BillingStateCalculatorBundle calc = new BillingStateCalculatorBundle(entitlementApi, invoiceApi, accountApi, clock);
+ final BillingStateCalculatorBundle calc = new BillingStateCalculatorBundle(subscriptionApi, invoiceApi, accountApi, clock);
final BillingStateBundle billingStateBundle = calc.calculateBillingState(bundle, internalCallContext);
Assert.assertNull(billingStateBundle.getBasePlanBillingPeriod());
Assert.assertNull(billingStateBundle.getBasePlanPhaseType());
@@ -100,7 +100,7 @@ public class TestBillingStateCalculatorBundle extends TestBillingStateCalculator
}
}));
- final BillingStateCalculatorBundle calc = new BillingStateCalculatorBundle(entitlementApi, invoiceApi, accountApi, clock);
+ final BillingStateCalculatorBundle calc = new BillingStateCalculatorBundle(subscriptionApi, invoiceApi, accountApi, clock);
final SortedSet<Invoice> resultinvoices = calc.unpaidInvoicesForBundle(thisBundleId, new UUID(0L, 0L), DateTimeZone.UTC, internalCallContext);
Assert.assertEquals(resultinvoices.size(), 3);
@@ -128,7 +128,7 @@ public class TestBillingStateCalculatorBundle extends TestBillingStateCalculator
Mockito.when(bundle.getAccountId()).thenReturn(UUID.randomUUID());
final Subscription subscription = Mockito.mock(Subscription.class);
- Mockito.when(entitlementApi.getBaseSubscription(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
+ Mockito.when(subscriptionApi.getBaseSubscription(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
final Plan plan = MockPlan.createBicycleNoTrialEvergreen1USD();
final PriceList pricelist = new MockPriceList();
@@ -163,7 +163,7 @@ public class TestBillingStateCalculatorBundle extends TestBillingStateCalculator
Mockito.when(bundle.getAccountId()).thenReturn(UUID.randomUUID());
final Subscription subscription = Mockito.mock(Subscription.class);
- Mockito.when(entitlementApi.getBaseSubscription(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
+ Mockito.when(subscriptionApi.getBaseSubscription(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
final Plan plan = MockPlan.createBicycleNoTrialEvergreen1USD();
final PriceList pricelist = new MockPriceList();
diff --git a/overdue/src/test/java/com/ning/billing/overdue/config/MockOverdueRules.java b/overdue/src/test/java/com/ning/billing/overdue/config/MockOverdueRules.java
index a73da21..361b439 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/config/MockOverdueRules.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/config/MockOverdueRules.java
@@ -16,7 +16,7 @@
package com.ning.billing.overdue.config;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
public class MockOverdueRules extends OverdueConfig {
diff --git a/overdue/src/test/java/com/ning/billing/overdue/config/MockOverdueState.java b/overdue/src/test/java/com/ning/billing/overdue/config/MockOverdueState.java
index c6d19a1..f8d2d88 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/config/MockOverdueState.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/config/MockOverdueState.java
@@ -16,7 +16,7 @@
package com.ning.billing.overdue.config;
-import com.ning.billing.junction.api.Blockable;
+import com.ning.billing.entitlement.api.Blockable;
public class MockOverdueState<T extends Blockable> extends DefaultOverdueState<T> {
diff --git a/overdue/src/test/java/com/ning/billing/overdue/config/MockOverdueStatesBundle.java b/overdue/src/test/java/com/ning/billing/overdue/config/MockOverdueStatesBundle.java
index 3f85118..0ba0d46 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/config/MockOverdueStatesBundle.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/config/MockOverdueStatesBundle.java
@@ -16,7 +16,7 @@
package com.ning.billing.overdue.config;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
public class MockOverdueStatesBundle extends OverdueStatesBundle {
diff --git a/overdue/src/test/java/com/ning/billing/overdue/config/TestCondition.java b/overdue/src/test/java/com/ning/billing/overdue/config/TestCondition.java
index 046cdd3..bc21288 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/config/TestCondition.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/config/TestCondition.java
@@ -29,7 +29,7 @@ import org.testng.Assert;
import org.testng.annotations.Test;
import com.ning.billing.ObjectType;
-import com.ning.billing.junction.api.Blockable;
+import com.ning.billing.entitlement.api.Blockable;
import com.ning.billing.overdue.OverdueTestSuiteNoDB;
import com.ning.billing.overdue.config.api.BillingState;
import com.ning.billing.overdue.config.api.PaymentResponse;
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 7d010dc..8bf69c3 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
@@ -16,21 +16,26 @@
package com.ning.billing.overdue.glue;
-import java.util.List;
-import java.util.UUID;
-
-import org.joda.time.DateTime;
-
-import com.ning.billing.junction.api.Blockable;
-import com.ning.billing.junction.api.Type;
-import com.ning.billing.junction.api.BlockingState;
+import com.google.inject.AbstractModule;
+import com.ning.billing.entitlement.api.Blockable;
+import com.ning.billing.entitlement.api.BlockingState;
+import com.ning.billing.entitlement.api.Type;
import com.ning.billing.mock.glue.MockJunctionModule;
import com.ning.billing.util.callcontext.InternalCallContext;
import com.ning.billing.util.callcontext.InternalTenantContext;
import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
import com.ning.billing.util.svcapi.junction.DefaultBlockingState;
+import org.joda.time.DateTime;
-public class ApplicatorMockJunctionModule extends MockJunctionModule {
+import java.util.List;
+import java.util.UUID;
+
+public class ApplicatorMockJunctionModule extends AbstractModule {
+
+ @Override
+ protected void configure() {
+ installBlockingApi();
+ }
public static class ApplicatorBlockingApi implements BlockingInternalApi {
@@ -134,7 +139,6 @@ public class ApplicatorMockJunctionModule extends MockJunctionModule {
}
- @Override
public void installBlockingApi() {
bind(BlockingInternalApi.class).toInstance(new ApplicatorBlockingApi());
}
diff --git a/overdue/src/test/java/com/ning/billing/overdue/glue/TestOverdueModule.java b/overdue/src/test/java/com/ning/billing/overdue/glue/TestOverdueModule.java
index 411e922..b2f505d 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/glue/TestOverdueModule.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/glue/TestOverdueModule.java
@@ -19,7 +19,7 @@ package com.ning.billing.overdue.glue;
import org.skife.config.ConfigSource;
import com.ning.billing.mock.glue.MockAccountModule;
-import com.ning.billing.mock.glue.MockEntitlementModule;
+import com.ning.billing.mock.glue.MockSubscriptionModule;
import com.ning.billing.mock.glue.MockInvoiceModule;
import com.ning.billing.mock.glue.MockTagModule;
import com.ning.billing.overdue.TestOverdueHelper;
@@ -47,7 +47,7 @@ public class TestOverdueModule extends DefaultOverdueModule {
install(new CustomFieldModule());
install(new EmailModule(configSource));
install(new MockAccountModule());
- install(new MockEntitlementModule());
+ install(new MockSubscriptionModule());
install(new MockInvoiceModule());
install(new MockTagModule());
install(new TemplateModule());
diff --git a/overdue/src/test/java/com/ning/billing/overdue/notification/TestOverdueCheckNotifier.java b/overdue/src/test/java/com/ning/billing/overdue/notification/TestOverdueCheckNotifier.java
index 47cdddc..7d6783f 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/notification/TestOverdueCheckNotifier.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/notification/TestOverdueCheckNotifier.java
@@ -27,8 +27,8 @@ import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import com.ning.billing.account.api.Account;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.junction.api.Blockable;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.entitlement.api.Blockable;
import com.ning.billing.ovedue.notification.DefaultOverdueCheckNotifier;
import com.ning.billing.ovedue.notification.OverdueCheckNotificationKey;
import com.ning.billing.ovedue.notification.OverdueCheckNotifier;
@@ -79,7 +79,7 @@ public class TestOverdueCheckNotifier extends OverdueTestSuiteWithEmbeddedDB {
Mockito.when(accountApi.getAccountById(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(account);
final Subscription subscription = Mockito.mock(Subscription.class);
- Mockito.when(entitlementApi.getSubscriptionFromId(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
+ Mockito.when(subscriptionApi.getSubscriptionFromId(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(subscription);
mockListener = new OverdueListenerMock(internalCallContextFactory);
notifierForMock = new DefaultOverdueCheckNotifier(notificationQueueService, overdueProperties, mockListener);
diff --git a/overdue/src/test/java/com/ning/billing/overdue/notification/TestOverdueNotificationKeyJson.java b/overdue/src/test/java/com/ning/billing/overdue/notification/TestOverdueNotificationKeyJson.java
index ff32441..ee866a1 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/notification/TestOverdueNotificationKeyJson.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/notification/TestOverdueNotificationKeyJson.java
@@ -21,7 +21,7 @@ import java.util.UUID;
import org.testng.Assert;
import org.testng.annotations.Test;
-import com.ning.billing.junction.api.Type;
+import com.ning.billing.entitlement.api.Type;
import com.ning.billing.ovedue.notification.OverdueCheckNotificationKey;
import com.ning.billing.util.jackson.ObjectMapper;
diff --git a/overdue/src/test/java/com/ning/billing/overdue/OverdueTestSuiteNoDB.java b/overdue/src/test/java/com/ning/billing/overdue/OverdueTestSuiteNoDB.java
index 5288066..d61b8bf 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/OverdueTestSuiteNoDB.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/OverdueTestSuiteNoDB.java
@@ -22,7 +22,7 @@ import org.testng.annotations.BeforeMethod;
import com.ning.billing.GuicyKillbillTestSuiteNoDB;
import com.ning.billing.bus.api.PersistentBus;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.notificationq.api.NotificationQueueService;
import com.ning.billing.ovedue.notification.OverdueCheckNotifier;
import com.ning.billing.ovedue.notification.OverdueCheckPoster;
@@ -34,7 +34,7 @@ import com.ning.billing.overdue.service.DefaultOverdueService;
import com.ning.billing.overdue.wrapper.OverdueWrapperFactory;
import com.ning.billing.util.callcontext.InternalCallContextFactory;
import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.invoice.InvoiceInternalApi;
import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
import com.ning.billing.util.svcsapi.bus.BusService;
@@ -56,7 +56,7 @@ public abstract class OverdueTestSuiteNoDB extends GuicyKillbillTestSuiteNoDB {
@Inject
protected DefaultOverdueService service;
@Inject
- protected EntitlementInternalApi entitlementApi;
+ protected SubscriptionInternalApi subscriptionApi;
@Inject
protected PersistentBus bus;
@Inject
diff --git a/overdue/src/test/java/com/ning/billing/overdue/OverdueTestSuiteWithEmbeddedDB.java b/overdue/src/test/java/com/ning/billing/overdue/OverdueTestSuiteWithEmbeddedDB.java
index ac6a6a8..c7194dc 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/OverdueTestSuiteWithEmbeddedDB.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/OverdueTestSuiteWithEmbeddedDB.java
@@ -22,7 +22,7 @@ import org.testng.annotations.BeforeMethod;
import com.ning.billing.GuicyKillbillTestSuiteWithEmbeddedDB;
import com.ning.billing.bus.api.PersistentBus;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.notificationq.api.NotificationQueueService;
import com.ning.billing.ovedue.notification.OverdueCheckNotifier;
import com.ning.billing.ovedue.notification.OverdueCheckPoster;
@@ -36,7 +36,7 @@ import com.ning.billing.util.cache.CacheControllerDispatcher;
import com.ning.billing.util.callcontext.InternalCallContextFactory;
import com.ning.billing.util.dao.NonEntityDao;
import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.invoice.InvoiceInternalApi;
import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
import com.ning.billing.util.svcsapi.bus.BusService;
@@ -58,7 +58,7 @@ public abstract class OverdueTestSuiteWithEmbeddedDB extends GuicyKillbillTestSu
@Inject
protected DefaultOverdueService service;
@Inject
- protected EntitlementInternalApi entitlementApi;
+ protected SubscriptionInternalApi subscriptionApi;
@Inject
protected CacheControllerDispatcher cacheControllerDispatcher;
@Inject
diff --git a/overdue/src/test/java/com/ning/billing/overdue/TestOverdueHelper.java b/overdue/src/test/java/com/ning/billing/overdue/TestOverdueHelper.java
index 1c5bf6c..300d763 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/TestOverdueHelper.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/TestOverdueHelper.java
@@ -30,16 +30,16 @@ import com.ning.billing.account.api.Account;
import com.ning.billing.account.api.AccountApiException;
import com.ning.billing.catalog.MockPlan;
import com.ning.billing.catalog.MockPriceList;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItem;
-import com.ning.billing.junction.api.BlockingState;
+import com.ning.billing.entitlement.api.BlockingState;
import com.ning.billing.overdue.glue.ApplicatorMockJunctionModule.ApplicatorBlockingApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
import com.ning.billing.util.callcontext.InternalTenantContext;
import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
import com.ning.billing.util.svcapi.invoice.InvoiceInternalApi;
import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
@@ -93,15 +93,15 @@ public class TestOverdueHelper {
"</overdueConfig>";
private final AccountInternalApi accountInternalApi;
- private final EntitlementInternalApi entitlementInternalApi;
+ private final SubscriptionInternalApi subscriptionInternalApi;
private final InvoiceInternalApi invoiceInternalApi;
private final BlockingInternalApi blockingInternalApi;
@Inject
- public TestOverdueHelper(final AccountInternalApi accountInternalApi, final EntitlementInternalApi entitlementInternalApi,
+ public TestOverdueHelper(final AccountInternalApi accountInternalApi, final SubscriptionInternalApi subscriptionInternalApi,
final InvoiceInternalApi invoiceInternalApi, final BlockingInternalApi blockingInternalApi) {
this.accountInternalApi = accountInternalApi;
- this.entitlementInternalApi = entitlementInternalApi;
+ this.subscriptionInternalApi = subscriptionInternalApi;
this.invoiceInternalApi = invoiceInternalApi;
this.blockingInternalApi = blockingInternalApi;
}
@@ -118,7 +118,7 @@ public class TestOverdueHelper {
Assert.assertEquals(result.isBlockBilling(), state.disableEntitlementAndChangesBlocked());
}
- public SubscriptionBundle createBundle(final LocalDate dateOfLastUnPaidInvoice) throws EntitlementUserApiException, AccountApiException {
+ public SubscriptionBundle createBundle(final LocalDate dateOfLastUnPaidInvoice) throws SubscriptionUserApiException, AccountApiException {
final SubscriptionBundle bundle = Mockito.mock(SubscriptionBundle.class);
final UUID bundleId = UUID.randomUUID();
Mockito.when(bundle.getId()).thenReturn(bundleId);
@@ -151,7 +151,7 @@ public class TestOverdueHelper {
Mockito.when(base.getCurrentPlan()).thenReturn(MockPlan.createBicycleNoTrialEvergreen1USD());
Mockito.when(base.getCurrentPriceList()).thenReturn(new MockPriceList());
Mockito.when(base.getCurrentPhase()).thenReturn(MockPlan.createBicycleNoTrialEvergreen1USD().getFinalPhase());
- Mockito.when(entitlementInternalApi.getBaseSubscription(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(base);
+ Mockito.when(subscriptionInternalApi.getBaseSubscription(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(base);
return bundle;
}
diff --git a/overdue/src/test/java/com/ning/billing/overdue/wrapper/TestOverdueWrapper.java b/overdue/src/test/java/com/ning/billing/overdue/wrapper/TestOverdueWrapper.java
index af34c55..58fa4a6 100644
--- a/overdue/src/test/java/com/ning/billing/overdue/wrapper/TestOverdueWrapper.java
+++ b/overdue/src/test/java/com/ning/billing/overdue/wrapper/TestOverdueWrapper.java
@@ -22,7 +22,7 @@ import java.io.InputStream;
import org.testng.Assert;
import org.testng.annotations.Test;
-import com.ning.billing.entitlement.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
import com.ning.billing.overdue.OverdueState;
import com.ning.billing.overdue.OverdueTestSuiteWithEmbeddedDB;
import com.ning.billing.overdue.config.OverdueConfig;
diff --git a/overdue/src/test/resources/resource.properties b/overdue/src/test/resources/resource.properties
index d0bda94..40eb8f3 100644
--- a/overdue/src/test/resources/resource.properties
+++ b/overdue/src/test/resources/resource.properties
@@ -1,7 +1,4 @@
killbill.catalog.uri=file:src/test/resources/catalogSample.xml
-killbill.entitlement.dao.claim.time=60000
-killbill.entitlement.dao.ready.max=1
-killbill.entitlement.engine.notifications.sleep=500
killbill.billing.persistent.bus.claimed=1
user.timezone=UTC
payment/killbill-payment.iml 3(+2 -1)
diff --git a/payment/killbill-payment.iml b/payment/killbill-payment.iml
index 3033e74..ec99a4e 100644
--- a/payment/killbill-payment.iml
+++ b/payment/killbill-payment.iml
@@ -12,6 +12,7 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.findbugs:jsr305:1.3.9" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:14.0.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.inject:guice:3.0" level="project" />
@@ -29,7 +30,7 @@
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.1.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.1.0" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-internal-api" />
<orderEntry type="library" name="Maven: com.ning.billing.plugin:killbill-plugin-api-payment:0.2.5" level="project" />
diff --git a/payment/src/test/java/com/ning/billing/payment/glue/TestPaymentModule.java b/payment/src/test/java/com/ning/billing/payment/glue/TestPaymentModule.java
index 8e9b973..a738c35 100644
--- a/payment/src/test/java/com/ning/billing/payment/glue/TestPaymentModule.java
+++ b/payment/src/test/java/com/ning/billing/payment/glue/TestPaymentModule.java
@@ -23,7 +23,7 @@ import org.skife.config.ConfigSource;
import com.ning.billing.ObjectType;
import com.ning.billing.mock.glue.MockAccountModule;
-import com.ning.billing.mock.glue.MockEntitlementModule;
+import com.ning.billing.mock.glue.MockSubscriptionModule;
import com.ning.billing.mock.glue.MockGlobalLockerModule;
import com.ning.billing.mock.glue.MockInvoiceModule;
import com.ning.billing.mock.glue.MockNotificationQueueModule;
@@ -67,7 +67,7 @@ public class TestPaymentModule extends PaymentModule {
install(new MockNotificationQueueModule(configSource));
install(new MockInvoiceModule());
install(new MockAccountModule());
- install(new MockEntitlementModule());
+ install(new MockSubscriptionModule());
install(new MockGlobalLockerModule());
install(new CacheModule(configSource));
installExternalApis();
pom.xml 3(+2 -1)
diff --git a/pom.xml b/pom.xml
index 550f15d..0376f3d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,7 +19,7 @@
<parent>
<artifactId>killbill-oss-parent</artifactId>
<groupId>com.ning.billing</groupId>
- <version>0.3.2</version>
+ <version>0.3.3</version>
</parent>
<artifactId>killbill</artifactId>
<version>0.3.4-SNAPSHOT</version>
@@ -32,6 +32,7 @@
<module>api</module>
<module>beatrix</module>
<module>catalog</module>
+ <module>subscription</module>
<module>entitlement</module>
<module>invoice</module>
<module>junction</module>
server/killbill-server.iml 4(+3 -1)
diff --git a/server/killbill-server.iml b/server/killbill-server.iml
index accf3de..05d91bc 100644
--- a/server/killbill-server.iml
+++ b/server/killbill-server.iml
@@ -12,6 +12,7 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: ch.qos.logback:logback-classic:1.0.1" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: ch.qos.logback:logback-core:1.0.1" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.5" level="project" />
@@ -28,7 +29,7 @@
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.1.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.1.0" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-internal-api" />
<orderEntry type="library" name="Maven: com.ning.billing.plugin:killbill-plugin-api-payment:0.2.5" level="project" />
@@ -60,6 +61,7 @@
<orderEntry type="module" module-name="killbill-junction" />
<orderEntry type="library" scope="RUNTIME" name="Maven: mysql:mysql-connector-java:5.1.22" level="project" />
<orderEntry type="module" module-name="killbill-payment" />
+ <orderEntry type="module" module-name="killbill-subscription" />
<orderEntry type="module" module-name="killbill-tenant" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-core:1.2.1" level="project" />
<orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.8.3" level="project" />
server/pom.xml 8(+4 -4)
diff --git a/server/pom.xml b/server/pom.xml
index 598794e..15d1325 100644
--- a/server/pom.xml
+++ b/server/pom.xml
@@ -91,10 +91,6 @@
</dependency>
<dependency>
<groupId>com.ning.billing</groupId>
- <artifactId>killbill-entitlement</artifactId>
- </dependency>
- <dependency>
- <groupId>com.ning.billing</groupId>
<artifactId>killbill-invoice</artifactId>
</dependency>
<dependency>
@@ -125,6 +121,10 @@
</dependency>
<dependency>
<groupId>com.ning.billing</groupId>
+ <artifactId>killbill-subscription</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing</groupId>
<artifactId>killbill-tenant</artifactId>
</dependency>
<dependency>
diff --git a/server/src/main/java/com/ning/billing/server/modules/KillbillServerModule.java b/server/src/main/java/com/ning/billing/server/modules/KillbillServerModule.java
index 4df07bb..bde80c8 100644
--- a/server/src/main/java/com/ning/billing/server/modules/KillbillServerModule.java
+++ b/server/src/main/java/com/ning/billing/server/modules/KillbillServerModule.java
@@ -16,6 +16,7 @@
package com.ning.billing.server.modules;
+import com.ning.billing.entitlement.glue.DefaultEntitlementModule;
import org.skife.config.ConfigSource;
import org.skife.config.SimplePropertyConfigSource;
import org.skife.jdbi.v2.DBI;
@@ -24,7 +25,7 @@ import org.skife.jdbi.v2.IDBI;
import com.ning.billing.account.glue.DefaultAccountModule;
import com.ning.billing.beatrix.glue.BeatrixModule;
import com.ning.billing.catalog.glue.CatalogModule;
-import com.ning.billing.entitlement.glue.DefaultEntitlementModule;
+import com.ning.billing.subscription.glue.DefaultSubscriptionModule;
import com.ning.billing.invoice.glue.DefaultInvoiceModule;
import com.ning.billing.jaxrs.resources.AccountResource;
import com.ning.billing.jaxrs.resources.BundleResource;
@@ -129,6 +130,7 @@ public class KillbillServerModule extends AbstractModule {
install(new DefaultAccountModule(configSource));
install(new DefaultInvoiceModule(configSource));
install(new TemplateModule());
+ install(new DefaultSubscriptionModule(configSource));
install(new DefaultEntitlementModule(configSource));
install(new PaymentModule(configSource));
install(new BeatrixModule());
diff --git a/server/src/test/java/com/ning/billing/jaxrs/TestJaxrsBase.java b/server/src/test/java/com/ning/billing/jaxrs/TestJaxrsBase.java
index 7974fa3..d326ec9 100644
--- a/server/src/test/java/com/ning/billing/jaxrs/TestJaxrsBase.java
+++ b/server/src/test/java/com/ning/billing/jaxrs/TestJaxrsBase.java
@@ -26,6 +26,7 @@ import java.util.Map;
import javax.inject.Inject;
import javax.servlet.Servlet;
+import com.ning.billing.entitlement.glue.DefaultEntitlementModule;
import org.eclipse.jetty.servlet.FilterHolder;
import org.joda.time.LocalDate;
import org.skife.config.ConfigSource;
@@ -45,7 +46,7 @@ import com.ning.billing.bus.api.PersistentBus;
import com.ning.billing.catalog.glue.CatalogModule;
import com.ning.billing.dbi.DBTestingHelper;
import com.ning.billing.dbi.MysqlTestingHelper;
-import com.ning.billing.entitlement.glue.DefaultEntitlementModule;
+import com.ning.billing.subscription.glue.DefaultSubscriptionModule;
import com.ning.billing.invoice.api.InvoiceNotifier;
import com.ning.billing.invoice.glue.DefaultInvoiceModule;
import com.ning.billing.invoice.notification.NullInvoiceNotifier;
@@ -208,6 +209,7 @@ public class TestJaxrsBase extends KillbillClient {
install(new DefaultAccountModule(configSource));
install(new InvoiceModuleWithMockSender(configSource));
install(new TemplateModule());
+ install(new DefaultSubscriptionModule(configSource));
install(new DefaultEntitlementModule(configSource));
install(new PaymentMockModule(configSource));
install(new BeatrixModule());
diff --git a/server/src/test/resources/killbill.properties b/server/src/test/resources/killbill.properties
index 5ca83a4..6a30a5c 100644
--- a/server/src/test/resources/killbill.properties
+++ b/server/src/test/resources/killbill.properties
@@ -29,7 +29,6 @@ com.ning.core.server.jetty.logPath=/var/tmp/.logs
killbill.payment.engine.notifications.sleep=100
killbill.invoice.engine.notifications.sleep=100
-killbill.entitlement.engine.notifications.sleep=100
killbill.billing.persistent.bus.sleep=100
killbill.billing.persistent.bus.nbThreads=1
killbill.billing.persistent.bus.claimed=1
subscription/killbill-subscription.iml 74(+74 -0)
diff --git a/subscription/killbill-subscription.iml b/subscription/killbill-subscription.iml
new file mode 100644
index 0000000..eb3843f
--- /dev/null
+++ b/subscription/killbill-subscription.iml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
+ <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_6" inherit-compiler-output="false">
+ <output url="file://$MODULE_DIR$/target/classes" />
+ <output-test url="file://$MODULE_DIR$/target/test-classes" />
+ <content url="file://$MODULE_DIR$">
+ <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/src/main/resources" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
+ <sourceFolder url="file://$MODULE_DIR$/src/test/resources" isTestSource="true" />
+ <excludeFolder url="file://$MODULE_DIR$/target" />
+ </content>
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
+ <orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.findbugs:jsr305:1.3.9" level="project" />
+ <orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:14.0.1" level="project" />
+ <orderEntry type="library" scope="PROVIDED" name="Maven: com.google.inject:guice:3.0" level="project" />
+ <orderEntry type="library" scope="PROVIDED" name="Maven: javax.inject:javax.inject:1" level="project" />
+ <orderEntry type="library" scope="PROVIDED" name="Maven: aopalliance:aopalliance:1.0" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: com.h2database:h2:1.3.158" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: com.jayway.awaitility:awaitility:1.3.3" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-library:1.1" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.1" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: cglib:cglib-nodep:2.2" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: org.objenesis:objenesis:1.2" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
+ <orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
+ <orderEntry type="module" module-name="killbill-catalog" scope="TEST" production-on-test="" />
+ <orderEntry type="library" scope="TEST" name="Maven: com.ning.billing:killbill-catalog:test-jar:tests:0.3.4-SNAPSHOT" level="project" />
+ <orderEntry type="module" module-name="killbill-internal-api" />
+ <orderEntry type="library" name="Maven: com.ning.billing.plugin:killbill-plugin-api-payment:0.2.5" level="project" />
+ <orderEntry type="library" name="Maven: org.skife.config:config-magic:0.14" level="project" />
+ <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.5" level="project" />
+ <orderEntry type="module" module-name="killbill-util" />
+ <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.1.0" level="project" />
+ <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.1.0" level="project" />
+ <orderEntry type="library" name="Maven: com.fasterxml.jackson.dataformat:jackson-dataformat-csv:2.1.0" level="project" />
+ <orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-joda:2.0.1" level="project" />
+ <orderEntry type="library" name="Maven: com.jolbox:bonecp:0.7.1.RELEASE" level="project" />
+ <orderEntry type="library" name="Maven: com.mchange:c3p0:0.9.2" level="project" />
+ <orderEntry type="library" name="Maven: com.mchange:mchange-commons-java:0.2.3.3" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing.commons:killbill-clock:0.1.7" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing.commons:killbill-queue:0.1.7" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing.commons:killbill-jdbi:0.1.7" level="project" />
+ <orderEntry type="library" name="Maven: org.jdbi:jdbi:2.39.1" level="project" />
+ <orderEntry type="library" name="Maven: com.yammer.metrics:metrics-core:2.1.2" level="project" />
+ <orderEntry type="library" name="Maven: org.weakref:jmxutils:1.12" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing.plugin:killbill-plugin-api-notification:0.2.5" level="project" />
+ <orderEntry type="library" name="Maven: com.samskivert:jmustache:1.5" level="project" />
+ <orderEntry type="library" name="Maven: net.sf.ehcache:ehcache-core:2.6.2" level="project" />
+ <orderEntry type="library" scope="RUNTIME" name="Maven: org.antlr:stringtemplate:3.2.1" level="project" />
+ <orderEntry type="library" scope="RUNTIME" name="Maven: antlr:antlr:2.7.7" level="project" />
+ <orderEntry type="library" name="Maven: org.apache.commons:commons-email:1.2" level="project" />
+ <orderEntry type="library" name="Maven: javax.mail:mail:1.4.1" level="project" />
+ <orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" />
+ <orderEntry type="module" module-name="killbill-catalog" scope="TEST" />
+ <orderEntry type="module" module-name="killbill-util" scope="TEST" production-on-test="" />
+ <orderEntry type="library" scope="TEST" name="Maven: com.ning.billing:killbill-util:test-jar:tests:0.3.4-SNAPSHOT" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: com.ning.billing.commons:killbill-clock:test-jar:tests:0.1.7" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: com.ning.billing.commons:killbill-queue:test-jar:tests:0.1.7" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: mysql:mysql-connector-mxj:5.0.12" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: mysql:mysql-connector-mxj-db-files:5.0.12" level="project" />
+ <orderEntry type="library" scope="RUNTIME" name="Maven: mysql:mysql-connector-java:5.1.22" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: org.mockito:mockito-all:1.9.0" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: org.slf4j:slf4j-simple:1.7.5" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: org.testng:testng:6.3.1" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: junit:junit:3.8.1" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: org.beanshell:bsh:2.0b4" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: com.beust:jcommander:1.12" level="project" />
+ <orderEntry type="library" scope="TEST" name="Maven: org.yaml:snakeyaml:1.6" level="project" />
+ </component>
+</module>
+
subscription/pom.xml 158(+158 -0)
diff --git a/subscription/pom.xml b/subscription/pom.xml
new file mode 100644
index 0000000..1758cc5
--- /dev/null
+++ b/subscription/pom.xml
@@ -0,0 +1,158 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Copyright 2010-2013 Ning, Inc.
+ ~
+ ~ Ning licenses this file to you under the Apache License, version 2.0
+ ~ (the "License"); you may not use this file except in compliance with the
+ ~ License. You may obtain a copy of the License at:
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ ~ WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ ~ License for the specific language governing permissions and limitations
+ ~ under the License.
+ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>killbill</artifactId>
+ <groupId>com.ning.billing</groupId>
+ <version>0.3.4-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+ <artifactId>killbill-subscription</artifactId>
+ <packaging>jar</packaging>
+ <name>killbill-subscription</name>
+ <dependencies>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-annotations</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.google.code.findbugs</groupId>
+ <artifactId>jsr305</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.google.inject</groupId>
+ <artifactId>guice</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.h2database</groupId>
+ <artifactId>h2</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.jayway.awaitility</groupId>
+ <artifactId>awaitility</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing</groupId>
+ <artifactId>killbill-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing</groupId>
+ <artifactId>killbill-catalog</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing</groupId>
+ <artifactId>killbill-catalog</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing</groupId>
+ <artifactId>killbill-internal-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing</groupId>
+ <artifactId>killbill-util</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing</groupId>
+ <artifactId>killbill-util</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing.commons</groupId>
+ <artifactId>killbill-clock</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing.commons</groupId>
+ <artifactId>killbill-clock</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing.commons</groupId>
+ <artifactId>killbill-queue</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.ning.billing.commons</groupId>
+ <artifactId>killbill-queue</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.inject</groupId>
+ <artifactId>javax.inject</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>joda-time</groupId>
+ <artifactId>joda-time</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-mxj</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-mxj-db-files</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.antlr</groupId>
+ <artifactId>stringtemplate</artifactId>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jdbi</groupId>
+ <artifactId>jdbi</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.skife.config</groupId>
+ <artifactId>config-magic</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-simple</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/subscription/src/main/java/com/ning/billing/subscription/glue/DefaultSubscriptionModule.java b/subscription/src/main/java/com/ning/billing/subscription/glue/DefaultSubscriptionModule.java
new file mode 100644
index 0000000..693ba36
--- /dev/null
+++ b/subscription/src/main/java/com/ning/billing/subscription/glue/DefaultSubscriptionModule.java
@@ -0,0 +1,128 @@
+/*
+ * Copyright 2010-2013 Ning, Inc.
+ *
+ * Ning licenses this file to you under the Apache License, version 2.0
+ * (the "License"); you may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at:
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+package com.ning.billing.subscription.glue;
+
+import org.skife.config.ConfigSource;
+import org.skife.config.ConfigurationObjectFactory;
+
+import com.ning.billing.glue.SubscriptionModule;
+import com.ning.billing.subscription.alignment.MigrationPlanAligner;
+import com.ning.billing.subscription.alignment.PlanAligner;
+import com.ning.billing.subscription.api.SubscriptionApiService;
+import com.ning.billing.subscription.api.SubscriptionService;
+import com.ning.billing.subscription.api.migration.DefaultSubscriptionMigrationApi;
+import com.ning.billing.subscription.api.migration.SubscriptionMigrationApi;
+import com.ning.billing.subscription.api.svcs.DefaultSubscriptionInternalApi;
+import com.ning.billing.subscription.api.timeline.DefaultSubscriptionTimelineApi;
+import com.ning.billing.subscription.api.timeline.RepairSubscriptionLifecycleDao;
+import com.ning.billing.subscription.api.timeline.RepairSubscriptionApiService;
+import com.ning.billing.subscription.api.transfer.DefaultSubscriptionTransferApi;
+import com.ning.billing.subscription.api.user.DefaultSubscriptionUserApi;
+import com.ning.billing.subscription.api.user.DefaultSubscriptionApiService;
+import com.ning.billing.subscription.engine.addon.AddonUtils;
+import com.ning.billing.subscription.engine.core.DefaultSubscriptionService;
+import com.ning.billing.subscription.engine.dao.DefaultSubscriptionDao;
+import com.ning.billing.subscription.engine.dao.SubscriptionDao;
+import com.ning.billing.subscription.engine.dao.RepairSubscriptionDao;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimelineApi;
+import com.ning.billing.subscription.api.transfer.SubscriptionTransferApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.util.config.SubscriptionConfig;
+import com.ning.billing.util.glue.RealImplementation;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
+
+import com.google.inject.AbstractModule;
+import com.google.inject.name.Names;
+
+public class DefaultSubscriptionModule extends AbstractModule implements SubscriptionModule {
+
+ public static final String REPAIR_NAMED = "repair";
+
+ protected final ConfigSource configSource;
+
+ public DefaultSubscriptionModule(final ConfigSource configSource) {
+ this.configSource = configSource;
+ }
+
+ protected void installConfig() {
+ final SubscriptionConfig config = new ConfigurationObjectFactory(configSource).build(SubscriptionConfig.class);
+ bind(SubscriptionConfig.class).toInstance(config);
+ }
+
+ protected void installSubscriptionDao() {
+ bind(SubscriptionDao.class).to(DefaultSubscriptionDao.class).asEagerSingleton();
+ bind(SubscriptionDao.class).annotatedWith(Names.named(REPAIR_NAMED)).to(RepairSubscriptionDao.class);
+ bind(RepairSubscriptionLifecycleDao.class).annotatedWith(Names.named(REPAIR_NAMED)).to(RepairSubscriptionDao.class);
+ bind(RepairSubscriptionDao.class).asEagerSingleton();
+ }
+
+ protected void installSubscriptionCore() {
+
+ bind(SubscriptionApiService.class).annotatedWith(Names.named(REPAIR_NAMED)).to(RepairSubscriptionApiService.class).asEagerSingleton();
+ bind(SubscriptionApiService.class).to(DefaultSubscriptionApiService.class).asEagerSingleton();
+
+ bind(DefaultSubscriptionService.class).asEagerSingleton();
+ bind(PlanAligner.class).asEagerSingleton();
+ bind(AddonUtils.class).asEagerSingleton();
+ bind(MigrationPlanAligner.class).asEagerSingleton();
+
+ installSubscriptionService();
+ installSubscriptionTimelineApi();
+ installSubscriptionMigrationApi();
+ installSubscriptionInternalApi();
+ installSubscriptionUserApi();
+ installSubscriptionTransferApi();
+ }
+
+ @Override
+ protected void configure() {
+ installConfig();
+ installSubscriptionDao();
+ installSubscriptionCore();
+ }
+
+ @Override
+ public void installSubscriptionService() {
+ bind(SubscriptionService.class).to(DefaultSubscriptionService.class).asEagerSingleton();
+ }
+
+ @Override
+ public void installSubscriptionTimelineApi() {
+ bind(SubscriptionTimelineApi.class).to(DefaultSubscriptionTimelineApi.class).asEagerSingleton();
+ }
+
+ @Override
+ public void installSubscriptionMigrationApi() {
+ bind(SubscriptionMigrationApi.class).to(DefaultSubscriptionMigrationApi.class).asEagerSingleton();
+ }
+
+
+ @Override
+ public void installSubscriptionInternalApi() {
+ bind(SubscriptionInternalApi.class).to(DefaultSubscriptionInternalApi.class).asEagerSingleton();
+ }
+
+ @Override
+ public void installSubscriptionUserApi() {
+ bind(SubscriptionUserApi.class).annotatedWith(RealImplementation.class).to(DefaultSubscriptionUserApi.class).asEagerSingleton();
+ }
+
+ @Override
+ public void installSubscriptionTransferApi() {
+ bind(SubscriptionTransferApi.class).to(DefaultSubscriptionTransferApi.class).asEagerSingleton();
+ }
+}
diff --git a/subscription/src/main/resources/com/ning/billing/subscription/ddl.sql b/subscription/src/main/resources/com/ning/billing/subscription/ddl.sql
new file mode 100644
index 0000000..0e4c617
--- /dev/null
+++ b/subscription/src/main/resources/com/ning/billing/subscription/ddl.sql
@@ -0,0 +1,72 @@
+/*! SET storage_engine=INNODB */;
+
+DROP TABLE IF EXISTS subscription_events;
+CREATE TABLE subscription_events (
+ record_id int(11) unsigned NOT NULL AUTO_INCREMENT,
+ id char(36) NOT NULL,
+ event_type varchar(9) NOT NULL,
+ user_type varchar(25) DEFAULT NULL,
+ requested_date datetime NOT NULL,
+ effective_date datetime NOT NULL,
+ subscription_id char(36) NOT NULL,
+ plan_name varchar(64) DEFAULT NULL,
+ phase_name varchar(128) DEFAULT NULL,
+ price_list_name varchar(64) DEFAULT NULL,
+ current_version int(11) DEFAULT 1,
+ is_active bool DEFAULT 1,
+ created_by varchar(50) NOT NULL,
+ created_date datetime NOT NULL,
+ updated_by varchar(50) NOT NULL,
+ updated_date datetime NOT NULL,
+ account_record_id int(11) unsigned default null,
+ tenant_record_id int(11) unsigned default null,
+ PRIMARY KEY(record_id)
+);
+CREATE UNIQUE INDEX subscription_events_id ON subscription_events(id);
+CREATE INDEX idx_ent_1 ON subscription_events(subscription_id, is_active, effective_date);
+CREATE INDEX idx_ent_2 ON subscription_events(subscription_id, effective_date, created_date, requested_date,id);
+CREATE INDEX subscription_events_tenant_account_record_id ON subscription_events(tenant_record_id, account_record_id);
+
+DROP TABLE IF EXISTS subscriptions;
+CREATE TABLE subscriptions (
+ record_id int(11) unsigned NOT NULL AUTO_INCREMENT,
+ id char(36) NOT NULL,
+ bundle_id char(36) NOT NULL,
+ category varchar(32) NOT NULL,
+ start_date datetime NOT NULL,
+ bundle_start_date datetime NOT NULL,
+ active_version int(11) DEFAULT 1,
+ charged_through_date datetime DEFAULT NULL,
+ paid_through_date datetime DEFAULT NULL,
+ created_by varchar(50) NOT NULL,
+ created_date datetime NOT NULL,
+ updated_by varchar(50) NOT NULL,
+ updated_date datetime NOT NULL,
+ account_record_id int(11) unsigned default null,
+ tenant_record_id int(11) unsigned default null,
+ PRIMARY KEY(record_id)
+);
+CREATE UNIQUE INDEX subscriptions_id ON subscriptions(id);
+CREATE INDEX subscriptions_bundle_id ON subscriptions(bundle_id);
+CREATE INDEX subscriptions_tenant_account_record_id ON subscriptions(tenant_record_id, account_record_id);
+
+DROP TABLE IF EXISTS bundles;
+CREATE TABLE bundles (
+ record_id int(11) unsigned NOT NULL AUTO_INCREMENT,
+ id char(36) NOT NULL,
+ external_key varchar(64) NOT NULL,
+ account_id char(36) NOT NULL,
+ last_sys_update_date datetime,
+ created_by varchar(50) NOT NULL,
+ created_date datetime NOT NULL,
+ updated_by varchar(50) NOT NULL,
+ updated_date datetime NOT NULL,
+ account_record_id int(11) unsigned default null,
+ tenant_record_id int(11) unsigned default null,
+ PRIMARY KEY(record_id)
+);
+CREATE UNIQUE INDEX bundles_id ON bundles(id);
+CREATE INDEX bundles_key ON bundles(external_key);
+CREATE INDEX bundles_account ON bundles(account_id);
+CREATE INDEX bundles_tenant_account_record_id ON bundles(tenant_record_id, account_record_id);
+
diff --git a/subscription/src/test/java/com/ning/billing/subscription/SubscriptionTestSuiteNoDB.java b/subscription/src/test/java/com/ning/billing/subscription/SubscriptionTestSuiteNoDB.java
new file mode 100644
index 0000000..1ff6d14
--- /dev/null
+++ b/subscription/src/test/java/com/ning/billing/subscription/SubscriptionTestSuiteNoDB.java
@@ -0,0 +1,143 @@
+/*
+ * Copyright 2010-2013 Ning, Inc.
+ *
+ * Ning licenses this file to you under the Apache License, version 2.0
+ * (the "License"); you may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at:
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+package com.ning.billing.subscription;
+
+import java.net.URL;
+
+import javax.inject.Inject;
+
+import org.mockito.Mockito;
+import org.skife.jdbi.v2.IDBI;
+import org.skife.jdbi.v2.tweak.HandleCallback;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.testng.Assert;
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.BeforeMethod;
+
+import com.ning.billing.GuicyKillbillTestSuiteNoDB;
+import com.ning.billing.account.api.AccountData;
+import com.ning.billing.api.TestApiListener;
+import com.ning.billing.api.TestListenerStatus;
+import com.ning.billing.catalog.api.Catalog;
+import com.ning.billing.catalog.api.CatalogService;
+import com.ning.billing.clock.ClockMock;
+import com.ning.billing.subscription.api.SubscriptionService;
+import com.ning.billing.subscription.api.migration.SubscriptionMigrationApi;
+import com.ning.billing.subscription.api.user.TestSubscriptionHelper;
+import com.ning.billing.subscription.engine.dao.MockSubscriptionDaoMemory;
+import com.ning.billing.subscription.engine.dao.SubscriptionDao;
+import com.ning.billing.subscription.glue.TestDefaultSubscriptionModuleNoDB;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimelineApi;
+import com.ning.billing.subscription.api.transfer.SubscriptionTransferApi;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.util.config.SubscriptionConfig;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
+import com.ning.billing.util.svcsapi.bus.BusService;
+
+import com.google.inject.Guice;
+import com.google.inject.Injector;
+import com.google.inject.Stage;
+
+public class SubscriptionTestSuiteNoDB extends GuicyKillbillTestSuiteNoDB {
+
+ protected static final Logger log = LoggerFactory.getLogger(SubscriptionTestSuiteNoDB.class);
+
+ @Inject
+ protected SubscriptionService subscriptionService;
+ @Inject
+ protected SubscriptionUserApi subscriptionApi;
+ @Inject
+ protected SubscriptionInternalApi subscriptionInternalApi;
+ @Inject
+ protected SubscriptionTransferApi transferApi;
+
+ @Inject
+ protected SubscriptionMigrationApi migrationApi;
+ @Inject
+ protected SubscriptionTimelineApi repairApi;
+
+ @Inject
+ protected CatalogService catalogService;
+ @Inject
+ protected SubscriptionConfig config;
+ @Inject
+ protected SubscriptionDao dao;
+ @Inject
+ protected ClockMock clock;
+ @Inject
+ protected BusService busService;
+
+ @Inject
+ protected IDBI idbi;
+
+ @Inject
+ protected TestSubscriptionHelper testUtil;
+ @Inject
+ protected TestApiListener testListener;
+ @Inject
+ protected TestListenerStatus testListenerStatus;
+
+ @Inject
+ protected SubscriptionTestInitializer subscriptionTestInitializer;
+
+ protected Catalog catalog;
+ protected AccountData accountData;
+ protected SubscriptionBundle bundle;
+
+ private void loadSystemPropertiesFromClasspath(final String resource) {
+ final URL url = DefaultSubscriptionTestInitializer.class.getResource(resource);
+ Assert.assertNotNull(url);
+
+ configSource.merge(url);
+ }
+
+ @BeforeClass(groups = "fast")
+ public void beforeClass() throws Exception {
+ loadSystemPropertiesFromClasspath("/subscription.properties");
+
+ final Injector g = Guice.createInjector(Stage.PRODUCTION, new TestDefaultSubscriptionModuleNoDB(configSource));
+ g.injectMembers(this);
+
+ // For TestApiListener#isCompleted
+ Mockito.doReturn(0L).when(idbi).withHandle(Mockito.<HandleCallback<Long>>any());
+ }
+
+ @BeforeMethod(groups = "fast")
+ public void beforeMethod() throws Exception {
+
+ // CLEANUP ALL DB TABLES OR IN MEMORY STRUCTURES
+ ((MockSubscriptionDaoMemory) dao).reset();
+
+ subscriptionTestInitializer.startTestFamework(testListener, testListenerStatus, clock, busService, subscriptionService);
+
+ this.catalog = subscriptionTestInitializer.initCatalog(catalogService);
+ this.accountData = subscriptionTestInitializer.initAccountData();
+ this.bundle = subscriptionTestInitializer.initBundle(subscriptionApi, callContext);
+ }
+
+ @AfterMethod(groups = "fast")
+ public void afterMethod() throws Exception {
+ subscriptionTestInitializer.stopTestFramework(testListener, busService, subscriptionService);
+ }
+
+ protected void assertListenerStatus() {
+ ((SubscriptionTestListenerStatus) testListenerStatus).assertListenerStatus();
+ }
+}
diff --git a/subscription/src/test/java/com/ning/billing/subscription/SubscriptionTestSuiteWithEmbeddedDB.java b/subscription/src/test/java/com/ning/billing/subscription/SubscriptionTestSuiteWithEmbeddedDB.java
new file mode 100644
index 0000000..71a146a
--- /dev/null
+++ b/subscription/src/test/java/com/ning/billing/subscription/SubscriptionTestSuiteWithEmbeddedDB.java
@@ -0,0 +1,130 @@
+/*
+ * Copyright 2010-2013 Ning, Inc.
+ *
+ * Ning licenses this file to you under the Apache License, version 2.0
+ * (the "License"); you may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at:
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+package com.ning.billing.subscription;
+
+import java.net.URL;
+
+import javax.inject.Inject;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.testng.Assert;
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.BeforeMethod;
+
+import com.ning.billing.GuicyKillbillTestSuiteWithEmbeddedDB;
+import com.ning.billing.account.api.AccountData;
+import com.ning.billing.api.TestApiListener;
+import com.ning.billing.api.TestListenerStatus;
+import com.ning.billing.catalog.api.Catalog;
+import com.ning.billing.catalog.api.CatalogService;
+import com.ning.billing.clock.ClockMock;
+import com.ning.billing.subscription.api.SubscriptionService;
+import com.ning.billing.subscription.api.migration.SubscriptionMigrationApi;
+import com.ning.billing.subscription.api.user.TestSubscriptionHelper;
+import com.ning.billing.subscription.engine.dao.SubscriptionDao;
+import com.ning.billing.subscription.glue.TestDefaultSubscriptionModuleWithEmbeddedDB;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimelineApi;
+import com.ning.billing.subscription.api.transfer.SubscriptionTransferApi;
+import com.ning.billing.subscription.api.user.SubscriptionBundle;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.util.config.SubscriptionConfig;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
+import com.ning.billing.util.svcsapi.bus.BusService;
+
+import com.google.inject.Guice;
+import com.google.inject.Injector;
+import com.google.inject.Stage;
+
+public class SubscriptionTestSuiteWithEmbeddedDB extends GuicyKillbillTestSuiteWithEmbeddedDB {
+
+ protected static final Logger log = LoggerFactory.getLogger(SubscriptionTestSuiteWithEmbeddedDB.class);
+
+ @Inject
+ protected SubscriptionService subscriptionService;
+ @Inject
+ protected SubscriptionUserApi subscriptionApi;
+ @Inject
+ protected SubscriptionInternalApi subscriptionInternalApi;
+ @Inject
+ protected SubscriptionTransferApi transferApi;
+
+ @Inject
+ protected SubscriptionMigrationApi migrationApi;
+ @Inject
+ protected SubscriptionTimelineApi repairApi;
+
+ @Inject
+ protected CatalogService catalogService;
+ @Inject
+ protected SubscriptionConfig config;
+ @Inject
+ protected SubscriptionDao dao;
+ @Inject
+ protected ClockMock clock;
+ @Inject
+ protected BusService busService;
+
+ @Inject
+ protected TestSubscriptionHelper testUtil;
+ @Inject
+ protected TestApiListener testListener;
+ @Inject
+ protected TestListenerStatus testListenerStatus;
+ @Inject
+ protected SubscriptionTestInitializer subscriptionTestInitializer;
+
+ protected Catalog catalog;
+ protected AccountData accountData;
+ protected SubscriptionBundle bundle;
+
+ private void loadSystemPropertiesFromClasspath(final String resource) {
+ final URL url = DefaultSubscriptionTestInitializer.class.getResource(resource);
+ Assert.assertNotNull(url);
+
+ configSource.merge(url);
+ }
+
+ @BeforeClass(groups = "slow")
+ public void beforeClass() throws Exception {
+ loadSystemPropertiesFromClasspath("/subscription.properties");
+
+ final Injector g = Guice.createInjector(Stage.PRODUCTION, new TestDefaultSubscriptionModuleWithEmbeddedDB(configSource));
+ g.injectMembers(this);
+ }
+
+ @Override
+ @BeforeMethod(groups = "slow")
+ public void beforeMethod() throws Exception {
+ super.beforeMethod();
+ subscriptionTestInitializer.startTestFamework(testListener, testListenerStatus, clock, busService, subscriptionService);
+
+ this.catalog = subscriptionTestInitializer.initCatalog(catalogService);
+ this.accountData = subscriptionTestInitializer.initAccountData();
+ this.bundle = subscriptionTestInitializer.initBundle(subscriptionApi, callContext);
+ }
+
+ @AfterMethod(groups = "slow")
+ public void afterMethod() throws Exception {
+ subscriptionTestInitializer.stopTestFramework(testListener, busService, subscriptionService);
+ }
+
+ protected void assertListenerStatus() {
+ ((SubscriptionTestListenerStatus) testListenerStatus).assertListenerStatus();
+ }
+}
tenant/killbill-tenant.iml 3(+2 -1)
diff --git a/tenant/killbill-tenant.iml b/tenant/killbill-tenant.iml
index 1489ba4..29ba03f 100644
--- a/tenant/killbill-tenant.iml
+++ b/tenant/killbill-tenant.iml
@@ -11,13 +11,14 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.findbugs:jsr305:1.3.9" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:14.0.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.inject:guice:3.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.inject:javax.inject:1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: aopalliance:aopalliance:1.0" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: com.h2database:h2:1.3.158" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-internal-api" />
usage/killbill-usage.iml 3(+2 -1)
diff --git a/usage/killbill-usage.iml b/usage/killbill-usage.iml
index f74d278..7a1d8a7 100644
--- a/usage/killbill-usage.iml
+++ b/usage/killbill-usage.iml
@@ -11,12 +11,13 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:14.0.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.inject:guice:3.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.inject:javax.inject:1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: aopalliance:aopalliance:1.0" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: com.h2database:h2:1.3.158" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.0" level="project" />
<orderEntry type="module" module-name="killbill-internal-api" />
util/killbill-util.iml 3(+2 -1)
diff --git a/util/killbill-util.iml b/util/killbill-util.iml
index 4608bda..8a9ad6c 100644
--- a/util/killbill-util.iml
+++ b/util/killbill-util.iml
@@ -12,6 +12,7 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.1.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.1.0" level="project" />
@@ -34,7 +35,7 @@
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.5" level="project" />
<orderEntry type="library" name="Maven: com.mchange:c3p0:0.9.2" level="project" />
<orderEntry type="library" name="Maven: com.mchange:mchange-commons-java:0.2.3.3" level="project" />
- <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.1" level="project" />
+ <orderEntry type="library" name="Maven: com.ning.billing:killbill-api:0.3.2" level="project" />
<orderEntry type="module" module-name="killbill-internal-api" />
<orderEntry type="library" name="Maven: com.ning.billing.plugin:killbill-plugin-api-payment:0.2.5" level="project" />
<orderEntry type="library" name="Maven: org.skife.config:config-magic:0.14" level="project" />
diff --git a/util/src/main/java/com/ning/billing/util/audit/api/DefaultAuditUserApi.java b/util/src/main/java/com/ning/billing/util/audit/api/DefaultAuditUserApi.java
index 3cb03c2..6476537 100644
--- a/util/src/main/java/com/ning/billing/util/audit/api/DefaultAuditUserApi.java
+++ b/util/src/main/java/com/ning/billing/util/audit/api/DefaultAuditUserApi.java
@@ -25,11 +25,11 @@ import javax.inject.Inject;
import com.ning.billing.ObjectType;
import com.ning.billing.account.api.AccountApiException;
-import com.ning.billing.entitlement.api.timeline.BundleTimeline;
-import com.ning.billing.entitlement.api.timeline.EntitlementRepairException;
-import com.ning.billing.entitlement.api.timeline.EntitlementTimelineApi;
-import com.ning.billing.entitlement.api.timeline.SubscriptionTimeline;
-import com.ning.billing.entitlement.api.timeline.SubscriptionTimeline.ExistingEvent;
+import com.ning.billing.subscription.api.timeline.BundleTimeline;
+import com.ning.billing.subscription.api.timeline.SubscriptionRepairException;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimelineApi;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimeline;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimeline.ExistingEvent;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItem;
import com.ning.billing.invoice.api.InvoicePayment;
@@ -59,11 +59,11 @@ import com.google.common.collect.ImmutableList;
public class DefaultAuditUserApi implements AuditUserApi {
private final AuditDao auditDao;
- private final EntitlementTimelineApi timelineApi;
+ private final SubscriptionTimelineApi timelineApi;
private final InternalCallContextFactory internalCallContextFactory;
@Inject
- public DefaultAuditUserApi(final AuditDao auditDao, final EntitlementTimelineApi timelineApi, final InternalCallContextFactory internalCallContextFactory) {
+ public DefaultAuditUserApi(final AuditDao auditDao, final SubscriptionTimelineApi timelineApi, final InternalCallContextFactory internalCallContextFactory) {
this.auditDao = auditDao;
this.timelineApi = timelineApi;
this.internalCallContextFactory = internalCallContextFactory;
@@ -75,7 +75,7 @@ public class DefaultAuditUserApi implements AuditUserApi {
}
@Override
- public AuditLogsForBundles getAuditLogsForBundle(final UUID bundleId, final AuditLevel auditLevel, final TenantContext context) throws EntitlementRepairException {
+ public AuditLogsForBundles getAuditLogsForBundle(final UUID bundleId, final AuditLevel auditLevel, final TenantContext context) throws SubscriptionRepairException {
return getAuditLogsForBundles(ImmutableList.<BundleTimeline>of(timelineApi.getBundleTimeline(bundleId, context)), auditLevel, context);
}
diff --git a/util/src/main/java/com/ning/billing/util/config/OSGIConfig.java b/util/src/main/java/com/ning/billing/util/config/OSGIConfig.java
index e436bc1..b905d38 100644
--- a/util/src/main/java/com/ning/billing/util/config/OSGIConfig.java
+++ b/util/src/main/java/com/ning/billing/util/config/OSGIConfig.java
@@ -48,13 +48,13 @@ public interface OSGIConfig extends KillbillConfig {
"com.ning.billing.analytics.api.user," +
"com.ning.billing.beatrix.bus.api," + /* TODO PIERRE Remove it after plugins classes have been regenerated */
"com.ning.billing.catalog.api," +
- "com.ning.billing.entitlement.api," +
- "com.ning.billing.entitlement.api.migration," +
- "com.ning.billing.entitlement.api.timeline," +
- "com.ning.billing.entitlement.api.transfer," +
- "com.ning.billing.entitlement.api.user," +
+ "com.ning.billing.subscription.api," +
+ "com.ning.billing.subscription.api.migration," +
+ "com.ning.billing.subscription.api.timeline," +
+ "com.ning.billing.subscription.api.transfer," +
+ "com.ning.billing.subscription.api.user," +
"com.ning.billing.invoice.api," +
- "com.ning.billing.junction.api," +
+ "com.ning.billing.entitlement.api," +
"com.ning.billing," +
"com.ning.billing.notification.api," +
"com.ning.billing.notification.plugin.api," +
diff --git a/util/src/main/java/com/ning/billing/util/events/OverdueChangeInternalEvent.java b/util/src/main/java/com/ning/billing/util/events/OverdueChangeInternalEvent.java
index 7dde211..7c6f9ae 100644
--- a/util/src/main/java/com/ning/billing/util/events/OverdueChangeInternalEvent.java
+++ b/util/src/main/java/com/ning/billing/util/events/OverdueChangeInternalEvent.java
@@ -18,7 +18,7 @@ package com.ning.billing.util.events;
import java.util.UUID;
-import com.ning.billing.junction.api.Type;
+import com.ning.billing.entitlement.api.Type;
public interface OverdueChangeInternalEvent extends BusInternalEvent {
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 c14ea70..99996c8 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
@@ -20,8 +20,8 @@ import java.util.UUID;
import org.joda.time.DateTime;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.user.SubscriptionState;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.user.SubscriptionState;
public interface SubscriptionInternalEvent extends BusInternalEvent {
UUID getId();
diff --git a/util/src/main/java/com/ning/billing/util/svcapi/junction/BillingEvent.java b/util/src/main/java/com/ning/billing/util/svcapi/junction/BillingEvent.java
index 9b69fa2..425d051 100644
--- a/util/src/main/java/com/ning/billing/util/svcapi/junction/BillingEvent.java
+++ b/util/src/main/java/com/ning/billing/util/svcapi/junction/BillingEvent.java
@@ -26,8 +26,8 @@ import com.ning.billing.catalog.api.BillingPeriod;
import com.ning.billing.catalog.api.Currency;
import com.ning.billing.catalog.api.Plan;
import com.ning.billing.catalog.api.PlanPhase;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.user.Subscription;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.user.Subscription;
public interface BillingEvent extends Comparable<BillingEvent> {
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 41e3709..4baae14 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
@@ -19,8 +19,8 @@ package com.ning.billing.util.svcapi.junction;
import java.util.List;
import java.util.UUID;
-import com.ning.billing.junction.api.Blockable;
-import com.ning.billing.junction.api.BlockingState;
+import com.ning.billing.entitlement.api.Blockable;
+import com.ning.billing.entitlement.api.BlockingState;
import com.ning.billing.util.callcontext.InternalCallContext;
import com.ning.billing.util.callcontext.InternalTenantContext;
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 5ceec9a..9a6a8bf 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,8 +20,8 @@ import java.util.UUID;
import org.joda.time.DateTime;
-import com.ning.billing.junction.api.BlockingState;
-import com.ning.billing.junction.api.Type;
+import com.ning.billing.entitlement.api.BlockingState;
+import com.ning.billing.entitlement.api.Type;
import com.ning.billing.util.entity.EntityBase;
diff --git a/util/src/main/java/com/ning/billing/util/userrequest/CompletionUserRequestBase.java b/util/src/main/java/com/ning/billing/util/userrequest/CompletionUserRequestBase.java
index 9ba614f..83bea53 100644
--- a/util/src/main/java/com/ning/billing/util/userrequest/CompletionUserRequestBase.java
+++ b/util/src/main/java/com/ning/billing/util/userrequest/CompletionUserRequestBase.java
@@ -106,7 +106,7 @@ public class CompletionUserRequestBase implements CompletionUserRequest {
break;
case SUBSCRIPTION_TRANSITION:
// We only dispatch the event for the effective date and not the requested date since we have both
- // for entitlement events.
+ // for subscription events.
if (curEvent instanceof EffectiveSubscriptionInternalEvent) {
onSubscriptionTransition((EffectiveSubscriptionInternalEvent) curEvent);
}
diff --git a/util/src/test/java/com/ning/billing/api/TestApiListener.java b/util/src/test/java/com/ning/billing/api/TestApiListener.java
index b2319ba..3643d94 100644
--- a/util/src/test/java/com/ning/billing/api/TestApiListener.java
+++ b/util/src/test/java/com/ning/billing/api/TestApiListener.java
@@ -30,7 +30,7 @@ import com.ning.billing.util.events.InvoiceCreationInternalEvent;
import com.ning.billing.util.events.PaymentErrorInternalEvent;
import com.ning.billing.util.events.PaymentInfoInternalEvent;
import com.ning.billing.util.events.PaymentPluginErrorInternalEvent;
-import com.ning.billing.util.events.RepairEntitlementInternalEvent;
+import com.ning.billing.util.events.RepairSubscriptionInternalEvent;
import com.ning.billing.util.events.TagDefinitionInternalEvent;
import com.ning.billing.util.events.TagInternalEvent;
import org.joda.time.DateTime;
@@ -98,14 +98,14 @@ public class TestApiListener {
}
@Subscribe
- public void handleRepairEntitlementEvents(final RepairEntitlementInternalEvent event) {
- log.info(String.format("Got RepairEntitlementEvent event %s", event.toString()));
+ public void handleRepairSubscriptionEvents(final RepairSubscriptionInternalEvent event) {
+ log.info(String.format("Got RepairSubscriptionEvent event %s", event.toString()));
assertEqualsNicely(NextEvent.REPAIR_BUNDLE);
notifyIfStackEmpty();
}
@Subscribe
- public void handleEntitlementEvents(final EffectiveSubscriptionInternalEvent eventEffective) {
+ public void handleSubscriptionEvents(final EffectiveSubscriptionInternalEvent eventEffective) {
log.info(String.format("Got subscription event %s", eventEffective.toString()));
switch (eventEffective.getTransitionType()) {
diff --git a/util/src/test/java/com/ning/billing/dbi/DBTestingHelper.java b/util/src/test/java/com/ning/billing/dbi/DBTestingHelper.java
index a2241c5..a887961 100644
--- a/util/src/test/java/com/ning/billing/dbi/DBTestingHelper.java
+++ b/util/src/test/java/com/ning/billing/dbi/DBTestingHelper.java
@@ -96,7 +96,7 @@ public abstract class DBTestingHelper {
initDb("drop table if exists subscriptions; create table subscriptions(record_id int(11) unsigned not null auto_increment, id char(36) not null, " +
"account_record_id int(11) unsigned not null, tenant_record_id int(11) unsigned default 0, primary key(record_id));");
- for (final String pack : new String[]{"account", "analytics", "beatrix", "entitlement", "util", "payment", "invoice", "junction", "usage", "meter", "tenant"}) {
+ for (final String pack : new String[]{"account", "analytics", "beatrix", "subscription", "util", "payment", "invoice", "entitlement", "usage", "meter", "tenant"}) {
for (final String ddlFile : new String[]{"ddl.sql", "ddl_test.sql"}) {
final String ddl;
try {
diff --git a/util/src/test/java/com/ning/billing/mock/glue/MockEntitlementModule.java b/util/src/test/java/com/ning/billing/mock/glue/MockEntitlementModule.java
index c9c3527..111a0ea 100644
--- a/util/src/test/java/com/ning/billing/mock/glue/MockEntitlementModule.java
+++ b/util/src/test/java/com/ning/billing/mock/glue/MockEntitlementModule.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2010-2012 Ning, Inc.
+ * Copyright 2010-2013 Ning, Inc.
*
* Ning licenses this file to you under the Apache License, version 2.0
* (the "License"); you may not use this file except in compliance with the
* License. You may obtain a copy of the License at:
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
@@ -16,57 +16,56 @@
package com.ning.billing.mock.glue;
+import com.google.inject.AbstractModule;
+import com.ning.billing.account.api.AccountUserApi;
+import com.ning.billing.glue.EntitlementModule;
+import com.ning.billing.entitlement.api.EntitlementApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
import org.mockito.Mockito;
-import com.ning.billing.entitlement.api.EntitlementService;
-import com.ning.billing.entitlement.api.migration.EntitlementMigrationApi;
-import com.ning.billing.entitlement.api.timeline.EntitlementTimelineApi;
-import com.ning.billing.entitlement.api.transfer.EntitlementTransferApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
-import com.ning.billing.glue.EntitlementModule;
-import com.ning.billing.util.glue.RealImplementation;
-import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
+public class MockEntitlementModule extends AbstractModule implements EntitlementModule {
-import com.google.inject.AbstractModule;
+ private final AccountUserApi userApi = Mockito.mock(AccountUserApi.class);
+ private final SubscriptionUserApi entUserApi = Mockito.mock(SubscriptionUserApi.class);
+ private final BlockingInternalApi blockingApi = Mockito.mock(BlockingInternalApi.class);
+ private final EntitlementApi entitlementApi = Mockito.mock(EntitlementApi.class);
-public class MockEntitlementModule extends AbstractModule implements EntitlementModule {
@Override
- public void installEntitlementService() {
- bind(EntitlementService.class).toInstance(Mockito.mock(EntitlementService.class));
+ protected void configure() {
+ installAccountUserApi();
+ installSubscriptionUserApi();
+ installBlockingStateDao();
+ installBlockingApi();
+ installEntitlementApi();
}
@Override
- public void installEntitlementUserApi() {
- bind(EntitlementUserApi.class).annotatedWith(RealImplementation.class).toInstance(Mockito.mock(EntitlementUserApi.class));
+ public void installAccountUserApi() {
+ bind(AccountUserApi.class).toInstance(userApi);
}
@Override
- public void installEntitlementMigrationApi() {
- bind(EntitlementMigrationApi.class).toInstance(Mockito.mock(EntitlementMigrationApi.class));
+ public void installSubscriptionUserApi() {
+ bind(SubscriptionUserApi.class).toInstance(entUserApi);
}
@Override
- public void installEntitlementInternalApi() {
- bind(EntitlementInternalApi.class).toInstance(Mockito.mock(EntitlementInternalApi.class));
+ public void installBlockingStateDao() {
}
@Override
- protected void configure() {
- installEntitlementService();
- installEntitlementUserApi();
- installEntitlementMigrationApi();
- installEntitlementInternalApi();
- installEntitlementTimelineApi();
+ public void installBlockingApi() {
+ bind(BlockingInternalApi.class).toInstance(blockingApi);
}
@Override
- public void installEntitlementTimelineApi() {
- bind(EntitlementTimelineApi.class).toInstance(Mockito.mock(EntitlementTimelineApi.class));
+ public void installEntitlementApi() {
+ bind(EntitlementApi.class).toInstance(entitlementApi);
}
@Override
- public void installEntitlementTransferApi() {
- bind(EntitlementTransferApi.class).toInstance(Mockito.mock(EntitlementTransferApi.class));
-
+ public void installBlockingChecker() {
}
+
}
diff --git a/util/src/test/java/com/ning/billing/mock/glue/MockJunctionModule.java b/util/src/test/java/com/ning/billing/mock/glue/MockJunctionModule.java
index ac47120..91ebb72 100644
--- a/util/src/test/java/com/ning/billing/mock/glue/MockJunctionModule.java
+++ b/util/src/test/java/com/ning/billing/mock/glue/MockJunctionModule.java
@@ -16,56 +16,21 @@
package com.ning.billing.mock.glue;
-import org.mockito.Mockito;
-
-import com.ning.billing.account.api.AccountUserApi;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
+import com.google.inject.AbstractModule;
import com.ning.billing.glue.JunctionModule;
-import com.ning.billing.junction.api.JunctionApi;
import com.ning.billing.util.svcapi.junction.BillingInternalApi;
-import com.ning.billing.util.svcapi.junction.BlockingInternalApi;
-
-import com.google.inject.AbstractModule;
+import org.mockito.Mockito;
public class MockJunctionModule extends AbstractModule implements JunctionModule {
private final BillingInternalApi billingApi = Mockito.mock(BillingInternalApi.class);
- private final BlockingInternalApi blockingApi = Mockito.mock(BlockingInternalApi.class);
- private final AccountUserApi userApi = Mockito.mock(AccountUserApi.class);
- private final EntitlementUserApi entUserApi = Mockito.mock(EntitlementUserApi.class);
- private final JunctionApi junctionApi = Mockito.mock(JunctionApi.class);
@Override
protected void configure() {
- installBlockingApi();
- installAccountUserApi();
installBillingApi();
- installEntitlementUserApi();
- installJunctionApi();
}
@Override
public void installBillingApi() {
bind(BillingInternalApi.class).toInstance(billingApi);
}
-
- @Override
- public void installAccountUserApi() {
- bind(AccountUserApi.class).toInstance(userApi);
- }
-
- @Override
- public void installBlockingApi() {
- bind(BlockingInternalApi.class).toInstance(blockingApi);
- }
-
- @Override
- public void installEntitlementUserApi() {
- bind(EntitlementUserApi.class).toInstance(entUserApi);
- }
-
- @Override
- public void installJunctionApi() {
- bind(JunctionApi.class).toInstance(junctionApi);
- }
-
}
diff --git a/util/src/test/java/com/ning/billing/mock/glue/MockSubscriptionModule.java b/util/src/test/java/com/ning/billing/mock/glue/MockSubscriptionModule.java
new file mode 100644
index 0000000..3dbb6fb
--- /dev/null
+++ b/util/src/test/java/com/ning/billing/mock/glue/MockSubscriptionModule.java
@@ -0,0 +1,72 @@
+/*
+ * Copyright 2010-2012 Ning, Inc.
+ *
+ * Ning licenses this file to you under the Apache License, version 2.0
+ * (the "License"); you may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at:
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+package com.ning.billing.mock.glue;
+
+import org.mockito.Mockito;
+
+import com.ning.billing.glue.SubscriptionModule;
+import com.ning.billing.subscription.api.SubscriptionService;
+import com.ning.billing.subscription.api.migration.SubscriptionMigrationApi;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimelineApi;
+import com.ning.billing.subscription.api.transfer.SubscriptionTransferApi;
+import com.ning.billing.subscription.api.user.SubscriptionUserApi;
+import com.ning.billing.util.glue.RealImplementation;
+import com.ning.billing.util.svcapi.subscription.SubscriptionInternalApi;
+
+import com.google.inject.AbstractModule;
+
+public class MockSubscriptionModule extends AbstractModule implements SubscriptionModule {
+ @Override
+ public void installSubscriptionService() {
+ bind(SubscriptionService.class).toInstance(Mockito.mock(SubscriptionService.class));
+ }
+
+ @Override
+ public void installSubscriptionUserApi() {
+ bind(SubscriptionUserApi.class).annotatedWith(RealImplementation.class).toInstance(Mockito.mock(SubscriptionUserApi.class));
+ }
+
+ @Override
+ public void installSubscriptionMigrationApi() {
+ bind(SubscriptionMigrationApi.class).toInstance(Mockito.mock(SubscriptionMigrationApi.class));
+ }
+
+ @Override
+ public void installSubscriptionInternalApi() {
+ bind(SubscriptionInternalApi.class).toInstance(Mockito.mock(SubscriptionInternalApi.class));
+ }
+
+ @Override
+ protected void configure() {
+ installSubscriptionService();
+ installSubscriptionUserApi();
+ installSubscriptionMigrationApi();
+ installSubscriptionInternalApi();
+ installSubscriptionTimelineApi();
+ }
+
+ @Override
+ public void installSubscriptionTimelineApi() {
+ bind(SubscriptionTimelineApi.class).toInstance(Mockito.mock(SubscriptionTimelineApi.class));
+ }
+
+ @Override
+ public void installSubscriptionTransferApi() {
+ bind(SubscriptionTransferApi.class).toInstance(Mockito.mock(SubscriptionTransferApi.class));
+
+ }
+}
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 0b447eb..1604953 100644
--- a/util/src/test/java/com/ning/billing/mock/MockAccountBuilder.java
+++ b/util/src/test/java/com/ning/billing/mock/MockAccountBuilder.java
@@ -25,7 +25,7 @@ import com.ning.billing.account.api.Account;
import com.ning.billing.account.api.AccountData;
import com.ning.billing.account.api.MutableAccountData;
import com.ning.billing.catalog.api.Currency;
-import com.ning.billing.junction.api.BlockingState;
+import com.ning.billing.entitlement.api.BlockingState;
public class MockAccountBuilder {
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 e7c1dae..41f2e19 100644
--- a/util/src/test/java/com/ning/billing/mock/MockEffectiveSubscriptionEvent.java
+++ b/util/src/test/java/com/ning/billing/mock/MockEffectiveSubscriptionEvent.java
@@ -20,8 +20,8 @@ import java.util.UUID;
import org.joda.time.DateTime;
-import com.ning.billing.entitlement.api.SubscriptionTransitionType;
-import com.ning.billing.entitlement.api.user.SubscriptionState;
+import com.ning.billing.subscription.api.SubscriptionTransitionType;
+import com.ning.billing.subscription.api.user.SubscriptionState;
import com.ning.billing.util.events.BusEventBase;
import com.ning.billing.util.events.EffectiveSubscriptionInternalEvent;
diff --git a/util/src/test/java/com/ning/billing/mock/MockSubscription.java b/util/src/test/java/com/ning/billing/mock/MockSubscription.java
index a489279..675b89d 100644
--- a/util/src/test/java/com/ning/billing/mock/MockSubscription.java
+++ b/util/src/test/java/com/ning/billing/mock/MockSubscription.java
@@ -30,12 +30,12 @@ import com.ning.billing.catalog.api.PlanPhase;
import com.ning.billing.catalog.api.PlanPhaseSpecifier;
import com.ning.billing.catalog.api.PriceList;
import com.ning.billing.catalog.api.ProductCategory;
-import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
-import com.ning.billing.entitlement.api.user.Subscription;
-import com.ning.billing.entitlement.api.user.SubscriptionSourceType;
-import com.ning.billing.entitlement.api.user.SubscriptionState;
-import com.ning.billing.entitlement.api.user.SubscriptionTransition;
-import com.ning.billing.junction.api.BlockingState;
+import com.ning.billing.subscription.api.user.SubscriptionUserApiException;
+import com.ning.billing.subscription.api.user.Subscription;
+import com.ning.billing.subscription.api.user.SubscriptionSourceType;
+import com.ning.billing.subscription.api.user.SubscriptionState;
+import com.ning.billing.subscription.api.user.SubscriptionTransition;
+import com.ning.billing.entitlement.api.BlockingState;
import com.ning.billing.util.callcontext.CallContext;
import com.ning.billing.util.events.EffectiveSubscriptionInternalEvent;
@@ -74,37 +74,37 @@ public class MockSubscription implements Subscription {
Subscription sub = Mockito.mock(Subscription.class);
@Override
- public boolean cancel(final DateTime requestedDate, final CallContext context) throws EntitlementUserApiException {
+ public boolean cancel(final DateTime requestedDate, final CallContext context) throws SubscriptionUserApiException {
return sub.cancel(requestedDate, context);
}
@Override
public boolean cancelWithPolicy(DateTime requestedDate,
ActionPolicy policy, CallContext context)
- throws EntitlementUserApiException {
+ throws SubscriptionUserApiException {
return sub.cancelWithPolicy(requestedDate, policy, context);
}
@Override
- public boolean uncancel(final CallContext context) throws EntitlementUserApiException {
+ public boolean uncancel(final CallContext context) throws SubscriptionUserApiException {
return sub.uncancel(context);
}
@Override
public boolean changePlan(final String productName, final BillingPeriod term, final String priceList, final DateTime requestedDate,
- final CallContext context) throws EntitlementUserApiException {
+ final CallContext context) throws SubscriptionUserApiException {
return sub.changePlan(productName, term, priceList, requestedDate, context);
}
@Override
public boolean changePlanWithPolicy(final String productName, final BillingPeriod term, final String priceList,
- final DateTime requestedDate, final ActionPolicy policy, final CallContext context) throws EntitlementUserApiException {
+ final DateTime requestedDate, final ActionPolicy policy, final CallContext context) throws SubscriptionUserApiException {
return sub.changePlan(productName, term, priceList, requestedDate, context);
}
@Override
public boolean recreate(final PlanPhaseSpecifier spec, final DateTime requestedDate, final CallContext context)
- throws EntitlementUserApiException {
+ throws SubscriptionUserApiException {
return sub.recreate(spec, requestedDate, context);
}
diff --git a/util/src/test/java/com/ning/billing/util/audit/api/TestDefaultAuditUserApi.java b/util/src/test/java/com/ning/billing/util/audit/api/TestDefaultAuditUserApi.java
index 9f14e5b..6926ee4 100644
--- a/util/src/test/java/com/ning/billing/util/audit/api/TestDefaultAuditUserApi.java
+++ b/util/src/test/java/com/ning/billing/util/audit/api/TestDefaultAuditUserApi.java
@@ -28,7 +28,7 @@ import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
import com.ning.billing.ObjectType;
-import com.ning.billing.entitlement.api.timeline.BundleTimeline;
+import com.ning.billing.subscription.api.timeline.BundleTimeline;
import com.ning.billing.invoice.api.Invoice;
import com.ning.billing.invoice.api.InvoiceItem;
import com.ning.billing.invoice.api.InvoicePayment;
diff --git a/util/src/test/java/com/ning/billing/util/glue/TestUtilModule.java b/util/src/test/java/com/ning/billing/util/glue/TestUtilModule.java
index d2932fa..6fffa80 100644
--- a/util/src/test/java/com/ning/billing/util/glue/TestUtilModule.java
+++ b/util/src/test/java/com/ning/billing/util/glue/TestUtilModule.java
@@ -19,7 +19,7 @@ package com.ning.billing.util.glue;
import org.mockito.Mockito;
import org.skife.config.ConfigSource;
-import com.ning.billing.entitlement.api.timeline.EntitlementTimelineApi;
+import com.ning.billing.subscription.api.timeline.SubscriptionTimelineApi;
import com.google.inject.AbstractModule;
@@ -31,9 +31,9 @@ public class TestUtilModule extends AbstractModule {
this.configSource = configSource;
}
- // TODO STEPH this is bad-- because DefaultAuditUserApi is using entitlementTimeline API
+ // TODO STEPH this is bad-- because DefaultAuditUserApi is using SubscriptionTimeline API
public void installHack() {
- bind(EntitlementTimelineApi.class).toInstance(Mockito.mock(EntitlementTimelineApi.class));
+ bind(SubscriptionTimelineApi.class).toInstance(Mockito.mock(SubscriptionTimelineApi.class));
}
@Override