diff --git a/account/src/main/java/com/ning/billing/account/dao/DefaultAccountDao.java b/account/src/main/java/com/ning/billing/account/dao/DefaultAccountDao.java
index 6a1665e..b9585fe 100644
--- a/account/src/main/java/com/ning/billing/account/dao/DefaultAccountDao.java
+++ b/account/src/main/java/com/ning/billing/account/dao/DefaultAccountDao.java
@@ -73,18 +73,33 @@ public class DefaultAccountDao implements AccountDao {
@Override
public Account getById(final String id) {
- Account account = accountSqlDao.getById(id);
- if (account != null) {
- setCustomFieldsFromWithinTransaction(account, accountSqlDao);
- setTagsFromWithinTransaction(account, accountSqlDao);
- }
- return account;
+ return accountSqlDao.inTransaction(new Transaction<Account, AccountSqlDao>() {
+ @Override
+ public Account inTransaction(final AccountSqlDao accountSqlDao, final TransactionStatus status) throws Exception {
+ Account account = accountSqlDao.getById(id);
+ if (account != null) {
+ setCustomFieldsFromWithinTransaction(account, accountSqlDao);
+ setTagsFromWithinTransaction(account, accountSqlDao);
+ }
+ return account;
+ }
+ });
}
-
@Override
public List<Account> get() {
- return accountSqlDao.get();
+ return accountSqlDao.inTransaction(new Transaction<List<Account>, AccountSqlDao>() {
+ @Override
+ public List<Account> inTransaction(final AccountSqlDao accountSqlDao, final TransactionStatus status) throws Exception {
+ List<Account> accounts = accountSqlDao.get();
+ for (Account account : accounts) {
+ setCustomFieldsFromWithinTransaction(account, accountSqlDao);
+ setTagsFromWithinTransaction(account, accountSqlDao);
+ }
+
+ return accounts;
+ }
+ });
}
@Override
@@ -162,7 +177,6 @@ public class DefaultAccountDao implements AccountDao {
accountSqlDao.inTransaction(new Transaction<Void, AccountSqlDao>() {
@Override
public Void inTransaction(final AccountSqlDao accountSqlDao, final TransactionStatus status) throws AccountApiException, Bus.EventBusException {
-
accountSqlDao.deleteByKey(externalKey);
return null;
@@ -231,6 +245,4 @@ public class DefaultAccountDao implements AccountDao {
fieldStoreDao.batchSaveFromTransaction(accountId, objectType, fieldList);
}
}
-
-
}
diff --git a/entitlement/src/main/java/com/ning/billing/entitlement/engine/dao/EntitlementSqlDao.java b/entitlement/src/main/java/com/ning/billing/entitlement/engine/dao/EntitlementSqlDao.java
index e34d48c..15fe20c 100644
--- a/entitlement/src/main/java/com/ning/billing/entitlement/engine/dao/EntitlementSqlDao.java
+++ b/entitlement/src/main/java/com/ning/billing/entitlement/engine/dao/EntitlementSqlDao.java
@@ -410,15 +410,15 @@ public class EntitlementSqlDao implements EntitlementDao {
private void updateCustomFieldsFromTransaction(SubscriptionSqlDao transactionalDao, final SubscriptionData subscription) {
- String SubscriptionId = subscription.getId().toString();
+ String subscriptionId = subscription.getId().toString();
String objectType = subscription.getObjectName();
FieldStoreDao fieldStoreDao = transactionalDao.become(FieldStoreDao.class);
- fieldStoreDao.clear(SubscriptionId, objectType);
+ fieldStoreDao.clear(subscriptionId, objectType);
List<CustomField> fieldList = subscription.getFieldList();
if (fieldList != null) {
- fieldStoreDao.batchSaveFromTransaction(SubscriptionId, objectType, fieldList);
+ fieldStoreDao.batchSaveFromTransaction(subscriptionId, objectType, fieldList);
}
}
@@ -618,7 +618,6 @@ public class EntitlementSqlDao implements EntitlementDao {
});
}
-
private void loadCustomFields(final Subscription subscription) {
FieldStoreDao fieldStoreDao = subscriptionsDao.become(FieldStoreDao.class);
List<CustomField> fields = fieldStoreDao.load(subscription.getId().toString(), subscription.getObjectName());