diff --git a/payment/src/main/java/com/ning/billing/payment/dao/AuditedPaymentDao.java b/payment/src/main/java/com/ning/billing/payment/dao/AuditedPaymentDao.java
index cad796e..80676f3 100644
--- a/payment/src/main/java/com/ning/billing/payment/dao/AuditedPaymentDao.java
+++ b/payment/src/main/java/com/ning/billing/payment/dao/AuditedPaymentDao.java
@@ -96,7 +96,7 @@ public class AuditedPaymentDao implements PaymentDao {
transactional.insertHistoryFromTransaction(history, context);
final Long historyRecordId = transactional.getHistoryRecordId(recordId);
- final EntityAudit audit = new EntityAudit(TableName.PAYMENTS, historyRecordId, ChangeType.INSERT);
+ final EntityAudit audit = new EntityAudit(TableName.PAYMENT_HISTORY, historyRecordId, ChangeType.INSERT);
transactional.insertAuditFromTransaction(audit, context);
return savedPayment;
}
@@ -108,7 +108,7 @@ public class AuditedPaymentDao implements PaymentDao {
final EntityHistory<PaymentAttemptModelDao> history = new EntityHistory<PaymentAttemptModelDao>(savedAttempt.getId(), recordId, savedAttempt, ChangeType.INSERT);
transactional.insertHistoryFromTransaction(history, context);
final Long historyRecordId = transactional.getHistoryRecordId(recordId);
- final EntityAudit audit = new EntityAudit(TableName.PAYMENT_ATTEMPTS, historyRecordId, ChangeType.INSERT);
+ final EntityAudit audit = new EntityAudit(TableName.PAYMENT_ATTEMPT_HISTORY, historyRecordId, ChangeType.INSERT);
transactional.insertAuditFromTransaction(audit, context);
return savedAttempt;
}
@@ -153,7 +153,7 @@ public class AuditedPaymentDao implements PaymentDao {
final EntityHistory<PaymentModelDao> history = new EntityHistory<PaymentModelDao>(savedPayment.getId(), recordId, savedPayment, ChangeType.UPDATE);
transactional.insertHistoryFromTransaction(history, context);
final Long historyRecordId = transactional.getHistoryRecordId(recordId);
- final EntityAudit audit = new EntityAudit(TableName.PAYMENTS, historyRecordId, ChangeType.UPDATE);
+ final EntityAudit audit = new EntityAudit(TableName.PAYMENT_HISTORY, historyRecordId, ChangeType.UPDATE);
transactional.insertAuditFromTransaction(audit, context);
}
@@ -164,7 +164,7 @@ public class AuditedPaymentDao implements PaymentDao {
final EntityHistory<PaymentModelDao> history = new EntityHistory<PaymentModelDao>(savedPayment.getId(), recordId, savedPayment, ChangeType.UPDATE);
transactional.insertHistoryFromTransaction(history, context);
final Long historyRecordId = transactional.getHistoryRecordId(recordId);
- final EntityAudit audit = new EntityAudit(TableName.PAYMENTS, historyRecordId, ChangeType.UPDATE);
+ final EntityAudit audit = new EntityAudit(TableName.PAYMENT_HISTORY, historyRecordId, ChangeType.UPDATE);
transactional.insertAuditFromTransaction(audit, context);
}
@@ -175,7 +175,7 @@ public class AuditedPaymentDao implements PaymentDao {
final EntityHistory<PaymentAttemptModelDao> history = new EntityHistory<PaymentAttemptModelDao>(savedAttempt.getId(), recordId, savedAttempt, ChangeType.UPDATE);
transactional.insertHistoryFromTransaction(history, context);
final Long historyRecordId = transactional.getHistoryRecordId(recordId);
- final EntityAudit audit = new EntityAudit(TableName.PAYMENT_ATTEMPTS, historyRecordId, ChangeType.UPDATE);
+ final EntityAudit audit = new EntityAudit(TableName.PAYMENT_ATTEMPT_HISTORY, historyRecordId, ChangeType.UPDATE);
transactional.insertAuditFromTransaction(audit, context);
}
@@ -197,7 +197,7 @@ public class AuditedPaymentDao implements PaymentDao {
final EntityHistory<PaymentMethodModelDao> history = new EntityHistory<PaymentMethodModelDao>(savedPaymentMethod.getId(), recordId, savedPaymentMethod, ChangeType.INSERT);
transactional.insertHistoryFromTransaction(history, context);
final Long historyRecordId = transactional.getHistoryRecordId(recordId);
- final EntityAudit audit = new EntityAudit(TableName.PAYMENT_METHODS, historyRecordId, ChangeType.INSERT);
+ final EntityAudit audit = new EntityAudit(TableName.PAYMENT_METHOD_HISTORY, historyRecordId, ChangeType.INSERT);
transactional.insertAuditFromTransaction(audit, context);
return savedPaymentMethod;
}
@@ -262,7 +262,7 @@ public class AuditedPaymentDao implements PaymentDao {
final EntityHistory<RefundModelDao> history = new EntityHistory<RefundModelDao>(savedRefund.getId(), recordId, savedRefund, ChangeType.INSERT);
transactional.insertHistoryFromTransaction(history, context);
final Long historyRecordId = transactional.getHistoryRecordId(recordId);
- final EntityAudit audit = new EntityAudit(TableName.REFUNDS, historyRecordId, ChangeType.INSERT);
+ final EntityAudit audit = new EntityAudit(TableName.REFUND_HISTORY, historyRecordId, ChangeType.INSERT);
transactional.insertAuditFromTransaction(audit, context);
return savedRefund;
}
@@ -285,7 +285,7 @@ public class AuditedPaymentDao implements PaymentDao {
final EntityHistory<RefundModelDao> history = new EntityHistory<RefundModelDao>(savedRefund.getId(), recordId, savedRefund, ChangeType.UPDATE);
transactional.insertHistoryFromTransaction(history, context);
final Long historyRecordId = transactional.getHistoryRecordId(recordId);
- final EntityAudit audit = new EntityAudit(TableName.REFUNDS, historyRecordId, ChangeType.UPDATE);
+ final EntityAudit audit = new EntityAudit(TableName.REFUND_HISTORY, historyRecordId, ChangeType.UPDATE);
transactional.insertAuditFromTransaction(audit, context);
return null;
}
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 4dedcd0..7aec216 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
@@ -19,30 +19,50 @@ package com.ning.billing.util.dao;
import javax.annotation.Nullable;
public enum TableName {
- ACCOUNT("accounts", ObjectType.ACCOUNT),
- ACCOUNT_HISTORY("account_history", null),
- ACCOUNT_EMAIL_HISTORY("account_email_history", ObjectType.ACCOUNT_EMAIL),
+ ACCOUNT_HISTORY("account_history"),
+ ACCOUNT("accounts", ObjectType.ACCOUNT, ACCOUNT_HISTORY),
+ ACCOUNT_EMAIL_HISTORY("account_email_history"),
+ ACCOUNT_EMAIL("account_emails", ObjectType.ACCOUNT_EMAIL, ACCOUNT_EMAIL_HISTORY),
BUNDLES("bundles", ObjectType.BUNDLE),
- CUSTOM_FIELD_HISTORY("custom_field_history", null),
+ CUSTOM_FIELD_HISTORY("custom_field_history"),
+ CUSTOM_FIELD("custom_fields", CUSTOM_FIELD_HISTORY),
INVOICE_ITEMS("invoice_items", ObjectType.INVOICE_ITEM),
INVOICE_PAYMENTS("invoice_payments", ObjectType.INVOICE_PAYMENT),
INVOICES("invoices", ObjectType.INVOICE),
- PAYMENT_ATTEMPTS("payment_attempts", null),
- PAYMENT_HISTORY("payment_history", null),
- PAYMENTS("payments", ObjectType.PAYMENT),
- PAYMENT_METHODS("payment_methods", ObjectType.PAYMENT_METHOD),
+ PAYMENT_ATTEMPT_HISTORY("payment_attempt_history"),
+ PAYMENT_ATTEMPTS("payment_attempts", PAYMENT_ATTEMPT_HISTORY),
+ PAYMENT_HISTORY("payment_history"),
+ PAYMENTS("payments", ObjectType.PAYMENT, PAYMENT_HISTORY),
+ PAYMENT_METHOD_HISTORY("payment_method_history"),
+ PAYMENT_METHODS("payment_methods", ObjectType.PAYMENT_METHOD, PAYMENT_METHOD_HISTORY),
SUBSCRIPTIONS("subscriptions", ObjectType.SUBSCRIPTION),
- SUBSCRIPTION_EVENTS("subscription_events", null),
- REFUNDS("refunds", ObjectType.REFUND),
+ SUBSCRIPTION_EVENTS("subscription_events"),
+ REFUND_HISTORY("refund_history"),
+ REFUNDS("refunds", ObjectType.REFUND, REFUND_HISTORY),
TAG_DEFINITIONS("tag_definitions", ObjectType.TAG_DEFINITION),
- TAG_HISTORY("tag_history", null);
+ TAG_HISTORY("tag_history"),
+ TAG("tags", TAG_HISTORY);
private final String tableName;
private final ObjectType objectType;
+ private final TableName historyTableName;
- TableName(final String tableName, @Nullable final ObjectType objectType) {
+ TableName(final String tableName, @Nullable final ObjectType objectType, @Nullable final TableName historyTableName) {
this.tableName = tableName;
this.objectType = objectType;
+ this.historyTableName = historyTableName;
+ }
+
+ TableName(final String tableName, @Nullable final ObjectType objectType) {
+ this(tableName, objectType, null);
+ }
+
+ TableName(final String tableName, @Nullable final TableName historyTableName) {
+ this(tableName, null, historyTableName);
+ }
+
+ TableName(final String tableName) {
+ this(tableName, null, null);
}
public String getTableName() {
@@ -52,4 +72,12 @@ public enum TableName {
public ObjectType getObjectType() {
return objectType;
}
+
+ public TableName getHistoryTableName() {
+ return historyTableName;
+ }
+
+ public boolean hasHistoryTable() {
+ return historyTableName != null;
+ }
}