killbill-memoizeit
Changes
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/BusinessAnalyticsBase.java 58(+58 -0)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessAccountDao.java 11(+10 -1)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessFieldDao.java 11(+10 -1)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessInvoiceDao.java 38(+28 -10)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessInvoicePaymentDao.java 15(+14 -1)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessOverdueStatusDao.java 9(+8 -1)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessSubscriptionTransitionDao.java 9(+8 -1)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessTagDao.java 12(+11 -1)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountFieldModelDao.java 12(+10 -2)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountModelDao.java 75(+44 -31)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountTagModelDao.java 13(+11 -2)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessFieldModelDao.java 66(+43 -23)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceAdjustmentModelDao.java 10(+8 -2)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceFieldModelDao.java 12(+10 -2)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemAdjustmentModelDao.java 10(+8 -2)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemBaseModelDao.java 149(+95 -54)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemCreditModelDao.java 10(+8 -2)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemModelDao.java 10(+8 -2)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceModelDao.java 12(+7 -5)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentBaseModelDao.java 103(+66 -37)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentChargebackModelDao.java 10(+8 -2)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentFieldModelDao.java 12(+10 -2)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentModelDao.java 10(+8 -2)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentRefundModelDao.java 10(+8 -2)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentTagModelDao.java 13(+11 -2)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceTagModelDao.java 13(+11 -2)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessOverdueStatusModelDao.java 12(+7 -5)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessSubscriptionTransitionModelDao.java 12(+7 -5)
osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessTagModelDao.java 69(+46 -23)
osgi-bundles/bundles/analytics/src/main/resources/com/ning/billing/osgi/bundles/analytics/ddl.sql 80(+55 -25)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/AnalyticsTestSuiteNoDB.java 19(+15 -4)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessAccount.java 4(+3 -1)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessField.java 21(+18 -3)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoice.java 12(+10 -2)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoiceItem.java 5(+4 -1)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoicePayment.java 5(+4 -1)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessOverdueStatus.java 5(+4 -1)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessSnapshot.java 43(+35 -8)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessSubscriptionTransition.java 5(+4 -1)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessTag.java 15(+12 -3)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/user/TestDefaultAnalyticsUserApi.java 4(+3 -1)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountFieldModelDao.java 11(+8 -3)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountModelDao.java 18(+15 -3)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountTagModelDao.java 12(+9 -3)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceFieldModelDao.java 9(+6 -3)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceItemModelDao.java 14(+10 -4)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceModelDao.java 11(+8 -3)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentFieldModelDao.java 9(+6 -3)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentModelDao.java 9(+6 -3)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentTagModelDao.java 9(+6 -3)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceTagModelDao.java 9(+6 -3)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessOverdueStatusModelDao.java 9(+6 -3)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessSubscriptionTransitionModelDao.java 7(+5 -2)
osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/TestAnalyticsDao.java 4(+3 -1)
Details
diff --git a/api/src/main/java/com/ning/billing/ObjectType.java b/api/src/main/java/com/ning/billing/ObjectType.java
index 904f15e..0db2faa 100644
--- a/api/src/main/java/com/ning/billing/ObjectType.java
+++ b/api/src/main/java/com/ning/billing/ObjectType.java
@@ -19,6 +19,7 @@ package com.ning.billing;
public enum ObjectType {
ACCOUNT("account"),
ACCOUNT_EMAIL("account email"),
+ BLOCKING_STATES("blocking state"),
BUNDLE("subscription bundle"),
CUSTOM_FIELD("custom field"),
INVOICE("invoice"),
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/BusinessAnalyticsBase.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/BusinessAnalyticsBase.java
index 80abafe..f40fcd4 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/BusinessAnalyticsBase.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/BusinessAnalyticsBase.java
@@ -52,6 +52,7 @@ import com.ning.billing.payment.api.PaymentMethod;
import com.ning.billing.util.api.AuditLevel;
import com.ning.billing.util.api.AuditUserApi;
import com.ning.billing.util.api.CustomFieldUserApi;
+import com.ning.billing.util.api.RecordIdApi;
import com.ning.billing.util.api.TagDefinitionApiException;
import com.ning.billing.util.api.TagUserApi;
import com.ning.billing.util.audit.AuditLog;
@@ -77,6 +78,15 @@ public abstract class BusinessAnalyticsBase {
}
//
+ // TENANT
+ //
+
+ protected Long getTenantRecordId(final TenantContext context) throws AnalyticsRefreshException {
+ final RecordIdApi recordIdUserApi = getRecordIdUserApi();
+ return recordIdUserApi.getRecordId(context.getTenantId(), ObjectType.TENANT);
+ }
+
+ //
// ACCOUNT
//
@@ -102,6 +112,11 @@ public abstract class BusinessAnalyticsBase {
throw new AnalyticsRefreshException("Unable to find Account creation audit log for id " + accountId);
}
+ protected Long getAccountRecordId(final UUID accountId, final TenantContext context) throws AnalyticsRefreshException {
+ final RecordIdApi recordIdUserApi = getRecordIdUserApi();
+ return recordIdUserApi.getRecordId(accountId, ObjectType.ACCOUNT);
+ }
+
//
// SUBSCRIPTION
//
@@ -149,6 +164,11 @@ public abstract class BusinessAnalyticsBase {
throw new AnalyticsRefreshException("Unable to find Subscription event creation audit log for id " + subscriptionEventId);
}
+ protected Long getSubscriptionEventRecordId(final UUID subscriptionEventId, final TenantContext context) throws AnalyticsRefreshException {
+ final RecordIdApi recordIdUserApi = getRecordIdUserApi();
+ return recordIdUserApi.getRecordId(subscriptionEventId, ObjectType.SUBSCRIPTION_EVENT);
+ }
+
//
// OVERDUE
//
@@ -174,6 +194,11 @@ public abstract class BusinessAnalyticsBase {
throw new AnalyticsRefreshException("Unable to find Blocking state creation audit log for id " + blockingStateId);
}
+ protected Long getBlockingStateRecordId(final UUID blockingStateId, final TenantContext context) throws AnalyticsRefreshException {
+ final RecordIdApi recordIdUserApi = getRecordIdUserApi();
+ return recordIdUserApi.getRecordId(blockingStateId, ObjectType.BLOCKING_STATES);
+ }
+
//
// INVOICE
//
@@ -199,6 +224,11 @@ public abstract class BusinessAnalyticsBase {
throw new AnalyticsRefreshException("Unable to find Invoice creation audit log for id " + invoiceId);
}
+ protected Long getInvoiceRecordId(final UUID invoiceId, final TenantContext context) throws AnalyticsRefreshException {
+ final RecordIdApi recordIdUserApi = getRecordIdUserApi();
+ return recordIdUserApi.getRecordId(invoiceId, ObjectType.INVOICE);
+ }
+
protected AuditLog getInvoiceItemCreationAuditLog(final UUID invoiceItemId, final TenantContext context) throws AnalyticsRefreshException {
final List<AuditLog> auditLogsForInvoiceItem = getAuditUserApi().getAuditLogs(invoiceItemId, ObjectType.INVOICE_ITEM, AuditLevel.MINIMAL, context);
for (final AuditLog auditLog : auditLogsForInvoiceItem) {
@@ -210,6 +240,11 @@ public abstract class BusinessAnalyticsBase {
throw new AnalyticsRefreshException("Unable to find Invoice item creation audit log for id " + invoiceItemId);
}
+ protected Long getInvoiceItemRecordId(final UUID invoiceItemId, final TenantContext context) throws AnalyticsRefreshException {
+ final RecordIdApi recordIdUserApi = getRecordIdUserApi();
+ return recordIdUserApi.getRecordId(invoiceItemId, ObjectType.INVOICE_ITEM);
+ }
+
protected Collection<Invoice> getInvoicesByAccountId(final UUID accountId, final CallContext context) throws AnalyticsRefreshException {
final InvoiceUserApi invoiceUserApi = getInvoiceUserApi();
return invoiceUserApi.getInvoicesByAccount(accountId, context);
@@ -280,6 +315,11 @@ public abstract class BusinessAnalyticsBase {
throw new AnalyticsRefreshException("Unable to find Invoice payment creation audit log for id " + invoicePaymentId);
}
+ protected Long getInvoicePaymentRecordId(final UUID invoicePaymentId, final TenantContext context) throws AnalyticsRefreshException {
+ final RecordIdApi recordIdUserApi = getRecordIdUserApi();
+ return recordIdUserApi.getRecordId(invoicePaymentId, ObjectType.INVOICE_PAYMENT);
+ }
+
//
// PAYMENT
//
@@ -350,6 +390,11 @@ public abstract class BusinessAnalyticsBase {
throw new AnalyticsRefreshException("Unable to find Field creation audit log for id " + fieldId);
}
+ protected Long getFieldRecordId(final UUID fieldId, final TenantContext context) throws AnalyticsRefreshException {
+ final RecordIdApi recordIdUserApi = getRecordIdUserApi();
+ return recordIdUserApi.getRecordId(fieldId, ObjectType.CUSTOM_FIELD);
+ }
+
//
// TAG
//
@@ -381,6 +426,11 @@ public abstract class BusinessAnalyticsBase {
throw new AnalyticsRefreshException("Unable to find Tag creation audit log for id " + tagId);
}
+ protected Long getTagRecordId(final UUID tagId, final TenantContext context) throws AnalyticsRefreshException {
+ final RecordIdApi recordIdUserApi = getRecordIdUserApi();
+ return recordIdUserApi.getRecordId(tagId, ObjectType.TAG);
+ }
+
//
// APIs
//
@@ -464,4 +514,12 @@ public abstract class BusinessAnalyticsBase {
}
return tagUserApi;
}
+
+ private RecordIdApi getRecordIdUserApi() throws AnalyticsRefreshException {
+ final RecordIdApi recordIdApi = osgiKillbillAPI.getRecordIdApi();
+ if (recordIdApi == null) {
+ throw new AnalyticsRefreshException("Error retrieving recordIdApi");
+ }
+ return recordIdApi;
+ }
}
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessAccountDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessAccountDao.java
index e92c352..d31593d 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessAccountDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessAccountDao.java
@@ -90,6 +90,15 @@ public class BusinessAccountDao extends BusinessAnalyticsDaoBase {
}
}
- return new BusinessAccountModelDao(account, accountBalance, lastInvoice, lastPayment, creationAuditLog);
+ final Long accountRecordId = getAccountRecordId(account.getId(), context);
+ final Long tenantRecordId = getTenantRecordId(context);
+
+ return new BusinessAccountModelDao(account,
+ accountRecordId,
+ accountBalance,
+ lastInvoice,
+ lastPayment,
+ creationAuditLog,
+ tenantRecordId);
}
}
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessFieldDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessFieldDao.java
index 391cd5e..2a8287f 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessFieldDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessFieldDao.java
@@ -71,12 +71,21 @@ public class BusinessFieldDao extends BusinessAnalyticsDaoBase {
}
private Collection<BusinessFieldModelDao> createBusinessFields(final Account account, final ObjectType objectType, final CallContext context) throws AnalyticsRefreshException {
+ final Long accountRecordId = getAccountRecordId(account.getId(), context);
+ final Long tenantRecordId = getTenantRecordId(context);
+
final Collection<CustomField> fields = getFieldsForAccountAndObjectType(account.getId(), objectType, context);
final Collection<BusinessFieldModelDao> fieldModelDaos = new LinkedList<BusinessFieldModelDao>();
for (final CustomField field : fields) {
+ final Long customFieldRecordId = getFieldRecordId(field.getId(), context);
final AuditLog creationAuditLog = getFieldCreationAuditLog(field.getId(), context);
- final BusinessFieldModelDao fieldModelDao = BusinessFieldModelDao.create(account, field, creationAuditLog);
+ final BusinessFieldModelDao fieldModelDao = BusinessFieldModelDao.create(account,
+ accountRecordId,
+ field,
+ customFieldRecordId,
+ creationAuditLog,
+ tenantRecordId);
fieldModelDaos.add(fieldModelDao);
}
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessInvoiceDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessInvoiceDao.java
index ea61e8b..cfcd792 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessInvoiceDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessInvoiceDao.java
@@ -43,8 +43,6 @@ import com.ning.killbill.osgi.libs.killbill.OSGIKillbillAPI;
import com.ning.killbill.osgi.libs.killbill.OSGIKillbillDataSource;
import com.ning.killbill.osgi.libs.killbill.OSGIKillbillLogService;
-import com.google.common.annotations.VisibleForTesting;
-
public class BusinessInvoiceDao extends BusinessAnalyticsDaoBase {
private final BusinessAccountDao businessAccountDao;
@@ -88,14 +86,23 @@ public class BusinessInvoiceDao extends BusinessAnalyticsDaoBase {
public Map<BusinessInvoiceModelDao, Collection<BusinessInvoiceItemBaseModelDao>> createBusinessInvoicesAndInvoiceItems(final Account account,
final CallContext context) throws AnalyticsRefreshException {
+ final Long accountRecordId = getAccountRecordId(account.getId(), context);
+ final Long tenantRecordId = getTenantRecordId(context);
+
// Lookup the invoices for that account
final Map<BusinessInvoiceModelDao, Collection<BusinessInvoiceItemBaseModelDao>> businessInvoices = new HashMap<BusinessInvoiceModelDao, Collection<BusinessInvoiceItemBaseModelDao>>();
// Create the business invoice and associated business invoice items
final Collection<Invoice> invoices = getInvoicesByAccountId(account.getId(), context);
for (final Invoice invoice : invoices) {
+ final Long invoiceRecordId = getInvoiceRecordId(invoice.getId(), context);
final AuditLog creationAuditLog = getInvoiceCreationAuditLog(invoice.getId(), context);
- final BusinessInvoiceModelDao businessInvoice = new BusinessInvoiceModelDao(account, invoice, creationAuditLog);
+ final BusinessInvoiceModelDao businessInvoice = new BusinessInvoiceModelDao(account,
+ accountRecordId,
+ invoice,
+ invoiceRecordId,
+ creationAuditLog,
+ tenantRecordId);
final List<BusinessInvoiceItemBaseModelDao> businessInvoiceItems = new ArrayList<BusinessInvoiceItemBaseModelDao>();
for (final InvoiceItem invoiceItem : invoice.getInvoiceItems()) {
@@ -148,11 +155,10 @@ public class BusinessInvoiceDao extends BusinessAnalyticsDaoBase {
}
}
- @VisibleForTesting
- BusinessInvoiceItemBaseModelDao createBusinessInvoiceItem(final Account account,
- final Invoice invoice,
- final InvoiceItem invoiceItem,
- final TenantContext context) throws AnalyticsRefreshException {
+ private BusinessInvoiceItemBaseModelDao createBusinessInvoiceItem(final Account account,
+ final Invoice invoice,
+ final InvoiceItem invoiceItem,
+ final TenantContext context) throws AnalyticsRefreshException {
SubscriptionBundle bundle = null;
// Subscription and bundle could be null for e.g. credits or adjustments
if (invoiceItem.getBundleId() != null) {
@@ -169,8 +175,20 @@ public class BusinessInvoiceDao extends BusinessAnalyticsDaoBase {
planPhase = getPlanPhaseFromInvoiceItem(invoiceItem, context);
}
+ final Long invoiceItemRecordId = getInvoiceItemRecordId(invoiceItem.getId(), context);
final AuditLog creationAuditLog = getInvoiceItemCreationAuditLog(invoiceItem.getId(), context);
-
- return BusinessInvoiceItemBaseModelDao.create(account, invoice, invoiceItem, bundle, plan, planPhase, creationAuditLog);
+ final Long accountRecordId = getAccountRecordId(account.getId(), context);
+ final Long tenantRecordId = getTenantRecordId(context);
+
+ return BusinessInvoiceItemBaseModelDao.create(account,
+ accountRecordId,
+ invoice,
+ invoiceItem,
+ invoiceItemRecordId,
+ bundle,
+ plan,
+ planPhase,
+ creationAuditLog,
+ tenantRecordId);
}
}
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessInvoicePaymentDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessInvoicePaymentDao.java
index 56ecfa1..4b7d90e 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessInvoicePaymentDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessInvoicePaymentDao.java
@@ -105,14 +105,27 @@ public class BusinessInvoicePaymentDao extends BusinessAnalyticsDaoBase {
final CallContext context) throws AnalyticsRefreshException {
final Collection<BusinessInvoicePaymentBaseModelDao> businessInvoicePayments = new LinkedList<BusinessInvoicePaymentBaseModelDao>();
+ final Long accountRecordId = getAccountRecordId(account.getId(), context);
+ final Long tenantRecordId = getTenantRecordId(context);
+
final Collection<InvoicePayment> invoicePayments = getAccountInvoicePayments(account.getId(), context);
for (final InvoicePayment invoicePayment : invoicePayments) {
+ final Long invoicePaymentRecordId = getInvoicePaymentRecordId(invoicePayment.getId(), context);
+
final Invoice invoice = getInvoice(invoicePayment.getInvoiceId(), context);
final Payment payment = getPayment(invoicePayment.getPaymentId(), context);
final PaymentMethod paymentMethod = getPaymentMethod(payment.getPaymentMethodId(), context);
final AuditLog creationAuditLog = getInvoicePaymentCreationAuditLog(invoicePayment.getId(), context);
- final BusinessInvoicePaymentBaseModelDao businessInvoicePayment = BusinessInvoicePaymentBaseModelDao.create(account, invoice, invoicePayment, payment, paymentMethod, creationAuditLog);
+ final BusinessInvoicePaymentBaseModelDao businessInvoicePayment = BusinessInvoicePaymentBaseModelDao.create(account,
+ accountRecordId,
+ invoice,
+ invoicePayment,
+ invoicePaymentRecordId,
+ payment,
+ paymentMethod,
+ creationAuditLog,
+ tenantRecordId);
if (businessInvoicePayment != null) {
businessInvoicePayments.add(businessInvoicePayment);
}
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessOverdueStatusDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessOverdueStatusDao.java
index f3dd1c9..7374db4 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessOverdueStatusDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessOverdueStatusDao.java
@@ -99,15 +99,22 @@ public class BusinessOverdueStatusDao extends BusinessAnalyticsDaoBase {
return businessOverdueStatuses;
}
+ final Long accountRecordId = getAccountRecordId(account.getId(), context);
+ final Long tenantRecordId = getTenantRecordId(context);
+
final List<BlockingState> blockingStates = Lists.reverse(ImmutableList.<BlockingState>copyOf(blockingStatesOrdered));
DateTime previousStartDate = null;
for (final BlockingState state : blockingStates) {
+ final Long blockingStateRecordId = getBlockingStateRecordId(state.getId(), context);
final AuditLog creationAuditLog = getBlockingStateCreationAuditLog(state.getId(), context);
final BusinessOverdueStatusModelDao overdueStatus = new BusinessOverdueStatusModelDao(account,
+ accountRecordId,
subscriptionBundle,
state,
+ blockingStateRecordId,
previousStartDate,
- creationAuditLog);
+ creationAuditLog,
+ tenantRecordId);
businessOverdueStatuses.add(overdueStatus);
previousStartDate = state.getTimestamp();
}
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessSubscriptionTransitionDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessSubscriptionTransitionDao.java
index ebe0fe4..498c92f 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessSubscriptionTransitionDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessSubscriptionTransitionDao.java
@@ -119,15 +119,22 @@ public class BusinessSubscriptionTransitionDao extends BusinessAnalyticsDaoBase
subscriptionTransition.getNextState());
// TODO
+ final Long subscriptionEventRecordId = getSubscriptionEventRecordId(null, context);
final AuditLog creationAuditLog = getSubscriptionEventCreationAuditLog(null, context);
+ final Long accountRecordId = getAccountRecordId(account.getId(), context);
+ final Long tenantRecordId = getTenantRecordId(context);
+
return new BusinessSubscriptionTransitionModelDao(account,
+ accountRecordId,
subscriptionBundle,
subscriptionTransition,
+ subscriptionEventRecordId,
subscriptionTransition.getRequestedTransitionTime(),
businessEvent,
prevBst == null ? null : prevBst.getNextSubscription(),
nextSubscription,
- creationAuditLog);
+ creationAuditLog,
+ tenantRecordId);
}
}
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessTagDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessTagDao.java
index 509bf1d..5d044f3 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessTagDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/BusinessTagDao.java
@@ -71,13 +71,23 @@ public class BusinessTagDao extends BusinessAnalyticsDaoBase {
}
private Collection<BusinessTagModelDao> createBusinessTags(final Account account, final CallContext context) throws AnalyticsRefreshException {
+ final Long accountRecordId = getAccountRecordId(account.getId(), context);
+ final Long tenantRecordId = getTenantRecordId(context);
+
final Collection<Tag> tags = getTagsForAccount(account.getId(), context);
final Collection<BusinessTagModelDao> tagModelDaos = new LinkedList<BusinessTagModelDao>();
for (final Tag tag : tags) {
+ final Long tagRecordId = getTagRecordId(tag.getId(), context);
final TagDefinition tagDefinition = getTagDefinition(tag.getTagDefinitionId(), context);
final AuditLog creationAuditLog = getTagCreationAuditLog(tag.getId(), context);
- final BusinessTagModelDao tagModelDao = BusinessTagModelDao.create(account, tag, tagDefinition, creationAuditLog);
+ final BusinessTagModelDao tagModelDao = BusinessTagModelDao.create(account,
+ accountRecordId,
+ tag,
+ tagRecordId,
+ tagDefinition,
+ creationAuditLog,
+ tenantRecordId);
tagModelDaos.add(tagModelDao);
}
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountFieldModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountFieldModelDao.java
index b74aadb..a3167e3 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountFieldModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountFieldModelDao.java
@@ -23,9 +23,17 @@ import com.ning.billing.util.customfield.CustomField;
public class BusinessAccountFieldModelDao extends BusinessFieldModelDao {
public BusinessAccountFieldModelDao(final Account account,
+ final Long accountRecordId,
final CustomField customField,
- final AuditLog creationAuditLog) {
- super(account, customField, creationAuditLog);
+ final Long customFieldRecordId,
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
+ super(account,
+ accountRecordId,
+ customField,
+ customFieldRecordId,
+ creationAuditLog,
+ tenantRecordId);
}
@Override
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountModelDao.java
index 27d4b4d..24f2c8f 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountModelDao.java
@@ -37,6 +37,9 @@ public class BusinessAccountModelDao extends BusinessModelDaoBase {
private final Integer firstNameLength;
private final String currency;
private final Integer billingCycleDayLocal;
+ private final UUID paymentMethodId;
+ private final String timeZone;
+ private final String locale;
private final String address1;
private final String address2;
private final String companyName;
@@ -52,33 +55,36 @@ public class BusinessAccountModelDao extends BusinessModelDaoBase {
private final DateTime lastPaymentDate;
private final String lastPaymentStatus;
- private BusinessAccountModelDao(final String email,
- final Integer firstNameLength,
- final String currency,
- final Integer billingCycleDayLocal,
- final String address1,
- final String address2,
- final String companyName,
- final String city,
- final String stateOrProvince,
- final String country,
- final String postalCode,
- final String phone,
- final Boolean isMigrated,
- final Boolean notifiedForInvoices,
- final BigDecimal balance,
- final LocalDate lastInvoiceDate,
- final DateTime lastPaymentDate,
- final String lastPaymentStatus,
- final DateTime createdDate,
- final String createdBy,
- final String createdReasonCode,
- final String createdComments,
- final UUID accountId,
- final String accountName,
- final String accountExternalKey,
- final Long accountRecordId,
- final Long tenantRecordId) {
+ public BusinessAccountModelDao(final String email,
+ final Integer firstNameLength,
+ final String currency,
+ final Integer billingCycleDayLocal,
+ final UUID paymentMethodId,
+ final String timeZone,
+ final String locale,
+ final String address1,
+ final String address2,
+ final String companyName,
+ final String city,
+ final String stateOrProvince,
+ final String country,
+ final String postalCode,
+ final String phone,
+ final Boolean isMigrated,
+ final Boolean notifiedForInvoices,
+ final BigDecimal balance,
+ final LocalDate lastInvoiceDate,
+ final DateTime lastPaymentDate,
+ final String lastPaymentStatus,
+ final DateTime createdDate,
+ final String createdBy,
+ final String createdReasonCode,
+ final String createdComments,
+ final UUID accountId,
+ final String accountName,
+ final String accountExternalKey,
+ final Long accountRecordId,
+ final Long tenantRecordId) {
super(createdDate,
createdBy,
createdReasonCode,
@@ -92,6 +98,9 @@ public class BusinessAccountModelDao extends BusinessModelDaoBase {
this.firstNameLength = firstNameLength;
this.currency = currency;
this.billingCycleDayLocal = billingCycleDayLocal;
+ this.paymentMethodId = paymentMethodId;
+ this.timeZone = timeZone;
+ this.locale = locale;
this.address1 = address1;
this.address2 = address2;
this.companyName = companyName;
@@ -109,14 +118,19 @@ public class BusinessAccountModelDao extends BusinessModelDaoBase {
}
public BusinessAccountModelDao(final Account account,
+ final Long accountRecordId,
final BigDecimal balance,
@Nullable final Invoice lastInvoice,
@Nullable final Payment lastPayment,
- final AuditLog creationAuditLog) {
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
this(account.getEmail(),
account.getFirstNameLength(),
account.getCurrency() == null ? null : account.getCurrency().toString(),
account.getBillCycleDayLocal(),
+ account.getPaymentMethodId(),
+ account.getTimeZone() == null ? null : account.getTimeZone().toString(),
+ account.getLocale(),
account.getAddress1(),
account.getAddress2(),
account.getCompanyName(),
@@ -138,9 +152,8 @@ public class BusinessAccountModelDao extends BusinessModelDaoBase {
account.getId(),
account.getName(),
account.getExternalKey(),
- // TODO
- null,
- null);
+ accountRecordId,
+ tenantRecordId);
}
@Override
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountTagModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountTagModelDao.java
index 6f4888f..3c81637 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountTagModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessAccountTagModelDao.java
@@ -24,10 +24,19 @@ import com.ning.billing.util.tag.TagDefinition;
public class BusinessAccountTagModelDao extends BusinessTagModelDao {
public BusinessAccountTagModelDao(final Account account,
+ final Long accountRecordId,
final Tag tag,
+ final Long tagRecordId,
final TagDefinition tagDefinition,
- final AuditLog creationAuditLog) {
- super(account, tag, tagDefinition, creationAuditLog);
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
+ super(account,
+ accountRecordId,
+ tag,
+ tagRecordId,
+ tagDefinition,
+ creationAuditLog,
+ tenantRecordId);
}
@Override
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessFieldModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessFieldModelDao.java
index be68ae9..6fa7be5 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessFieldModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessFieldModelDao.java
@@ -38,32 +38,50 @@ public abstract class BusinessFieldModelDao extends BusinessModelDaoBase {
private final String value;
public static BusinessFieldModelDao create(final Account account,
+ final Long accountRecordId,
final CustomField customField,
- final AuditLog creationAuditLog) {
+ final Long customFieldRecordId,
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
if (ObjectType.ACCOUNT.equals(customField.getObjectType())) {
- return new BusinessAccountFieldModelDao(account, customField, creationAuditLog);
+ return new BusinessAccountFieldModelDao(account,
+ accountRecordId,
+ customField,
+ customFieldRecordId,
+ creationAuditLog,
+ tenantRecordId);
} else if (ObjectType.INVOICE_PAYMENT.equals(customField.getObjectType())) {
- return new BusinessInvoiceFieldModelDao(account, customField, creationAuditLog);
+ return new BusinessInvoiceFieldModelDao(account,
+ accountRecordId,
+ customField,
+ customFieldRecordId,
+ creationAuditLog,
+ tenantRecordId);
} else if (ObjectType.INVOICE.equals(customField.getObjectType())) {
- return new BusinessInvoicePaymentFieldModelDao(account, customField, creationAuditLog);
+ return new BusinessInvoicePaymentFieldModelDao(account,
+ accountRecordId,
+ customField,
+ customFieldRecordId,
+ creationAuditLog,
+ tenantRecordId);
} else {
// We don't care
return null;
}
}
- private BusinessFieldModelDao(final Long customFieldRecordId,
- final String name,
- final String value,
- final DateTime createdDate,
- final String createdBy,
- final String createdReasonCode,
- final String createdComments,
- final UUID accountId,
- final String accountName,
- final String accountExternalKey,
- final Long accountRecordId,
- final Long tenantRecordId) {
+ public BusinessFieldModelDao(final Long customFieldRecordId,
+ final String name,
+ final String value,
+ final DateTime createdDate,
+ final String createdBy,
+ final String createdReasonCode,
+ final String createdComments,
+ final UUID accountId,
+ final String accountName,
+ final String accountExternalKey,
+ final Long accountRecordId,
+ final Long tenantRecordId) {
super(createdDate,
createdBy,
createdReasonCode,
@@ -78,10 +96,13 @@ public abstract class BusinessFieldModelDao extends BusinessModelDaoBase {
this.value = value;
}
- protected BusinessFieldModelDao(final Account account,
- final CustomField customField,
- final AuditLog creationAuditLog) {
- this(null /* TODO */,
+ public BusinessFieldModelDao(final Account account,
+ final Long accountRecordId,
+ final CustomField customField,
+ final Long customFieldRecordId,
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
+ this(customFieldRecordId,
customField.getFieldName(),
customField.getFieldValue(),
customField.getCreatedDate(),
@@ -91,9 +112,8 @@ public abstract class BusinessFieldModelDao extends BusinessModelDaoBase {
account.getId(),
account.getName(),
account.getExternalKey(),
- // TODO
- null,
- null);
+ accountRecordId,
+ tenantRecordId);
}
public Long getCustomFieldRecordId() {
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceAdjustmentModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceAdjustmentModelDao.java
index 355bdd8..ef81a6f 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceAdjustmentModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceAdjustmentModelDao.java
@@ -29,19 +29,25 @@ import com.ning.billing.util.audit.AuditLog;
public class BusinessInvoiceAdjustmentModelDao extends BusinessInvoiceItemBaseModelDao {
public BusinessInvoiceAdjustmentModelDao(final Account account,
+ final Long accountRecordId,
final Invoice invoice,
final InvoiceItem invoiceItem,
+ final Long invoiceItemRecordId,
@Nullable final SubscriptionBundle bundle,
@Nullable final Plan plan,
@Nullable final PlanPhase planPhase,
- final AuditLog creationAuditLog) {
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
super(account,
+ accountRecordId,
invoice,
invoiceItem,
+ invoiceItemRecordId,
bundle,
plan,
planPhase,
- creationAuditLog);
+ creationAuditLog,
+ tenantRecordId);
}
@Override
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceFieldModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceFieldModelDao.java
index 07d4755..3654423 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceFieldModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceFieldModelDao.java
@@ -27,9 +27,17 @@ public class BusinessInvoiceFieldModelDao extends BusinessFieldModelDao {
private final UUID invoiceId;
public BusinessInvoiceFieldModelDao(final Account account,
+ final Long accountRecordId,
final CustomField customField,
- final AuditLog creationAuditLog) {
- super(account, customField, creationAuditLog);
+ final Long customFieldRecordId,
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
+ super(account,
+ accountRecordId,
+ customField,
+ customFieldRecordId,
+ creationAuditLog,
+ tenantRecordId);
this.invoiceId = customField.getObjectId();
}
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemAdjustmentModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemAdjustmentModelDao.java
index 46470de..0ea1e84 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemAdjustmentModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemAdjustmentModelDao.java
@@ -29,19 +29,25 @@ import com.ning.billing.util.audit.AuditLog;
public class BusinessInvoiceItemAdjustmentModelDao extends BusinessInvoiceItemBaseModelDao {
public BusinessInvoiceItemAdjustmentModelDao(final Account account,
+ final Long accountRecordId,
final Invoice invoice,
final InvoiceItem invoiceItem,
+ final Long invoiceItemRecordId,
@Nullable final SubscriptionBundle bundle,
@Nullable final Plan plan,
@Nullable final PlanPhase planPhase,
- final AuditLog creationAuditLog) {
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
super(account,
+ accountRecordId,
invoice,
invoiceItem,
+ invoiceItemRecordId,
bundle,
plan,
planPhase,
- creationAuditLog);
+ creationAuditLog,
+ tenantRecordId);
}
@Override
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemBaseModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemBaseModelDao.java
index 552c5b5..fcbf0e5 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemBaseModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemBaseModelDao.java
@@ -71,65 +71,104 @@ public abstract class BusinessInvoiceItemBaseModelDao extends BusinessModelDaoBa
private final UUID linkedItemId;
public static BusinessInvoiceItemBaseModelDao create(final Account account,
+ final Long accountRecordId,
final Invoice invoice,
final InvoiceItem invoiceItem,
+ final Long invoiceItemRecordId,
@Nullable final SubscriptionBundle bundle,
@Nullable final Plan plan,
@Nullable final PlanPhase planPhase,
- final AuditLog creationAuditLog) {
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
if (InvoiceItemType.REFUND_ADJ.equals(invoiceItem.getInvoiceItemType())) {
- return new BusinessInvoiceAdjustmentModelDao(account, invoice, invoiceItem, bundle, plan, planPhase, creationAuditLog);
+ return new BusinessInvoiceAdjustmentModelDao(account,
+ accountRecordId,
+ invoice,
+ invoiceItem,
+ invoiceItemRecordId,
+ bundle,
+ plan,
+ planPhase,
+ creationAuditLog,
+ tenantRecordId);
} else if (InvoiceItemType.EXTERNAL_CHARGE.equals(invoiceItem.getInvoiceItemType()) ||
InvoiceItemType.FIXED.equals(invoiceItem.getInvoiceItemType()) ||
InvoiceItemType.RECURRING.equals(invoiceItem.getInvoiceItemType())) {
- return new BusinessInvoiceItemModelDao(account, invoice, invoiceItem, bundle, plan, planPhase, creationAuditLog);
+ return new BusinessInvoiceItemModelDao(account,
+ accountRecordId,
+ invoice,
+ invoiceItem,
+ invoiceItemRecordId,
+ bundle,
+ plan,
+ planPhase,
+ creationAuditLog,
+ tenantRecordId);
} else if (InvoiceItemType.ITEM_ADJ.equals(invoiceItem.getInvoiceItemType())) {
- return new BusinessInvoiceItemAdjustmentModelDao(account, invoice, invoiceItem, bundle, plan, planPhase, creationAuditLog);
- } else if ((InvoiceItemType.CBA_ADJ.equals(invoiceItem.getInvoiceItemType()) && invoiceItem.getAmount().compareTo(BigDecimal.ZERO) <= 0) ||
+ return new BusinessInvoiceItemAdjustmentModelDao(account,
+ accountRecordId,
+ invoice,
+ invoiceItem,
+ invoiceItemRecordId,
+ bundle,
+ plan,
+ planPhase,
+ creationAuditLog,
+ tenantRecordId);
+ } else if (InvoiceItemType.CBA_ADJ.equals(invoiceItem.getInvoiceItemType()) ||
InvoiceItemType.CREDIT_ADJ.equals(invoiceItem.getInvoiceItemType())) {
- return new BusinessInvoiceItemCreditModelDao(account, invoice, invoiceItem, bundle, plan, planPhase, creationAuditLog);
+ return new BusinessInvoiceItemCreditModelDao(account,
+ accountRecordId,
+ invoice,
+ invoiceItem,
+ invoiceItemRecordId,
+ bundle,
+ plan,
+ planPhase,
+ creationAuditLog,
+ tenantRecordId);
} else {
// We don't care
return null;
}
}
- private BusinessInvoiceItemBaseModelDao(final Long invoiceItemRecordId,
- final UUID itemId,
- final UUID invoiceId,
- final Integer invoiceNumber,
- final DateTime invoiceCreatedDate,
- final LocalDate invoiceDate,
- final LocalDate invoiceTargetDate,
- final String invoiceCurrency,
- final BigDecimal invoiceBalance,
- final BigDecimal invoiceAmountPaid,
- final BigDecimal invoiceAmountCharged,
- final BigDecimal invoiceOriginalAmountCharged,
- final BigDecimal invoiceAmountCredited,
- final String itemType,
- final Boolean revenueRecognizable,
- final String bundleExternalKey,
- final String productName,
- final String productType,
- final String productCategory,
- final String slug,
- final String phase,
- final String billingPeriod,
- final LocalDate startDate,
- final LocalDate endDate,
- final BigDecimal amount,
- final String currency,
- final UUID linkedItemId,
- final DateTime createdDate,
- final String createdBy,
- final String createdReasonCode,
- final String createdComments,
- final UUID accountId,
- final String accountName,
- final String accountExternalKey,
- final Long accountRecordId,
- final Long tenantRecordId) {
+ public BusinessInvoiceItemBaseModelDao(final Long invoiceItemRecordId,
+ final UUID itemId,
+ final UUID invoiceId,
+ final Integer invoiceNumber,
+ final DateTime invoiceCreatedDate,
+ final LocalDate invoiceDate,
+ final LocalDate invoiceTargetDate,
+ final String invoiceCurrency,
+ final BigDecimal invoiceBalance,
+ final BigDecimal invoiceAmountPaid,
+ final BigDecimal invoiceAmountCharged,
+ final BigDecimal invoiceOriginalAmountCharged,
+ final BigDecimal invoiceAmountCredited,
+ final String itemType,
+ final Boolean revenueRecognizable,
+ final String bundleExternalKey,
+ final String productName,
+ final String productType,
+ final String productCategory,
+ final String slug,
+ final String phase,
+ final String billingPeriod,
+ final LocalDate startDate,
+ final LocalDate endDate,
+ final BigDecimal amount,
+ final String currency,
+ final UUID linkedItemId,
+ final DateTime createdDate,
+ final String createdBy,
+ final String createdReasonCode,
+ final String createdComments,
+ final UUID accountId,
+ final String accountName,
+ final String accountExternalKey,
+ final Long accountRecordId,
+ final Long tenantRecordId) {
super(createdDate,
createdBy,
createdReasonCode,
@@ -168,14 +207,17 @@ public abstract class BusinessInvoiceItemBaseModelDao extends BusinessModelDaoBa
this.linkedItemId = linkedItemId;
}
- protected BusinessInvoiceItemBaseModelDao(final Account account,
- final Invoice invoice,
- final InvoiceItem invoiceItem,
- @Nullable final SubscriptionBundle bundle,
- @Nullable final Plan plan,
- @Nullable final PlanPhase planPhase,
- final AuditLog creationAuditLog) {
- this(null /* TODO */,
+ public BusinessInvoiceItemBaseModelDao(final Account account,
+ final Long accountRecordId,
+ final Invoice invoice,
+ final InvoiceItem invoiceItem,
+ final Long invoiceItemRecordId,
+ @Nullable final SubscriptionBundle bundle,
+ @Nullable final Plan plan,
+ @Nullable final PlanPhase planPhase,
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
+ this(invoiceItemRecordId,
invoiceItem.getId(),
invoice.getId(),
invoice.getInvoiceNumber(),
@@ -186,7 +228,7 @@ public abstract class BusinessInvoiceItemBaseModelDao extends BusinessModelDaoBa
invoice.getBalance(),
invoice.getPaidAmount(),
invoice.getChargedAmount(),
- null /* TODO */,
+ invoice.getOriginalChargedAmount(),
invoice.getCreditAdjAmount(),
invoiceItem.getInvoiceItemType().toString(),
null /* TODO */,
@@ -210,9 +252,8 @@ public abstract class BusinessInvoiceItemBaseModelDao extends BusinessModelDaoBa
account.getId(),
account.getName(),
account.getExternalKey(),
- // TODO
- null,
- null);
+ accountRecordId,
+ tenantRecordId);
}
public Long getInvoiceItemRecordId() {
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemCreditModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemCreditModelDao.java
index 3ec8659..818550b 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemCreditModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemCreditModelDao.java
@@ -29,19 +29,25 @@ import com.ning.billing.util.audit.AuditLog;
public class BusinessInvoiceItemCreditModelDao extends BusinessInvoiceItemBaseModelDao {
public BusinessInvoiceItemCreditModelDao(final Account account,
+ final Long accountRecordId,
final Invoice invoice,
final InvoiceItem invoiceItem,
+ final Long invoiceItemRecordId,
@Nullable final SubscriptionBundle bundle,
@Nullable final Plan plan,
@Nullable final PlanPhase planPhase,
- final AuditLog creationAuditLogs) {
+ final AuditLog creationAuditLogs,
+ final Long tenantRecordId) {
super(account,
+ accountRecordId,
invoice,
invoiceItem,
+ invoiceItemRecordId,
bundle,
plan,
planPhase,
- creationAuditLogs);
+ creationAuditLogs,
+ tenantRecordId);
}
@Override
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemModelDao.java
index e6e1662..121a1f6 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceItemModelDao.java
@@ -29,19 +29,25 @@ import com.ning.billing.util.audit.AuditLog;
public class BusinessInvoiceItemModelDao extends BusinessInvoiceItemBaseModelDao {
public BusinessInvoiceItemModelDao(final Account account,
+ final Long accountRecordId,
final Invoice invoice,
final InvoiceItem invoiceItem,
+ final Long invoiceItemRecordId,
@Nullable final SubscriptionBundle bundle,
@Nullable final Plan plan,
@Nullable final PlanPhase planPhase,
- final AuditLog creationAuditLog) {
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
super(account,
+ accountRecordId,
invoice,
invoiceItem,
+ invoiceItemRecordId,
bundle,
plan,
planPhase,
- creationAuditLog);
+ creationAuditLog,
+ tenantRecordId);
}
@Override
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceModelDao.java
index 803a0d2..408394d 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceModelDao.java
@@ -85,9 +85,12 @@ public class BusinessInvoiceModelDao extends BusinessModelDaoBase {
}
public BusinessInvoiceModelDao(final Account account,
+ final Long accountRecordId,
final Invoice invoice,
- final AuditLog creationAuditLog) {
- this(null /* TODO */,
+ final Long invoiceRecordId,
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
+ this(invoiceRecordId,
invoice.getId(),
invoice.getInvoiceNumber(),
invoice.getInvoiceDate(),
@@ -105,9 +108,8 @@ public class BusinessInvoiceModelDao extends BusinessModelDaoBase {
account.getId(),
account.getName(),
account.getExternalKey(),
- // TODO
- null,
- null);
+ accountRecordId,
+ tenantRecordId);
}
@Override
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentBaseModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentBaseModelDao.java
index 5937fe2..44ecc85 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentBaseModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentBaseModelDao.java
@@ -58,47 +58,74 @@ public abstract class BusinessInvoicePaymentBaseModelDao extends BusinessModelDa
private final String currency;
public static BusinessInvoicePaymentBaseModelDao create(final Account account,
+ final Long accountRecordId,
final Invoice invoice,
final InvoicePayment invoicePayment,
+ final Long invoicePaymentRecordId,
final Payment payment,
final PaymentMethod paymentMethod,
- final AuditLog creationAuditLog) {
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
if (invoicePayment.getType().equals(InvoicePaymentType.REFUND)) {
- return new BusinessInvoicePaymentRefundModelDao(account, invoice, invoicePayment, payment, paymentMethod, creationAuditLog);
+ return new BusinessInvoicePaymentRefundModelDao(account,
+ accountRecordId,
+ invoice,
+ invoicePayment,
+ invoicePaymentRecordId,
+ payment,
+ paymentMethod,
+ creationAuditLog,
+ tenantRecordId);
} else if (invoicePayment.getType().equals(InvoicePaymentType.CHARGED_BACK)) {
- return new BusinessInvoicePaymentChargebackModelDao(account, invoice, invoicePayment, payment, paymentMethod, creationAuditLog);
+ return new BusinessInvoicePaymentChargebackModelDao(account,
+ accountRecordId,
+ invoice,
+ invoicePayment,
+ invoicePaymentRecordId,
+ payment,
+ paymentMethod,
+ creationAuditLog,
+ tenantRecordId);
} else {
- return new BusinessInvoicePaymentModelDao(account, invoice, invoicePayment, payment, paymentMethod, creationAuditLog);
+ return new BusinessInvoicePaymentModelDao(account,
+ accountRecordId,
+ invoice,
+ invoicePayment,
+ invoicePaymentRecordId,
+ payment,
+ paymentMethod,
+ creationAuditLog,
+ tenantRecordId);
}
}
- private BusinessInvoicePaymentBaseModelDao(final Long invoicePaymentRecordId,
- final UUID invoicePaymentId,
- final UUID invoiceId,
- final Integer invoiceNumber,
- final DateTime invoiceCreatedDate,
- final LocalDate invoiceDate,
- final LocalDate invoiceTargetDate,
- final String invoiceCurrency,
- final BigDecimal invoiceBalance,
- final BigDecimal invoiceAmountPaid,
- final BigDecimal invoiceAmountCharged,
- final BigDecimal invoiceOriginalAmountCharged,
- final BigDecimal invoiceAmountCredited,
- final String invoicePaymentType,
- final Long paymentNumber,
- final UUID linkedInvoicePaymentId,
- final BigDecimal amount,
- final String currency,
- final DateTime createdDate,
- final String createdBy,
- final String createdReasonCode,
- final String createdComments,
- final UUID accountId,
- final String accountName,
- final String accountExternalKey,
- final Long accountRecordId,
- final Long tenantRecordId) {
+ public BusinessInvoicePaymentBaseModelDao(final Long invoicePaymentRecordId,
+ final UUID invoicePaymentId,
+ final UUID invoiceId,
+ final Integer invoiceNumber,
+ final DateTime invoiceCreatedDate,
+ final LocalDate invoiceDate,
+ final LocalDate invoiceTargetDate,
+ final String invoiceCurrency,
+ final BigDecimal invoiceBalance,
+ final BigDecimal invoiceAmountPaid,
+ final BigDecimal invoiceAmountCharged,
+ final BigDecimal invoiceOriginalAmountCharged,
+ final BigDecimal invoiceAmountCredited,
+ final String invoicePaymentType,
+ final Long paymentNumber,
+ final UUID linkedInvoicePaymentId,
+ final BigDecimal amount,
+ final String currency,
+ final DateTime createdDate,
+ final String createdBy,
+ final String createdReasonCode,
+ final String createdComments,
+ final UUID accountId,
+ final String accountName,
+ final String accountExternalKey,
+ final Long accountRecordId,
+ final Long tenantRecordId) {
super(createdDate,
createdBy,
createdReasonCode,
@@ -129,12 +156,15 @@ public abstract class BusinessInvoicePaymentBaseModelDao extends BusinessModelDa
}
protected BusinessInvoicePaymentBaseModelDao(final Account account,
+ final Long accountRecordId,
final Invoice invoice,
final InvoicePayment invoicePayment,
+ final Long invoicePaymentRecordId,
final Payment payment,
final PaymentMethod paymentMethod,
- final AuditLog creationAuditLog) {
- this(null /* TODO */,
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
+ this(invoicePaymentRecordId,
invoicePayment.getId(),
invoice.getId(),
invoice.getInvoiceNumber(),
@@ -145,7 +175,7 @@ public abstract class BusinessInvoicePaymentBaseModelDao extends BusinessModelDa
invoice.getBalance(),
invoice.getPaidAmount(),
invoice.getChargedAmount(),
- null /* TODO */,
+ invoice.getOriginalChargedAmount(),
invoice.getCreditAdjAmount(),
invoicePayment.getType().toString(),
null /* TODO */,
@@ -159,9 +189,8 @@ public abstract class BusinessInvoicePaymentBaseModelDao extends BusinessModelDa
account.getId(),
account.getName(),
account.getExternalKey(),
- // TODO
- null,
- null);
+ accountRecordId,
+ tenantRecordId);
}
public Long getInvoicePaymentRecordId() {
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentChargebackModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentChargebackModelDao.java
index 53f1b59..4d81922 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentChargebackModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentChargebackModelDao.java
@@ -26,17 +26,23 @@ import com.ning.billing.util.audit.AuditLog;
public class BusinessInvoicePaymentChargebackModelDao extends BusinessInvoicePaymentBaseModelDao {
public BusinessInvoicePaymentChargebackModelDao(final Account account,
+ final Long accountRecordId,
final Invoice invoice,
final InvoicePayment invoicePayment,
+ final Long invoicePaymentRecordId,
final Payment payment,
final PaymentMethod paymentMethod,
- final AuditLog creationAuditLog) {
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
super(account,
+ accountRecordId,
invoice,
invoicePayment,
+ invoicePaymentRecordId,
payment,
paymentMethod,
- creationAuditLog);
+ creationAuditLog,
+ tenantRecordId);
}
@Override
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentFieldModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentFieldModelDao.java
index f178813..c4ae693 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentFieldModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentFieldModelDao.java
@@ -27,9 +27,17 @@ public class BusinessInvoicePaymentFieldModelDao extends BusinessFieldModelDao {
private final UUID invoicePaymentId;
public BusinessInvoicePaymentFieldModelDao(final Account account,
+ final Long accountRecordId,
final CustomField customField,
- final AuditLog creationAuditLog) {
- super(account, customField, creationAuditLog);
+ final Long customFieldRecordId,
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
+ super(account,
+ accountRecordId,
+ customField,
+ customFieldRecordId,
+ creationAuditLog,
+ tenantRecordId);
this.invoicePaymentId = customField.getObjectId();
}
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentModelDao.java
index 8a0751f..5c249c2 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentModelDao.java
@@ -26,17 +26,23 @@ import com.ning.billing.util.audit.AuditLog;
public class BusinessInvoicePaymentModelDao extends BusinessInvoicePaymentBaseModelDao {
public BusinessInvoicePaymentModelDao(final Account account,
+ final Long accountRecordId,
final Invoice invoice,
final InvoicePayment invoicePayment,
+ final Long invoicePaymentRecordId,
final Payment payment,
final PaymentMethod paymentMethod,
- final AuditLog creationAuditLog) {
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
super(account,
+ accountRecordId,
invoice,
invoicePayment,
+ invoicePaymentRecordId,
payment,
paymentMethod,
- creationAuditLog);
+ creationAuditLog,
+ tenantRecordId);
}
@Override
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentRefundModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentRefundModelDao.java
index aea676f..b6a18af 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentRefundModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentRefundModelDao.java
@@ -26,17 +26,23 @@ import com.ning.billing.util.audit.AuditLog;
public class BusinessInvoicePaymentRefundModelDao extends BusinessInvoicePaymentBaseModelDao {
public BusinessInvoicePaymentRefundModelDao(final Account account,
+ final Long accountRecordId,
final Invoice invoice,
final InvoicePayment invoicePayment,
+ final Long invoicePaymentRecordId,
final Payment payment,
final PaymentMethod paymentMethod,
- final AuditLog creationAuditLog) {
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
super(account,
+ accountRecordId,
invoice,
invoicePayment,
+ invoicePaymentRecordId,
payment,
paymentMethod,
- creationAuditLog);
+ creationAuditLog,
+ tenantRecordId);
}
@Override
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentTagModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentTagModelDao.java
index a0243e9..eca5ad5 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentTagModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoicePaymentTagModelDao.java
@@ -28,10 +28,19 @@ public class BusinessInvoicePaymentTagModelDao extends BusinessTagModelDao {
private final UUID invoicePaymentId;
public BusinessInvoicePaymentTagModelDao(final Account account,
+ final Long accountRecordId,
final Tag tag,
+ final Long tagRecordId,
final TagDefinition tagDefinition,
- final AuditLog creationAuditLog) {
- super(account, tag, tagDefinition, creationAuditLog);
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
+ super(account,
+ accountRecordId,
+ tag,
+ tagRecordId,
+ tagDefinition,
+ creationAuditLog,
+ tenantRecordId);
this.invoicePaymentId = tag.getObjectId();
}
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceTagModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceTagModelDao.java
index df2beaf..a94c5e7 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceTagModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessInvoiceTagModelDao.java
@@ -28,10 +28,19 @@ public class BusinessInvoiceTagModelDao extends BusinessTagModelDao {
private final UUID invoiceId;
public BusinessInvoiceTagModelDao(final Account account,
+ final Long accountRecordId,
final Tag tag,
+ final Long tagRecordId,
final TagDefinition tagDefinition,
- final AuditLog creationAuditLog) {
- super(account, tag, tagDefinition, creationAuditLog);
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
+ super(account,
+ accountRecordId,
+ tag,
+ tagRecordId,
+ tagDefinition,
+ creationAuditLog,
+ tenantRecordId);
this.invoiceId = tag.getObjectId();
}
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessOverdueStatusModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessOverdueStatusModelDao.java
index 007a19f..c839f3a 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessOverdueStatusModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessOverdueStatusModelDao.java
@@ -69,11 +69,14 @@ public class BusinessOverdueStatusModelDao extends BusinessModelDaoBase {
}
public BusinessOverdueStatusModelDao(final Account account,
+ final Long accountRecordId,
final SubscriptionBundle subscriptionBundle,
final BlockingState blockingState,
+ final Long blockingStateRecordId,
final DateTime endDate,
- final AuditLog creationAuditLog) {
- this(null /* TODO */,
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
+ this(blockingStateRecordId,
subscriptionBundle.getId(),
subscriptionBundle.getExternalKey(),
blockingState.getStateName(),
@@ -86,9 +89,8 @@ public class BusinessOverdueStatusModelDao extends BusinessModelDaoBase {
account.getId(),
account.getName(),
account.getExternalKey(),
- // TODO
- null,
- null);
+ accountRecordId,
+ tenantRecordId);
}
@Override
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessSubscriptionTransitionModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessSubscriptionTransitionModelDao.java
index 469693f..e18a8c5 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessSubscriptionTransitionModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessSubscriptionTransitionModelDao.java
@@ -78,14 +78,17 @@ public class BusinessSubscriptionTransitionModelDao extends BusinessModelDaoBase
}
public BusinessSubscriptionTransitionModelDao(final Account account,
+ final Long accountRecordId,
final SubscriptionBundle bundle,
final SubscriptionTransition transition,
+ final Long subscriptionEventRecordId,
final DateTime requestedTimestamp,
final BusinessSubscriptionEvent event,
final BusinessSubscription previousSubscription,
final BusinessSubscription nextSubscription,
- final AuditLog creationAuditLog) {
- this(null /* TODO */,
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
+ this(subscriptionEventRecordId,
bundle.getId(),
bundle.getExternalKey(),
transition.getSubscriptionId(),
@@ -100,9 +103,8 @@ public class BusinessSubscriptionTransitionModelDao extends BusinessModelDaoBase
account.getId(),
account.getName(),
account.getExternalKey(),
- // TODO
- null,
- null);
+ accountRecordId,
+ tenantRecordId);
}
@Override
diff --git a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessTagModelDao.java b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessTagModelDao.java
index f9f9b33..852d6d3 100644
--- a/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessTagModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/main/java/com/ning/billing/osgi/bundles/analytics/dao/model/BusinessTagModelDao.java
@@ -38,32 +38,53 @@ public abstract class BusinessTagModelDao extends BusinessModelDaoBase {
private final String name;
public static BusinessTagModelDao create(final Account account,
+ final Long accountRecordId,
final Tag tag,
+ final Long tagRecordId,
final TagDefinition tagDefinition,
- final AuditLog creationAuditLog) {
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
if (ObjectType.ACCOUNT.equals(tag.getObjectType())) {
- return new BusinessAccountTagModelDao(account, tag, tagDefinition, creationAuditLog);
+ return new BusinessAccountTagModelDao(account,
+ accountRecordId,
+ tag,
+ tagRecordId,
+ tagDefinition,
+ creationAuditLog,
+ tenantRecordId);
} else if (ObjectType.INVOICE_PAYMENT.equals(tag.getObjectType())) {
- return new BusinessInvoicePaymentTagModelDao(account, tag, tagDefinition, creationAuditLog);
+ return new BusinessInvoicePaymentTagModelDao(account,
+ accountRecordId,
+ tag,
+ tagRecordId,
+ tagDefinition,
+ creationAuditLog,
+ tenantRecordId);
} else if (ObjectType.INVOICE.equals(tag.getObjectType())) {
- return new BusinessInvoiceTagModelDao(account, tag, tagDefinition, creationAuditLog);
+ return new BusinessInvoiceTagModelDao(account,
+ accountRecordId,
+ tag,
+ tagRecordId,
+ tagDefinition,
+ creationAuditLog,
+ tenantRecordId);
} else {
// We don't care
return null;
}
}
- private BusinessTagModelDao(final Long tagRecordId,
- final String name,
- final DateTime createdDate,
- final String createdBy,
- final String createdReasonCode,
- final String createdComments,
- final UUID accountId,
- final String accountName,
- final String accountExternalKey,
- final Long accountRecordId,
- final Long tenantRecordId) {
+ public BusinessTagModelDao(final Long tagRecordId,
+ final String name,
+ final DateTime createdDate,
+ final String createdBy,
+ final String createdReasonCode,
+ final String createdComments,
+ final UUID accountId,
+ final String accountName,
+ final String accountExternalKey,
+ final Long accountRecordId,
+ final Long tenantRecordId) {
super(createdDate,
createdBy,
createdReasonCode,
@@ -77,11 +98,14 @@ public abstract class BusinessTagModelDao extends BusinessModelDaoBase {
this.name = name;
}
- protected BusinessTagModelDao(final Account account,
- final Tag tag,
- final TagDefinition tagDefinition,
- final AuditLog creationAuditLog) {
- this(null /* TODO */,
+ public BusinessTagModelDao(final Account account,
+ final Long accountRecordId,
+ final Tag tag,
+ final Long tagRecordId,
+ final TagDefinition tagDefinition,
+ final AuditLog creationAuditLog,
+ final Long tenantRecordId) {
+ this(tagRecordId,
tagDefinition.getName(),
tag.getCreatedDate(),
creationAuditLog.getUserName(),
@@ -90,9 +114,8 @@ public abstract class BusinessTagModelDao extends BusinessModelDaoBase {
account.getId(),
account.getName(),
account.getExternalKey(),
- // TODO
- null,
- null);
+ accountRecordId,
+ tenantRecordId);
}
public Long getTagRecordId() {
diff --git a/osgi-bundles/bundles/analytics/src/main/resources/com/ning/billing/osgi/bundles/analytics/ddl.sql b/osgi-bundles/bundles/analytics/src/main/resources/com/ning/billing/osgi/bundles/analytics/ddl.sql
index c038055..5fc8c5f 100644
--- a/osgi-bundles/bundles/analytics/src/main/resources/com/ning/billing/osgi/bundles/analytics/ddl.sql
+++ b/osgi-bundles/bundles/analytics/src/main/resources/com/ning/billing/osgi/bundles/analytics/ddl.sql
@@ -50,6 +50,7 @@ create table bst (
);
create index bst_bundle_external_key on bst(bundle_external_key);
create index bst_account_id on bst(account_id);
+create index bst_account_record_id on bst(account_record_id);
create index bst_tenant_account_record_id on bst(tenant_record_id, account_record_id);
-- Accounts
@@ -89,8 +90,9 @@ create table bac (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
-create unique index bac_account_external_key on bac(account_external_key);
-create unique index bac_account_id on bac(account_id);
+create index bac_account_external_key on bac(account_external_key);
+create index bac_account_id on bac(account_id);
+create index bac_account_record_id on bac(account_record_id);
create index bac_tenant_account_record_id on bac(tenant_record_id, account_record_id);
-- Invoices
@@ -119,8 +121,10 @@ create table bin (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
-create unique index bin_invoice_record_id on bin(invoice_record_id);
-create unique index bin_invoice_id on bin(invoice_id);
+create index bin_invoice_record_id on bin(invoice_record_id);
+create index bin_invoice_id on bin(invoice_id);
+create index bin_account_id on bin(account_id);
+create index bin_account_record_id on bin(account_record_id);
create index bin_tenant_account_record_id on bin(tenant_record_id, account_record_id);
-- Invoice adjustments (type REFUND_ADJ)
@@ -165,8 +169,10 @@ create table bia (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
-create unique index bia_invoice_item_record_id on bia(invoice_item_record_id);
-create unique index bia_item_id on bia(item_id);
+create index bia_invoice_item_record_id on bia(invoice_item_record_id);
+create index bia_item_id on bia(item_id);
+create index bia_account_id on bia(account_id);
+create index bia_account_record_id on bia(account_record_id);
create index bia_tenant_account_record_id on bia(tenant_record_id, account_record_id);
-- Invoice items (without adjustments, type EXTERNAL_CHARGE, FIXED and RECURRING)
@@ -211,8 +217,10 @@ create table bii (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
-create unique index bii_invoice_item_record_id on bii(invoice_item_record_id);
-create unique index bii_item_id on bii(item_id);
+create index bii_invoice_item_record_id on bii(invoice_item_record_id);
+create index bii_item_id on bii(item_id);
+create index bii_account_id on bii(account_id);
+create index bii_account_record_id on bii(account_record_id);
create index bii_tenant_account_record_id on bii(tenant_record_id, account_record_id);
-- Invoice items adjustments (type ITEM_ADJ)
@@ -257,11 +265,13 @@ create table biia (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
-create unique index biia_invoice_item_record_id on biia(invoice_item_record_id);
-create unique index biia_item_id on biia(item_id);
+create index biia_invoice_item_record_id on biia(invoice_item_record_id);
+create index biia_item_id on biia(item_id);
+create index biia_account_id on biia(account_id);
+create index biia_account_record_id on biia(account_record_id);
create index biia_tenant_account_record_id on biia(tenant_record_id, account_record_id);
--- Account credits (type CBA_ADJ (< 0 only, for applied credits) and CREDIT_ADJ)
+-- Account credits (type CBA_ADJ and CREDIT_ADJ)
drop table if exists biic;
create table biic (
record_id int(11) unsigned not null auto_increment
@@ -303,8 +313,10 @@ create table biic (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
-create unique index biic_invoice_item_record_id on biic(invoice_item_record_id);
-create unique index biic_item_id on biic(item_id);
+create index biic_invoice_item_record_id on biic(invoice_item_record_id);
+create index biic_item_id on biic(item_id);
+create index biic_account_id on biic(account_id);
+create index biic_account_record_id on biic(account_record_id);
create index biic_tenant_account_record_id on biic(tenant_record_id, account_record_id);
-- Invoice payments
@@ -340,8 +352,10 @@ create table bip (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
-create unique index bip_invoice_payment_record_id on bip(invoice_payment_record_id);
-create unique index bip_invoice_payment_id on bip(invoice_payment_id);
+create index bip_invoice_payment_record_id on bip(invoice_payment_record_id);
+create index bip_invoice_payment_id on bip(invoice_payment_id);
+create index bip_account_id on bip(account_id);
+create index bip_account_record_id on bip(account_record_id);
create index bip_tenant_account_record_id on bip(tenant_record_id, account_record_id);
-- Invoice refunds
@@ -361,10 +375,9 @@ create table bipr (
, invoice_amount_charged numeric(10, 4) default 0
, invoice_original_amount_charged numeric(10, 4) default 0
, invoice_amount_credited numeric(10, 4) default 0
-, payment_id char(36) not null
+, invoice_payment_type varchar(50) default null
, payment_number bigint default null
-, payment_amount numeric(10, 4) default 0
-, payment_currency char(50) default null
+, linked_invoice_payment_id char(36) default null
, amount numeric(10, 4) default 0
, currency char(50) default null
, created_date datetime not null
@@ -378,8 +391,10 @@ create table bipr (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
-create unique index bipr_invoice_payment_record_id on bipr(invoice_payment_record_id);
-create unique index bipr_invoice_payment_id on bipr(invoice_payment_id);
+create index bipr_invoice_payment_record_id on bipr(invoice_payment_record_id);
+create index bipr_invoice_payment_id on bipr(invoice_payment_id);
+create index bipr_account_id on bipr(account_id);
+create index bipr_account_record_id on bipr(account_record_id);
create index bipr_tenant_account_record_id on bipr(tenant_record_id, account_record_id);
-- Invoice payment chargebacks
@@ -399,10 +414,9 @@ create table bipc (
, invoice_amount_charged numeric(10, 4) default 0
, invoice_original_amount_charged numeric(10, 4) default 0
, invoice_amount_credited numeric(10, 4) default 0
-, payment_id char(36) not null
+, invoice_payment_type varchar(50) default null
, payment_number bigint default null
-, payment_amount numeric(10, 4) default 0
-, payment_currency char(50) default null
+, linked_invoice_payment_id char(36) default null
, amount numeric(10, 4) default 0
, currency char(50) default null
, created_date datetime not null
@@ -416,8 +430,10 @@ create table bipc (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
-create unique index bipc_invoice_payment_record_id on bipc(invoice_payment_record_id);
-create unique index bipc_invoice_payment_id on bipc(invoice_payment_id);
+create index bipc_invoice_payment_record_id on bipc(invoice_payment_record_id);
+create index bipc_invoice_payment_id on bipc(invoice_payment_id);
+create index bipc_account_id on bipc(account_id);
+create index bipc_account_record_id on bipc(account_record_id);
create index bipc_tenant_account_record_id on bipc(tenant_record_id, account_record_id);
drop table if exists bos;
@@ -440,6 +456,8 @@ create table bos (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
+create index bos_account_id on bos(account_id);
+create index bos_account_record_id on bos(account_record_id);
create index bos_tenant_account_record_id on bos(tenant_record_id, account_record_id);
drop table if exists bac_tags;
@@ -458,6 +476,8 @@ create table bac_tags (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
+create index bac_tags_account_id on bac_tags(account_id);
+create index bac_tags_account_record_id on bac_tags(account_record_id);
create index bac_tags_tenant_account_record_id on bac_tags(tenant_record_id, account_record_id);
drop table if exists bin_tags;
@@ -477,6 +497,8 @@ create table bin_tags (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
+create index bin_tags_account_id on bin_tags(account_id);
+create index bin_tags_account_record_id on bin_tags(account_record_id);
create index bin_tags_tenant_account_record_id on bin_tags(tenant_record_id, account_record_id);
drop table if exists bip_tags;
@@ -496,6 +518,8 @@ create table bip_tags (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
+create index bip_tags_account_id on bip_tags(account_id);
+create index bip_tags_account_record_id on bip_tags(account_record_id);
create index bip_tags_tenant_account_record_id on bip_tags(tenant_record_id, account_record_id);
drop table if exists bac_fields;
@@ -515,6 +539,8 @@ create table bac_fields (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
+create index bac_fields_account_id on bac_fields(account_id);
+create index bac_fields_account_record_id on bac_fields(account_record_id);
create index bac_fields_tenant_account_record_id on bac_fields(tenant_record_id, account_record_id);
drop table if exists bin_fields;
@@ -535,6 +561,8 @@ create table bin_fields (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
+create index bin_fields_account_id on bin_fields(account_id);
+create index bin_fields_account_record_id on bin_fields(account_record_id);
create index bin_fields_tenant_account_record_id on bin_fields(tenant_record_id, account_record_id);
drop table if exists bip_fields;
@@ -555,4 +583,6 @@ create table bip_fields (
, tenant_record_id int(11) unsigned default null
, primary key(record_id)
);
+create index bip_fields_account_id on bip_fields(account_id);
+create index bip_fields_account_record_id on bip_fields(account_record_id);
create index bip_fields_tenant_account_record_id on bip_fields(tenant_record_id, account_record_id);
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/AnalyticsTestSuiteNoDB.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/AnalyticsTestSuiteNoDB.java
index 1343051..b4ae0e5 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/AnalyticsTestSuiteNoDB.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/AnalyticsTestSuiteNoDB.java
@@ -68,6 +68,16 @@ import com.google.common.collect.ImmutableList;
public abstract class AnalyticsTestSuiteNoDB {
+ protected final Long accountRecordId = 1L;
+ protected final Long subscriptionEventRecordId = 2L;
+ protected final Long invoiceRecordId = 3L;
+ protected final Long invoiceItemRecordId = 4L;
+ protected final Long invoicePaymentRecordId = 5L;
+ protected final Long blockingStateRecordId = 6L;
+ protected final Long fieldRecordId = 7L;
+ protected final Long tagRecordId = 8L;
+ protected final Long tenantRecordId = 9L;
+
protected Account account;
protected SubscriptionBundle bundle;
protected Plan plan;
@@ -100,8 +110,9 @@ public abstract class AnalyticsTestSuiteNoDB {
Assert.assertEquals(businessEntityBase.getAccountExternalKey(), account.getExternalKey());
}
- protected void verifyBusinessModelDaoBase(final BusinessModelDaoBase businessModelDaoBase) {
- //Assert.assertEquals(businessModelDaoBase.getRecordId(), /* TODO */);
+ protected void verifyBusinessModelDaoBase(final BusinessModelDaoBase businessModelDaoBase,
+ final Long accountRecordId,
+ final Long tenantRecordId) {
Assert.assertEquals(businessModelDaoBase.getCreatedDate(), account.getCreatedDate());
Assert.assertEquals(businessModelDaoBase.getCreatedBy(), auditLog.getUserName());
Assert.assertEquals(businessModelDaoBase.getCreatedReasonCode(), auditLog.getReasonCode());
@@ -109,8 +120,8 @@ public abstract class AnalyticsTestSuiteNoDB {
Assert.assertEquals(businessModelDaoBase.getAccountId(), account.getId());
Assert.assertEquals(businessModelDaoBase.getAccountName(), account.getName());
Assert.assertEquals(businessModelDaoBase.getAccountExternalKey(), account.getExternalKey());
- //Assert.assertEquals(businessModelDaoBase.getAccountRecordId(), /* TODO */);
- //Assert.assertEquals(businessModelDaoBase.getTenantRecordId(), /* TODO */);
+ Assert.assertEquals(businessModelDaoBase.getAccountRecordId(), accountRecordId);
+ Assert.assertEquals(businessModelDaoBase.getTenantRecordId(), tenantRecordId);
}
@BeforeMethod(groups = "fast")
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessAccount.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessAccount.java
index c24a6a2..97dd7d9 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessAccount.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessAccount.java
@@ -29,10 +29,12 @@ public class TestBusinessAccount extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructor() throws Exception {
final BusinessAccountModelDao accountModelDao = new BusinessAccountModelDao(account,
+ accountRecordId,
BigDecimal.ONE,
invoice,
payment,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessAccount businessAccount = new BusinessAccount(accountModelDao);
verifyBusinessEntityBase(businessAccount);
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessField.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessField.java
index d768ef7..afdd492 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessField.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessField.java
@@ -29,7 +29,12 @@ public class TestBusinessField extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructorAccount() throws Exception {
- final BusinessAccountFieldModelDao businessAccountFieldModelDao = new BusinessAccountFieldModelDao(account, customField, auditLog);
+ final BusinessAccountFieldModelDao businessAccountFieldModelDao = new BusinessAccountFieldModelDao(account,
+ accountRecordId,
+ customField,
+ fieldRecordId,
+ auditLog,
+ tenantRecordId);
final BusinessField businessField = BusinessField.create(businessAccountFieldModelDao);
verifyBusinessField(businessField);
Assert.assertEquals(businessField.getObjectType(), ObjectType.ACCOUNT);
@@ -37,7 +42,12 @@ public class TestBusinessField extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructorInvoice() throws Exception {
- final BusinessInvoiceFieldModelDao businessInvoiceFieldModelDao = new BusinessInvoiceFieldModelDao(account, customField, auditLog);
+ final BusinessInvoiceFieldModelDao businessInvoiceFieldModelDao = new BusinessInvoiceFieldModelDao(account,
+ accountRecordId,
+ customField,
+ fieldRecordId,
+ auditLog,
+ tenantRecordId);
final BusinessField businessField = BusinessField.create(businessInvoiceFieldModelDao);
verifyBusinessField(businessField);
Assert.assertEquals(businessField.getObjectType(), ObjectType.INVOICE);
@@ -45,7 +55,12 @@ public class TestBusinessField extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructorPayment() throws Exception {
- final BusinessInvoicePaymentFieldModelDao invoicePaymentFieldModelDao = new BusinessInvoicePaymentFieldModelDao(account, customField, auditLog);
+ final BusinessInvoicePaymentFieldModelDao invoicePaymentFieldModelDao = new BusinessInvoicePaymentFieldModelDao(account,
+ accountRecordId,
+ customField,
+ fieldRecordId,
+ auditLog,
+ tenantRecordId);
final BusinessField businessField = BusinessField.create(invoicePaymentFieldModelDao);
verifyBusinessField(businessField);
Assert.assertEquals(businessField.getObjectType(), ObjectType.INVOICE_PAYMENT);
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoice.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoice.java
index 23048e7..95c2014 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoice.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoice.java
@@ -29,14 +29,22 @@ public class TestBusinessInvoice extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructor() throws Exception {
- final BusinessInvoiceModelDao invoiceModelDao = new BusinessInvoiceModelDao(account, invoice, auditLog);
+ final BusinessInvoiceModelDao invoiceModelDao = new BusinessInvoiceModelDao(account,
+ accountRecordId,
+ invoice,
+ invoiceRecordId,
+ auditLog,
+ tenantRecordId);
final BusinessInvoiceItemBaseModelDao invoiceItemBaseModelDao = BusinessInvoiceItemBaseModelDao.create(account,
+ accountRecordId,
invoice,
invoiceItem,
+ invoiceItemRecordId,
bundle,
plan,
phase,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessInvoice businessInvoice = new BusinessInvoice(invoiceModelDao,
ImmutableList.<BusinessInvoiceItemBaseModelDao>of(invoiceItemBaseModelDao));
verifyBusinessEntityBase(businessInvoice);
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoiceItem.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoiceItem.java
index b60af52..9a381e3 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoiceItem.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoiceItem.java
@@ -27,12 +27,15 @@ public class TestBusinessInvoiceItem extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructor() throws Exception {
final BusinessInvoiceItemBaseModelDao invoiceItemBaseModelDao = BusinessInvoiceItemBaseModelDao.create(account,
+ accountRecordId,
invoice,
invoiceItem,
+ invoiceItemRecordId,
bundle,
plan,
phase,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessInvoiceItem businessInvoiceItem = new BusinessInvoiceItem(invoiceItemBaseModelDao);
verifyBusinessEntityBase(businessInvoiceItem);
Assert.assertEquals(businessInvoiceItem.getItemId(), invoiceItemBaseModelDao.getItemId());
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoicePayment.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoicePayment.java
index 7521def..c4c326d 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoicePayment.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessInvoicePayment.java
@@ -28,11 +28,14 @@ public class TestBusinessInvoicePayment extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructor() throws Exception {
final BusinessInvoicePaymentBaseModelDao invoicePaymentBaseModelDao = BusinessInvoicePaymentModelDao.create(account,
+ accountRecordId,
invoice,
invoicePayment,
+ invoicePaymentRecordId,
payment,
paymentMethod,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessInvoicePayment businessInvoicePayment = new BusinessInvoicePayment(invoicePaymentBaseModelDao);
verifyBusinessEntityBase(businessInvoicePayment);
Assert.assertEquals(businessInvoicePayment.getInvoicePaymentId(), invoicePaymentBaseModelDao.getInvoicePaymentId());
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessOverdueStatus.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessOverdueStatus.java
index 651dea3..12bf3e3 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessOverdueStatus.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessOverdueStatus.java
@@ -31,10 +31,13 @@ public class TestBusinessOverdueStatus extends AnalyticsTestSuiteNoDB {
public void testConstructor() throws Exception {
final DateTime endDate = new DateTime(2005, 6, 5, 4, 5, 6, DateTimeZone.UTC);
final BusinessOverdueStatusModelDao businessOverdueStatusModelDao = new BusinessOverdueStatusModelDao(account,
+ accountRecordId,
bundle,
blockingState,
+ blockingStateRecordId,
endDate,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessOverdueStatus businessOverdueStatus = new BusinessOverdueStatus(businessOverdueStatusModelDao);
verifyBusinessEntityBase(businessOverdueStatus);
Assert.assertEquals(businessOverdueStatus.getObjectType(), ObjectType.BUNDLE.toString());
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessSnapshot.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessSnapshot.java
index acc538b..7952254 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessSnapshot.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessSnapshot.java
@@ -46,44 +46,65 @@ public class TestBusinessSnapshot extends AnalyticsTestSuiteNoDB {
public void testConstructor() throws Exception {
// Account
final BusinessAccountModelDao accountModelDao = new BusinessAccountModelDao(account,
+ accountRecordId,
BigDecimal.ONE,
invoice,
payment,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessAccount businessAccount = new BusinessAccount(accountModelDao);
// Field
- final BusinessAccountFieldModelDao businessAccountFieldModelDao = new BusinessAccountFieldModelDao(account, customField, auditLog);
+ final BusinessAccountFieldModelDao businessAccountFieldModelDao = new BusinessAccountFieldModelDao(account,
+ accountRecordId,
+ customField,
+ fieldRecordId,
+ auditLog,
+ tenantRecordId);
final BusinessField businessField = BusinessField.create(businessAccountFieldModelDao);
// Invoice
- final BusinessInvoiceModelDao invoiceModelDao = new BusinessInvoiceModelDao(account, invoice, auditLog);
+ final BusinessInvoiceModelDao invoiceModelDao = new BusinessInvoiceModelDao(account,
+ accountRecordId,
+ invoice,
+ invoiceRecordId,
+ auditLog,
+ tenantRecordId);
final BusinessInvoiceItemBaseModelDao invoiceItemBaseModelDao = BusinessInvoiceItemBaseModelDao.create(account,
+ accountRecordId,
invoice,
invoiceItem,
+ invoiceItemRecordId,
bundle,
plan,
phase,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessInvoice businessInvoice = new BusinessInvoice(invoiceModelDao,
ImmutableList.<BusinessInvoiceItemBaseModelDao>of(invoiceItemBaseModelDao));
// Invoice payment
final BusinessInvoicePaymentBaseModelDao invoicePaymentBaseModelDao = BusinessInvoicePaymentModelDao.create(account,
+ accountRecordId,
invoice,
invoicePayment,
+ invoicePaymentRecordId,
payment,
paymentMethod,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessInvoicePayment businessInvoicePayment = new BusinessInvoicePayment(invoicePaymentBaseModelDao);
// Overdue
final DateTime endDate = new DateTime(2005, 6, 5, 4, 5, 6, DateTimeZone.UTC);
final BusinessOverdueStatusModelDao businessOverdueStatusModelDao = new BusinessOverdueStatusModelDao(account,
+ accountRecordId,
bundle,
blockingState,
+ blockingStateRecordId,
endDate,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessOverdueStatus businessOverdueStatus = new BusinessOverdueStatus(businessOverdueStatusModelDao);
// Subscriptions
@@ -94,20 +115,26 @@ public class TestBusinessSnapshot extends AnalyticsTestSuiteNoDB {
final BusinessSubscription previousSubscription = null;
final BusinessSubscription nextSubscription = new BusinessSubscription(null, null, null, Currency.GBP, startDate, SubscriptionState.ACTIVE);
final BusinessSubscriptionTransitionModelDao subscriptionTransitionModelDao = new BusinessSubscriptionTransitionModelDao(account,
+ accountRecordId,
bundle,
subscriptionTransition,
+ subscriptionEventRecordId,
requestedTimestamp,
event,
previousSubscription,
nextSubscription,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessSubscriptionTransition businessSubscriptionTransition = new BusinessSubscriptionTransition(subscriptionTransitionModelDao);
// Tag
final BusinessAccountTagModelDao businessAccountTagModelDao = new BusinessAccountTagModelDao(account,
+ accountRecordId,
tag,
+ tagRecordId,
tagDefinition,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessTag businessTag = BusinessTag.create(businessAccountTagModelDao);
// Create the snapshot
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessSubscriptionTransition.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessSubscriptionTransition.java
index 2edd44f..9c1d3b5 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessSubscriptionTransition.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessSubscriptionTransition.java
@@ -39,13 +39,16 @@ public class TestBusinessSubscriptionTransition extends AnalyticsTestSuiteNoDB {
final BusinessSubscription previousSubscription = null;
final BusinessSubscription nextSubscription = new BusinessSubscription(null, null, null, Currency.GBP, startDate, SubscriptionState.ACTIVE);
final BusinessSubscriptionTransitionModelDao subscriptionTransitionModelDao = new BusinessSubscriptionTransitionModelDao(account,
+ accountRecordId,
bundle,
subscriptionTransition,
+ subscriptionEventRecordId,
requestedTimestamp,
event,
previousSubscription,
nextSubscription,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessSubscriptionTransition businessSubscriptionTransition = new BusinessSubscriptionTransition(subscriptionTransitionModelDao);
verifyBusinessEntityBase(businessSubscriptionTransition);
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessTag.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessTag.java
index e1e50e1..90d0edc 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessTag.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/TestBusinessTag.java
@@ -30,9 +30,12 @@ public class TestBusinessTag extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructorAccount() throws Exception {
final BusinessAccountTagModelDao businessAccountTagModelDao = new BusinessAccountTagModelDao(account,
+ accountRecordId,
tag,
+ tagRecordId,
tagDefinition,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessTag businessTag = BusinessTag.create(businessAccountTagModelDao);
verifyBusinessTag(businessTag);
Assert.assertEquals(businessTag.getObjectType(), ObjectType.ACCOUNT);
@@ -41,9 +44,12 @@ public class TestBusinessTag extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructorInvoice() throws Exception {
final BusinessInvoiceTagModelDao businessInvoiceTagModelDao = new BusinessInvoiceTagModelDao(account,
+ accountRecordId,
tag,
+ tagRecordId,
tagDefinition,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessTag businessTag = BusinessTag.create(businessInvoiceTagModelDao);
verifyBusinessTag(businessTag);
Assert.assertEquals(businessTag.getObjectType(), ObjectType.INVOICE);
@@ -52,9 +58,12 @@ public class TestBusinessTag extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructorPayment() throws Exception {
final BusinessInvoicePaymentTagModelDao invoicePaymentTagModelDao = new BusinessInvoicePaymentTagModelDao(account,
+ accountRecordId,
tag,
+ tagRecordId,
tagDefinition,
- auditLog);
+ auditLog,
+ tenantRecordId);
final BusinessTag businessTag = BusinessTag.create(invoicePaymentTagModelDao);
verifyBusinessTag(businessTag);
Assert.assertEquals(businessTag.getObjectType(), ObjectType.INVOICE_PAYMENT);
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/user/TestDefaultAnalyticsUserApi.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/user/TestDefaultAnalyticsUserApi.java
index d708ca0..0fdafdd 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/user/TestDefaultAnalyticsUserApi.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/api/user/TestDefaultAnalyticsUserApi.java
@@ -31,10 +31,12 @@ public class TestDefaultAnalyticsUserApi extends AnalyticsTestSuiteWithEmbeddedD
@Test(groups = "slow")
public void testAccountSnapshot() throws Exception {
final BusinessAccountModelDao accountModelDao = new BusinessAccountModelDao(account,
+ accountRecordId,
BigDecimal.ONE,
invoice,
payment,
- auditLog);
+ auditLog,
+ tenantRecordId);
analyticsSqlDao.create(accountModelDao.getTableName(), accountModelDao, callContext);
final AnalyticsUserApi analyticsUserApi = new AnalyticsUserApi(logService, killbillAPI, killbillDataSource);
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountFieldModelDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountFieldModelDao.java
index 348c81f..5b9bb9b 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountFieldModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountFieldModelDao.java
@@ -25,9 +25,14 @@ public class TestBusinessAccountFieldModelDao extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructor() throws Exception {
- final BusinessAccountFieldModelDao accountFieldModelDao = new BusinessAccountFieldModelDao(account, customField, auditLog);
- verifyBusinessModelDaoBase(accountFieldModelDao);
- //Assert.assertEquals(accountFieldModelDao.getCustomFieldRecordId(), /* TODO */);
+ final BusinessAccountFieldModelDao accountFieldModelDao = new BusinessAccountFieldModelDao(account,
+ accountRecordId,
+ customField,
+ fieldRecordId,
+ auditLog,
+ tenantRecordId);
+ verifyBusinessModelDaoBase(accountFieldModelDao, accountRecordId, tenantRecordId);
+ Assert.assertEquals(accountFieldModelDao.getCustomFieldRecordId(), fieldRecordId);
Assert.assertEquals(accountFieldModelDao.getName(), customField.getFieldName());
Assert.assertEquals(accountFieldModelDao.getValue(), customField.getFieldValue());
}
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountModelDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountModelDao.java
index 8353e81..5cb258e 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountModelDao.java
@@ -27,7 +27,13 @@ public class TestBusinessAccountModelDao extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructorWithNulls() throws Exception {
- final BusinessAccountModelDao accountModelDao = new BusinessAccountModelDao(account, BigDecimal.ONE, null, null, auditLog);
+ final BusinessAccountModelDao accountModelDao = new BusinessAccountModelDao(account,
+ accountRecordId,
+ BigDecimal.ONE,
+ null,
+ null,
+ auditLog,
+ tenantRecordId);
verifyAccountFields(accountModelDao);
Assert.assertEquals(accountModelDao.getBalance(), BigDecimal.ONE);
Assert.assertNull(accountModelDao.getLastInvoiceDate());
@@ -37,7 +43,13 @@ public class TestBusinessAccountModelDao extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructorWithoutNulls() throws Exception {
- final BusinessAccountModelDao accountModelDao = new BusinessAccountModelDao(account, BigDecimal.ONE, invoice, payment, auditLog);
+ final BusinessAccountModelDao accountModelDao = new BusinessAccountModelDao(account,
+ accountRecordId,
+ BigDecimal.ONE,
+ invoice,
+ payment,
+ auditLog,
+ tenantRecordId);
verifyAccountFields(accountModelDao);
Assert.assertEquals(accountModelDao.getBalance(), BigDecimal.ONE);
Assert.assertEquals(accountModelDao.getLastInvoiceDate(), invoice.getInvoiceDate());
@@ -46,7 +58,7 @@ public class TestBusinessAccountModelDao extends AnalyticsTestSuiteNoDB {
}
private void verifyAccountFields(final BusinessAccountModelDao accountModelDao) {
- verifyBusinessModelDaoBase(accountModelDao);
+ verifyBusinessModelDaoBase(accountModelDao, accountRecordId, tenantRecordId);
Assert.assertEquals(accountModelDao.getEmail(), account.getEmail());
Assert.assertEquals(accountModelDao.getFirstNameLength(), account.getFirstNameLength());
Assert.assertEquals(accountModelDao.getCurrency(), account.getCurrency().toString());
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountTagModelDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountTagModelDao.java
index cdc1bbc..750c00a 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountTagModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessAccountTagModelDao.java
@@ -25,9 +25,15 @@ public class TestBusinessAccountTagModelDao extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructor() throws Exception {
- final BusinessAccountTagModelDao tagModelDao = new BusinessAccountTagModelDao(account, tag, tagDefinition, auditLog);
- verifyBusinessModelDaoBase(tagModelDao);
- //Assert.assertEquals(tagModelDao.getTagRecordId(), /* TODO */);
+ final BusinessAccountTagModelDao tagModelDao = new BusinessAccountTagModelDao(account,
+ accountRecordId,
+ tag,
+ tagRecordId,
+ tagDefinition,
+ auditLog,
+ tenantRecordId);
+ verifyBusinessModelDaoBase(tagModelDao, accountRecordId, tenantRecordId);
+ Assert.assertEquals(tagModelDao.getTagRecordId(), tagRecordId);
Assert.assertEquals(tagModelDao.getName(), tagDefinition.getName());
}
}
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceFieldModelDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceFieldModelDao.java
index c42b4a2..4bc36ff 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceFieldModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceFieldModelDao.java
@@ -26,10 +26,13 @@ public class TestBusinessInvoiceFieldModelDao extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructor() throws Exception {
final BusinessInvoiceFieldModelDao invoiceFieldModelDao = new BusinessInvoiceFieldModelDao(account,
+ accountRecordId,
customField,
- auditLog);
- verifyBusinessModelDaoBase(invoiceFieldModelDao);
- //Assert.assertEquals(invoiceFieldModelDao.getCustomFieldRecordId(), /* TODO */);
+ fieldRecordId,
+ auditLog,
+ tenantRecordId);
+ verifyBusinessModelDaoBase(invoiceFieldModelDao, accountRecordId, tenantRecordId);
+ Assert.assertEquals(invoiceFieldModelDao.getCustomFieldRecordId(), fieldRecordId);
Assert.assertEquals(invoiceFieldModelDao.getInvoiceId(), customField.getObjectId());
Assert.assertEquals(invoiceFieldModelDao.getName(), customField.getFieldName());
Assert.assertEquals(invoiceFieldModelDao.getValue(), customField.getFieldValue());
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceItemModelDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceItemModelDao.java
index 3957591..fc802ad 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceItemModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceItemModelDao.java
@@ -26,12 +26,15 @@ public class TestBusinessInvoiceItemModelDao extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructorWithNulls() throws Exception {
final BusinessInvoiceItemModelDao invoiceItemModelDao = new BusinessInvoiceItemModelDao(account,
+ accountRecordId,
invoice,
invoiceItem,
+ invoiceItemRecordId,
null,
null,
null,
- auditLog);
+ auditLog,
+ tenantRecordId);
verifyInvoiceItemFields(invoiceItemModelDao);
Assert.assertNull(invoiceItemModelDao.getBundleExternalKey());
Assert.assertNull(invoiceItemModelDao.getProductName());
@@ -46,12 +49,15 @@ public class TestBusinessInvoiceItemModelDao extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructorWithoutNulls() throws Exception {
final BusinessInvoiceItemModelDao invoiceItemModelDao = new BusinessInvoiceItemModelDao(account,
+ accountRecordId,
invoice,
invoiceItem,
+ invoiceItemRecordId,
bundle,
plan,
phase,
- auditLog);
+ auditLog,
+ tenantRecordId);
verifyInvoiceItemFields(invoiceItemModelDao);
Assert.assertEquals(invoiceItemModelDao.getBundleExternalKey(), bundle.getExternalKey());
Assert.assertEquals(invoiceItemModelDao.getProductName(), plan.getProduct().getName());
@@ -64,8 +70,8 @@ public class TestBusinessInvoiceItemModelDao extends AnalyticsTestSuiteNoDB {
}
private void verifyInvoiceItemFields(final BusinessInvoiceItemModelDao invoiceItemModelDao) {
- verifyBusinessModelDaoBase(invoiceItemModelDao);
- //Assert.assertEquals(invoiceItemModelDao.getInvoiceItemRecordId(), /* TODO */);
+ verifyBusinessModelDaoBase(invoiceItemModelDao, accountRecordId, tenantRecordId);
+ Assert.assertEquals(invoiceItemModelDao.getInvoiceItemRecordId(), invoiceItemRecordId);
Assert.assertEquals(invoiceItemModelDao.getItemId(), invoiceItem.getId());
Assert.assertEquals(invoiceItemModelDao.getInvoiceId(), invoice.getId());
Assert.assertEquals(invoiceItemModelDao.getInvoiceNumber(), invoice.getInvoiceNumber());
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceModelDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceModelDao.java
index a349d1d..ad1e378 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceModelDao.java
@@ -25,9 +25,14 @@ public class TestBusinessInvoiceModelDao extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructor() throws Exception {
- final BusinessInvoiceModelDao invoiceModelDao = new BusinessInvoiceModelDao(account, invoice, auditLog);
- verifyBusinessModelDaoBase(invoiceModelDao);
- //Assert.assertEquals(invoiceModelDao.getInvoiceRecordId(), /* TODO */);
+ final BusinessInvoiceModelDao invoiceModelDao = new BusinessInvoiceModelDao(account,
+ accountRecordId,
+ invoice,
+ invoiceRecordId,
+ auditLog,
+ tenantRecordId);
+ verifyBusinessModelDaoBase(invoiceModelDao, accountRecordId, tenantRecordId);
+ Assert.assertEquals(invoiceModelDao.getInvoiceRecordId(), invoiceItemRecordId);
Assert.assertEquals(invoiceModelDao.getInvoiceId(), invoice.getId());
Assert.assertEquals(invoiceModelDao.getInvoiceNumber(), invoice.getInvoiceNumber());
Assert.assertEquals(invoiceModelDao.getInvoiceDate(), invoice.getInvoiceDate());
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentFieldModelDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentFieldModelDao.java
index 1455c3e..9d46391 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentFieldModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentFieldModelDao.java
@@ -26,10 +26,13 @@ public class TestBusinessInvoicePaymentFieldModelDao extends AnalyticsTestSuiteN
@Test(groups = "fast")
public void testConstructor() throws Exception {
final BusinessInvoicePaymentFieldModelDao invoicePaymentFieldModelDao = new BusinessInvoicePaymentFieldModelDao(account,
+ accountRecordId,
customField,
- auditLog);
- verifyBusinessModelDaoBase(invoicePaymentFieldModelDao);
- //Assert.assertEquals(invoicePaymentFieldModelDao.getCustomFieldRecordId(), /* TODO */);
+ fieldRecordId,
+ auditLog,
+ tenantRecordId);
+ verifyBusinessModelDaoBase(invoicePaymentFieldModelDao, accountRecordId, tenantRecordId);
+ Assert.assertEquals(invoicePaymentFieldModelDao.getCustomFieldRecordId(), fieldRecordId);
Assert.assertEquals(invoicePaymentFieldModelDao.getInvoicePaymentId(), customField.getObjectId());
Assert.assertEquals(invoicePaymentFieldModelDao.getName(), customField.getFieldName());
Assert.assertEquals(invoicePaymentFieldModelDao.getValue(), customField.getFieldValue());
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentModelDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentModelDao.java
index 669be7e..e53fd35 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentModelDao.java
@@ -26,13 +26,16 @@ public class TestBusinessInvoicePaymentModelDao extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructor() throws Exception {
final BusinessInvoicePaymentModelDao invoicePaymentModelDao = new BusinessInvoicePaymentModelDao(account,
+ accountRecordId,
invoice,
invoicePayment,
+ invoicePaymentRecordId,
payment,
paymentMethod,
- auditLog);
- verifyBusinessModelDaoBase(invoicePaymentModelDao);
- //Assert.assertEquals(invoicePaymentModelDao.getInvoicePaymentRecordId(), /* TODO */);
+ auditLog,
+ tenantRecordId);
+ verifyBusinessModelDaoBase(invoicePaymentModelDao, accountRecordId, tenantRecordId);
+ Assert.assertEquals(invoicePaymentModelDao.getInvoicePaymentRecordId(), invoicePaymentRecordId);
Assert.assertEquals(invoicePaymentModelDao.getInvoicePaymentId(), invoicePayment.getId());
Assert.assertEquals(invoicePaymentModelDao.getInvoiceId(), invoice.getId());
Assert.assertEquals(invoicePaymentModelDao.getInvoiceNumber(), invoice.getInvoiceNumber());
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentTagModelDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentTagModelDao.java
index 530d93e..30e4dd8 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentTagModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoicePaymentTagModelDao.java
@@ -26,11 +26,14 @@ public class TestBusinessInvoicePaymentTagModelDao extends AnalyticsTestSuiteNoD
@Test(groups = "fast")
public void testConstructor() throws Exception {
final BusinessInvoicePaymentTagModelDao invoicePaymentTagModelDao = new BusinessInvoicePaymentTagModelDao(account,
+ accountRecordId,
tag,
+ tagRecordId,
tagDefinition,
- auditLog);
- verifyBusinessModelDaoBase(invoicePaymentTagModelDao);
- //Assert.assertEquals(invoicePaymentTagModelDao.getTagRecordId(), /* TODO */);
+ auditLog,
+ tenantRecordId);
+ verifyBusinessModelDaoBase(invoicePaymentTagModelDao, accountRecordId, tenantRecordId);
+ Assert.assertEquals(invoicePaymentTagModelDao.getTagRecordId(), tagRecordId);
Assert.assertEquals(invoicePaymentTagModelDao.getInvoicePaymentId(), tag.getObjectId());
Assert.assertEquals(invoicePaymentTagModelDao.getName(), tagDefinition.getName());
}
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceTagModelDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceTagModelDao.java
index 84f67e8..5eb3f24 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceTagModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessInvoiceTagModelDao.java
@@ -26,11 +26,14 @@ public class TestBusinessInvoiceTagModelDao extends AnalyticsTestSuiteNoDB {
@Test(groups = "fast")
public void testConstructor() throws Exception {
final BusinessInvoiceTagModelDao invoiceTagModelDao = new BusinessInvoiceTagModelDao(account,
+ accountRecordId,
tag,
+ tagRecordId,
tagDefinition,
- auditLog);
- verifyBusinessModelDaoBase(invoiceTagModelDao);
- //Assert.assertEquals(invoiceTagModelDao.getTagRecordId(), /* TODO */);
+ auditLog,
+ tenantRecordId);
+ verifyBusinessModelDaoBase(invoiceTagModelDao, accountRecordId, tenantRecordId);
+ Assert.assertEquals(invoiceTagModelDao.getTagRecordId(), tagRecordId);
Assert.assertEquals(invoiceTagModelDao.getInvoiceId(), tag.getObjectId());
Assert.assertEquals(invoiceTagModelDao.getName(), tagDefinition.getName());
}
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessOverdueStatusModelDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessOverdueStatusModelDao.java
index bdb4d65..0a6a218 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessOverdueStatusModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessOverdueStatusModelDao.java
@@ -29,12 +29,15 @@ public class TestBusinessOverdueStatusModelDao extends AnalyticsTestSuiteNoDB {
public void testEquals() throws Exception {
final DateTime endDate = new DateTime(2012, 7, 21, 10, 10, 10, DateTimeZone.UTC);
final BusinessOverdueStatusModelDao overdueStatusModelDao = new BusinessOverdueStatusModelDao(account,
+ accountRecordId,
bundle,
blockingState,
+ blockingStateRecordId,
endDate,
- auditLog);
- verifyBusinessModelDaoBase(overdueStatusModelDao);
- //Assert.assertEquals(overdueStatusModelDao.getBlockingStateRecordId(), /* TODO */);
+ auditLog,
+ tenantRecordId);
+ verifyBusinessModelDaoBase(overdueStatusModelDao, accountRecordId, tenantRecordId);
+ Assert.assertEquals(overdueStatusModelDao.getBlockingStateRecordId(), blockingStateRecordId);
Assert.assertEquals(overdueStatusModelDao.getBundleId(), bundle.getId());
Assert.assertEquals(overdueStatusModelDao.getBundleExternalKey(), bundle.getExternalKey());
Assert.assertEquals(overdueStatusModelDao.getStatus(), blockingState.getStateName());
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessSubscriptionTransitionModelDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessSubscriptionTransitionModelDao.java
index 3aaf1ab..755a0e1 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessSubscriptionTransitionModelDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/model/TestBusinessSubscriptionTransitionModelDao.java
@@ -36,14 +36,17 @@ public class TestBusinessSubscriptionTransitionModelDao extends AnalyticsTestSui
final BusinessSubscription previousSubscription = null;
final BusinessSubscription nextSubscription = new BusinessSubscription(null, null, null, Currency.GBP, startDate, SubscriptionState.ACTIVE);
final BusinessSubscriptionTransitionModelDao subscriptionTransitionModelDao = new BusinessSubscriptionTransitionModelDao(account,
+ accountRecordId,
bundle,
subscriptionTransition,
+ subscriptionEventRecordId,
requestedTimestamp,
event,
previousSubscription,
nextSubscription,
- auditLog);
- verifyBusinessModelDaoBase(subscriptionTransitionModelDao);
+ auditLog,
+ tenantRecordId);
+ verifyBusinessModelDaoBase(subscriptionTransitionModelDao, accountRecordId, tenantRecordId);
//Assert.assertEquals(subscriptionTransitionModelDao.getSubscriptionEventRecordId(), /* TODO */);
Assert.assertEquals(subscriptionTransitionModelDao.getBundleId(), bundle.getId());
Assert.assertEquals(subscriptionTransitionModelDao.getBundleExternalKey(), bundle.getExternalKey());
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/TestAnalyticsDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/TestAnalyticsDao.java
index 46ab06e..bd8be6b 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/TestAnalyticsDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/TestAnalyticsDao.java
@@ -33,10 +33,12 @@ public class TestAnalyticsDao extends AnalyticsTestSuiteWithEmbeddedDB {
Assert.assertNull(analyticsDao.getAccountById(account.getId(), callContext));
final BusinessAccountModelDao accountModelDao = new BusinessAccountModelDao(account,
+ accountRecordId,
BigDecimal.ONE,
invoice,
payment,
- auditLog);
+ auditLog,
+ tenantRecordId);
analyticsSqlDao.create(accountModelDao.getTableName(), accountModelDao, callContext);
Assert.assertEquals(analyticsDao.getAccountById(account.getId(), callContext), new BusinessAccount(accountModelDao));
diff --git a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/TestBusinessAnalyticsSqlDao.java b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/TestBusinessAnalyticsSqlDao.java
index f3cda23..83ba49b 100644
--- a/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/TestBusinessAnalyticsSqlDao.java
+++ b/osgi-bundles/bundles/analytics/src/test/java/com/ning/billing/osgi/bundles/analytics/dao/TestBusinessAnalyticsSqlDao.java
@@ -29,10 +29,12 @@ public class TestBusinessAnalyticsSqlDao extends AnalyticsTestSuiteWithEmbeddedD
@Test(groups = "slow")
public void testSqlDao() throws Exception {
final BusinessAccountModelDao accountModelDao = new BusinessAccountModelDao(account,
+ accountRecordId,
BigDecimal.ONE,
invoice,
payment,
- auditLog);
+ auditLog,
+ tenantRecordId);
Assert.assertNull(analyticsSqlDao.getAccountByAccountRecordId(accountModelDao.getAccountRecordId(),
accountModelDao.getTenantRecordId(),
diff --git a/util/src/main/java/com/ning/billing/util/dao/TableName.java b/util/src/main/java/com/ning/billing/util/dao/TableName.java
index 0e4da16..cc9aee0 100644
--- a/util/src/main/java/com/ning/billing/util/dao/TableName.java
+++ b/util/src/main/java/com/ning/billing/util/dao/TableName.java
@@ -29,7 +29,7 @@ public enum TableName {
ACCOUNT_EMAIL_HISTORY("account_email_history"),
ACCOUNT_EMAIL("account_emails", ObjectType.ACCOUNT_EMAIL, ACCOUNT_EMAIL_HISTORY),
BUNDLES("bundles", ObjectType.BUNDLE),
- BLOCKING_STATES("blocking_states"),
+ BLOCKING_STATES("blocking_states", ObjectType.BLOCKING_STATES),
CUSTOM_FIELD_HISTORY("custom_field_history"),
CUSTOM_FIELD("custom_fields", ObjectType.CUSTOM_FIELD, CUSTOM_FIELD_HISTORY),
INVOICE_ITEMS("invoice_items", ObjectType.INVOICE_ITEM),