Details
diff --git a/analytics/src/main/java/com/ning/billing/analytics/BusinessAccountDao.java b/analytics/src/main/java/com/ning/billing/analytics/BusinessAccountDao.java
index eac8aef..fb4fd15 100644
--- a/analytics/src/main/java/com/ning/billing/analytics/BusinessAccountDao.java
+++ b/analytics/src/main/java/com/ning/billing/analytics/BusinessAccountDao.java
@@ -17,6 +17,7 @@
package com.ning.billing.analytics;
import java.math.BigDecimal;
+import java.util.Collection;
import java.util.List;
import java.util.UUID;
@@ -28,18 +29,18 @@ import org.slf4j.LoggerFactory;
import com.ning.billing.account.api.Account;
import com.ning.billing.account.api.AccountApiException;
import com.ning.billing.account.api.AccountData;
-import com.ning.billing.account.api.AccountUserApi;
import com.ning.billing.analytics.dao.BusinessAccountSqlDao;
import com.ning.billing.analytics.model.BusinessAccount;
import com.ning.billing.catalog.api.Currency;
import com.ning.billing.invoice.api.Invoice;
-import com.ning.billing.invoice.api.InvoiceUserApi;
import com.ning.billing.payment.api.Payment;
import com.ning.billing.payment.api.PaymentApi;
import com.ning.billing.payment.api.PaymentApiException;
import com.ning.billing.payment.api.PaymentMethod;
import com.ning.billing.util.callcontext.InternalCallContext;
import com.ning.billing.util.callcontext.InternalTenantContext;
+import com.ning.billing.util.svcapi.account.AccountInternalApi;
+import com.ning.billing.util.svcapi.invoice.InvoiceInternalApi;
import com.google.inject.Inject;
@@ -48,23 +49,23 @@ public class BusinessAccountDao {
private static final Logger log = LoggerFactory.getLogger(BusinessAccountDao.class);
private final BusinessAccountSqlDao sqlDao;
- private final AccountUserApi accountApi;
- private final InvoiceUserApi invoiceUserApi;
+ private final AccountInternalApi accountApi;
+ private final InvoiceInternalApi invoiceApi;
private final PaymentApi paymentApi;
@Inject
- public BusinessAccountDao(final BusinessAccountSqlDao sqlDao, final AccountUserApi accountApi,
- final InvoiceUserApi invoiceUserApi, final PaymentApi paymentApi) {
+ public BusinessAccountDao(final BusinessAccountSqlDao sqlDao, final AccountInternalApi accountApi,
+ final InvoiceInternalApi invoiceApi, final PaymentApi paymentApi) {
this.sqlDao = sqlDao;
this.accountApi = accountApi;
- this.invoiceUserApi = invoiceUserApi;
+ this.invoiceApi = invoiceApi;
this.paymentApi = paymentApi;
}
public void accountCreated(final AccountData data, final InternalCallContext context) {
final Account account;
try {
- account = accountApi.getAccountByKey(data.getExternalKey(), context.toCallContext());
+ account = accountApi.getAccountByKey(data.getExternalKey(), context);
accountUpdated(account.getId(), context);
} catch (AccountApiException e) {
log.warn("Error encountered creating BusinessAccount", e);
@@ -79,7 +80,7 @@ public class BusinessAccountDao {
public void accountUpdated(final UUID accountId, final InternalCallContext context) {
final Account account;
try {
- account = accountApi.getAccountById(accountId, context.toCallContext());
+ account = accountApi.getAccountById(accountId, context);
} catch (AccountApiException e) {
log.warn("Error encountered creating BusinessAccount", e);
return;
@@ -117,9 +118,8 @@ public class BusinessAccountDao {
String billingAddressCountry = bac.getBillingAddressCountry();
// Retrieve invoices information
- final List<Invoice> invoices = invoiceUserApi.getInvoicesByAccount(account.getId(), context.toTenantContext());
+ final Collection<Invoice> invoices = invoiceApi.getInvoicesByAccountId(account.getId(), context);
if (invoices != null && invoices.size() > 0) {
-
for (final Invoice invoice : invoices) {
totalInvoiceBalance = totalInvoiceBalance.add(invoice.getBalance());
@@ -160,7 +160,7 @@ public class BusinessAccountDao {
bac.setLastInvoiceDate(lastInvoiceDate);
bac.setTotalInvoiceBalance(totalInvoiceBalance);
- bac.setBalance(invoiceUserApi.getAccountBalance(account.getId(), context.toTenantContext()));
+ bac.setBalance(invoiceApi.getAccountBalance(account.getId(), context));
} catch (PaymentApiException ex) {
log.error(String.format("Failed to handle account update for account %s", account.getId()), ex);
}
diff --git a/analytics/src/main/java/com/ning/billing/analytics/BusinessOverdueStatusDao.java b/analytics/src/main/java/com/ning/billing/analytics/BusinessOverdueStatusDao.java
index 31e4c47..64347a1 100644
--- a/analytics/src/main/java/com/ning/billing/analytics/BusinessOverdueStatusDao.java
+++ b/analytics/src/main/java/com/ning/billing/analytics/BusinessOverdueStatusDao.java
@@ -29,15 +29,15 @@ import org.slf4j.LoggerFactory;
import com.ning.billing.account.api.Account;
import com.ning.billing.account.api.AccountApiException;
-import com.ning.billing.account.api.AccountUserApi;
import com.ning.billing.analytics.dao.BusinessOverdueStatusSqlDao;
import com.ning.billing.analytics.model.BusinessOverdueStatus;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
import com.ning.billing.entitlement.api.user.SubscriptionBundle;
import com.ning.billing.junction.api.Blockable;
import com.ning.billing.junction.api.BlockingState;
import com.ning.billing.util.callcontext.InternalCallContext;
+import com.ning.billing.util.svcapi.account.AccountInternalApi;
+import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
import com.ning.billing.util.svcapi.junction.BlockingApi;
import com.google.common.collect.ImmutableList;
@@ -48,13 +48,13 @@ public class BusinessOverdueStatusDao {
private static final Logger log = LoggerFactory.getLogger(BusinessOverdueStatusDao.class);
private final BusinessOverdueStatusSqlDao overdueStatusSqlDao;
- private final AccountUserApi accountApi;
- private final EntitlementUserApi entitlementApi;
+ private final AccountInternalApi accountApi;
+ private final EntitlementInternalApi entitlementApi;
private final BlockingApi blockingApi;
@Inject
- public BusinessOverdueStatusDao(final BusinessOverdueStatusSqlDao overdueStatusSqlDao, final AccountUserApi accountApi,
- final EntitlementUserApi entitlementApi, final BlockingApi blockingApi) {
+ public BusinessOverdueStatusDao(final BusinessOverdueStatusSqlDao overdueStatusSqlDao, final AccountInternalApi accountApi,
+ final EntitlementInternalApi entitlementApi, final BlockingApi blockingApi) {
this.overdueStatusSqlDao = overdueStatusSqlDao;
this.accountApi = accountApi;
this.entitlementApi = entitlementApi;
@@ -72,7 +72,7 @@ public class BusinessOverdueStatusDao {
private void overdueStatusChangedForBundle(final UUID bundleId, final InternalCallContext context) {
final SubscriptionBundle bundle;
try {
- bundle = entitlementApi.getBundleFromId(bundleId, context.toCallContext());
+ bundle = entitlementApi.getBundleFromId(bundleId, context);
} catch (EntitlementUserApiException e) {
log.warn("Ignoring update for bundle {}: bundle does not exist", bundleId);
return;
@@ -80,7 +80,7 @@ public class BusinessOverdueStatusDao {
final Account account;
try {
- account = accountApi.getAccountById(bundle.getAccountId(), context.toCallContext());
+ account = accountApi.getAccountById(bundle.getAccountId(), context);
} catch (AccountApiException e) {
log.warn("Ignoring update for bundle {}: account {} does not exist", bundleId, bundle.getAccountId());
return;
diff --git a/analytics/src/main/java/com/ning/billing/analytics/BusinessSubscriptionTransitionDao.java b/analytics/src/main/java/com/ning/billing/analytics/BusinessSubscriptionTransitionDao.java
index 6c0d371..6c4a834 100644
--- a/analytics/src/main/java/com/ning/billing/analytics/BusinessSubscriptionTransitionDao.java
+++ b/analytics/src/main/java/com/ning/billing/analytics/BusinessSubscriptionTransitionDao.java
@@ -27,7 +27,6 @@ import org.slf4j.LoggerFactory;
import com.ning.billing.account.api.Account;
import com.ning.billing.account.api.AccountApiException;
-import com.ning.billing.account.api.AccountUserApi;
import com.ning.billing.analytics.dao.BusinessSubscriptionTransitionSqlDao;
import com.ning.billing.analytics.model.BusinessSubscription;
import com.ning.billing.analytics.model.BusinessSubscriptionEvent;
@@ -36,13 +35,14 @@ import com.ning.billing.catalog.api.CatalogService;
import com.ning.billing.catalog.api.Currency;
import com.ning.billing.entitlement.api.SubscriptionTransitionType;
import com.ning.billing.entitlement.api.user.EffectiveSubscriptionEvent;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
import com.ning.billing.entitlement.api.user.Subscription;
import com.ning.billing.entitlement.api.user.SubscriptionBundle;
import com.ning.billing.entitlement.api.user.SubscriptionEvent;
import com.ning.billing.util.callcontext.InternalCallContext;
import com.ning.billing.util.clock.Clock;
+import com.ning.billing.util.svcapi.account.AccountInternalApi;
+import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
import com.google.inject.Inject;
@@ -51,16 +51,16 @@ public class BusinessSubscriptionTransitionDao {
private static final Logger log = LoggerFactory.getLogger(BusinessSubscriptionTransitionDao.class);
private final BusinessSubscriptionTransitionSqlDao sqlDao;
- private final EntitlementUserApi entitlementApi;
- private final AccountUserApi accountApi;
+ private final EntitlementInternalApi entitlementApi;
+ private final AccountInternalApi accountApi;
private final CatalogService catalogService;
private final Clock clock;
@Inject
public BusinessSubscriptionTransitionDao(final BusinessSubscriptionTransitionSqlDao sqlDao,
final CatalogService catalogService,
- final EntitlementUserApi entitlementApi,
- final AccountUserApi accountApi,
+ final EntitlementInternalApi entitlementApi,
+ final AccountInternalApi accountApi,
final Clock clock) {
this.sqlDao = sqlDao;
this.catalogService = catalogService;
@@ -72,7 +72,7 @@ public class BusinessSubscriptionTransitionDao {
public void rebuildTransitionsForBundle(final UUID bundleId, final InternalCallContext context) {
final SubscriptionBundle bundle;
try {
- bundle = entitlementApi.getBundleFromId(bundleId, context.toCallContext());
+ bundle = entitlementApi.getBundleFromId(bundleId, context);
} catch (EntitlementUserApiException e) {
log.warn("Ignoring update for bundle {}: bundle does not exist", bundleId);
return;
@@ -80,13 +80,13 @@ public class BusinessSubscriptionTransitionDao {
final Account account;
try {
- account = accountApi.getAccountById(bundle.getAccountId(), context.toCallContext());
+ account = accountApi.getAccountById(bundle.getAccountId(), context);
} catch (AccountApiException e) {
log.warn("Ignoring update for bundle {}: account {} does not exist", bundleId, bundle.getAccountId());
return;
}
- final List<Subscription> subscriptions = entitlementApi.getSubscriptionsForBundle(bundleId, context.toCallContext());
+ final List<Subscription> subscriptions = entitlementApi.getSubscriptionsForBundle(bundleId, context);
final Currency currency = account.getCurrency();
diff --git a/analytics/src/main/java/com/ning/billing/analytics/BusinessTagDao.java b/analytics/src/main/java/com/ning/billing/analytics/BusinessTagDao.java
index 2c0f30d..32ee506 100644
--- a/analytics/src/main/java/com/ning/billing/analytics/BusinessTagDao.java
+++ b/analytics/src/main/java/com/ning/billing/analytics/BusinessTagDao.java
@@ -25,16 +25,16 @@ import org.slf4j.LoggerFactory;
import com.ning.billing.account.api.Account;
import com.ning.billing.account.api.AccountApiException;
-import com.ning.billing.account.api.AccountUserApi;
import com.ning.billing.analytics.dao.BusinessAccountTagSqlDao;
import com.ning.billing.analytics.dao.BusinessInvoicePaymentTagSqlDao;
import com.ning.billing.analytics.dao.BusinessInvoiceTagSqlDao;
import com.ning.billing.analytics.dao.BusinessSubscriptionTransitionTagSqlDao;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
import com.ning.billing.entitlement.api.user.SubscriptionBundle;
import com.ning.billing.util.callcontext.InternalCallContext;
import com.ning.billing.util.dao.ObjectType;
+import com.ning.billing.util.svcapi.account.AccountInternalApi;
+import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
public class BusinessTagDao {
@@ -44,22 +44,22 @@ public class BusinessTagDao {
private final BusinessInvoiceTagSqlDao invoiceTagSqlDao;
private final BusinessInvoicePaymentTagSqlDao invoicePaymentTagSqlDao;
private final BusinessSubscriptionTransitionTagSqlDao subscriptionTransitionTagSqlDao;
- private final AccountUserApi accountApi;
- private final EntitlementUserApi entitlementUserApi;
+ private final AccountInternalApi accountApi;
+ private final EntitlementInternalApi entitlementApi;
@Inject
public BusinessTagDao(final BusinessAccountTagSqlDao accountTagSqlDao,
final BusinessInvoicePaymentTagSqlDao invoicePaymentTagSqlDao,
final BusinessInvoiceTagSqlDao invoiceTagSqlDao,
final BusinessSubscriptionTransitionTagSqlDao subscriptionTransitionTagSqlDao,
- final AccountUserApi accountApi,
- final EntitlementUserApi entitlementUserApi) {
+ final AccountInternalApi accountApi,
+ final EntitlementInternalApi entitlementApi) {
this.accountTagSqlDao = accountTagSqlDao;
this.invoicePaymentTagSqlDao = invoicePaymentTagSqlDao;
this.invoiceTagSqlDao = invoiceTagSqlDao;
this.subscriptionTransitionTagSqlDao = subscriptionTransitionTagSqlDao;
this.accountApi = accountApi;
- this.entitlementUserApi = entitlementUserApi;
+ this.entitlementApi = entitlementApi;
}
public void tagAdded(final ObjectType objectType, final UUID objectId, final String name, final InternalCallContext context) {
@@ -93,7 +93,7 @@ public class BusinessTagDao {
private void tagAddedForAccount(final UUID accountId, final String name, final InternalCallContext context) {
final Account account;
try {
- account = accountApi.getAccountById(accountId, context.toCallContext());
+ account = accountApi.getAccountById(accountId, context);
} catch (AccountApiException e) {
log.warn("Ignoring tag addition of {} for account id {} (account does not exist)", name, accountId.toString());
return;
@@ -110,7 +110,7 @@ public class BusinessTagDao {
private void tagAddedForBundle(final UUID bundleId, final String name, final InternalCallContext context) {
final SubscriptionBundle bundle;
try {
- bundle = entitlementUserApi.getBundleFromId(bundleId, context.toCallContext());
+ bundle = entitlementApi.getBundleFromId(bundleId, context);
} catch (EntitlementUserApiException e) {
log.warn("Ignoring tag addition of {} for bundle id {} (bundle does not exist)", name, bundleId.toString());
return;
@@ -118,7 +118,7 @@ public class BusinessTagDao {
final Account account;
try {
- account = accountApi.getAccountById(bundle.getAccountId(), context.toCallContext());
+ account = accountApi.getAccountById(bundle.getAccountId(), context);
} catch (AccountApiException e) {
log.warn("Ignoring tag addition of {} for bundle id {} and account id {} (account does not exist)", new Object[]{name, bundleId.toString(), bundle.getAccountId()});
return;
diff --git a/analytics/src/test/java/com/ning/billing/analytics/TestBusinessSubscriptionTransitionRecorder.java b/analytics/src/test/java/com/ning/billing/analytics/TestBusinessSubscriptionTransitionRecorder.java
index 9eba936..b36e075 100644
--- a/analytics/src/test/java/com/ning/billing/analytics/TestBusinessSubscriptionTransitionRecorder.java
+++ b/analytics/src/test/java/com/ning/billing/analytics/TestBusinessSubscriptionTransitionRecorder.java
@@ -25,18 +25,18 @@ import org.testng.Assert;
import org.testng.annotations.Test;
import com.ning.billing.account.api.Account;
-import com.ning.billing.account.api.AccountUserApi;
import com.ning.billing.analytics.dao.BusinessSubscriptionTransitionSqlDao;
import com.ning.billing.analytics.model.BusinessSubscriptionTransition;
import com.ning.billing.catalog.api.Catalog;
import com.ning.billing.catalog.api.CatalogService;
import com.ning.billing.entitlement.api.SubscriptionTransitionType;
import com.ning.billing.entitlement.api.user.EffectiveSubscriptionEvent;
-import com.ning.billing.entitlement.api.user.EntitlementUserApi;
import com.ning.billing.entitlement.api.user.Subscription;
import com.ning.billing.entitlement.api.user.SubscriptionBundle;
-import com.ning.billing.util.callcontext.TenantContext;
+import com.ning.billing.util.callcontext.InternalTenantContext;
import com.ning.billing.util.clock.DefaultClock;
+import com.ning.billing.util.svcapi.account.AccountInternalApi;
+import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
import com.google.common.collect.ImmutableList;
@@ -61,14 +61,14 @@ public class TestBusinessSubscriptionTransitionRecorder extends AnalyticsTestSui
Mockito.when(bundle.getId()).thenReturn(bundleId);
Mockito.when(bundle.getAccountId()).thenReturn(accountId);
Mockito.when(bundle.getKey()).thenReturn(externalKey.toString());
- final EntitlementUserApi entitlementApi = Mockito.mock(EntitlementUserApi.class);
- Mockito.when(entitlementApi.getBundleFromId(Mockito.<UUID>any(), Mockito.<TenantContext>any())).thenReturn(bundle);
+ final EntitlementInternalApi entitlementApi = Mockito.mock(EntitlementInternalApi.class);
+ Mockito.when(entitlementApi.getBundleFromId(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(bundle);
// Setup the account API
final Account account = Mockito.mock(Account.class);
Mockito.when(account.getExternalKey()).thenReturn(externalKey.toString());
- final AccountUserApi accountApi = Mockito.mock(AccountUserApi.class);
- Mockito.when(accountApi.getAccountById(Mockito.eq(bundle.getAccountId()), Mockito.<TenantContext>any())).thenReturn(account);
+ final AccountInternalApi accountApi = Mockito.mock(AccountInternalApi.class);
+ Mockito.when(accountApi.getAccountById(Mockito.eq(bundle.getAccountId()), Mockito.<InternalTenantContext>any())).thenReturn(account);
// Create an new subscription event
final EffectiveSubscriptionEvent eventEffective = Mockito.mock(EffectiveSubscriptionEvent.class);
@@ -83,7 +83,7 @@ public class TestBusinessSubscriptionTransitionRecorder extends AnalyticsTestSui
final Subscription subscription = Mockito.mock(Subscription.class);
Mockito.when(subscription.getId()).thenReturn(subscriptionId);
Mockito.when(subscription.getAllTransitions()).thenReturn(ImmutableList.<EffectiveSubscriptionEvent>of(eventEffective));
- Mockito.when(entitlementApi.getSubscriptionsForBundle(Mockito.<UUID>any(), Mockito.<TenantContext>any())).thenReturn(ImmutableList.<Subscription>of(subscription));
+ Mockito.when(entitlementApi.getSubscriptionsForBundle(Mockito.<UUID>any(), Mockito.<InternalTenantContext>any())).thenReturn(ImmutableList.<Subscription>of(subscription));
final BusinessSubscriptionTransitionDao dao = new BusinessSubscriptionTransitionDao(sqlDao, catalogService, entitlementApi, accountApi, new DefaultClock());
dao.rebuildTransitionsForBundle(bundle.getId(), internalCallContext);
diff --git a/analytics/src/test/java/com/ning/billing/analytics/TestBusinessTagRecorder.java b/analytics/src/test/java/com/ning/billing/analytics/TestBusinessTagRecorder.java
index 6b4bdbb..a033a2c 100644
--- a/analytics/src/test/java/com/ning/billing/analytics/TestBusinessTagRecorder.java
+++ b/analytics/src/test/java/com/ning/billing/analytics/TestBusinessTagRecorder.java
@@ -27,6 +27,7 @@ import org.testng.annotations.Test;
import com.ning.billing.account.api.Account;
import com.ning.billing.account.api.AccountUserApi;
+import com.ning.billing.account.api.svcs.DefaultAccountInternalApi;
import com.ning.billing.account.api.user.DefaultAccountUserApi;
import com.ning.billing.account.dao.AccountDao;
import com.ning.billing.account.dao.AccountEmailDao;
@@ -42,6 +43,7 @@ import com.ning.billing.catalog.api.Currency;
import com.ning.billing.catalog.io.VersionedCatalogLoader;
import com.ning.billing.config.CatalogConfig;
import com.ning.billing.entitlement.alignment.PlanAligner;
+import com.ning.billing.entitlement.api.svcs.DefaultEntitlementInternalApi;
import com.ning.billing.entitlement.api.user.DefaultEntitlementUserApi;
import com.ning.billing.entitlement.api.user.DefaultSubscriptionApiService;
import com.ning.billing.entitlement.api.user.DefaultSubscriptionFactory;
@@ -58,13 +60,18 @@ import com.ning.billing.util.clock.ClockMock;
import com.ning.billing.util.clock.DefaultClock;
import com.ning.billing.util.dao.ObjectType;
import com.ning.billing.util.notificationq.DefaultNotificationQueueService;
+import com.ning.billing.util.svcapi.account.AccountInternalApi;
+import com.ning.billing.util.svcapi.entitlement.EntitlementInternalApi;
public class TestBusinessTagRecorder extends AnalyticsTestSuiteWithEmbeddedDB {
+
private BusinessAccountTagSqlDao accountTagSqlDao;
private BusinessSubscriptionTransitionTagSqlDao subscriptionTransitionTagSqlDao;
private InMemoryBus eventBus;
private DefaultCallContextFactory callContextFactory;
+ private AccountInternalApi accountApi;
private AccountUserApi accountUserApi;
+ private EntitlementInternalApi entitlementApi;
private EntitlementUserApi entitlementUserApi;
private BusinessTagDao tagDao;
@@ -81,6 +88,7 @@ public class TestBusinessTagRecorder extends AnalyticsTestSuiteWithEmbeddedDB {
final DefaultClock clock = new DefaultClock();
callContextFactory = new DefaultCallContextFactory(clock);
final InternalCallContextFactory internalCallContextFactory = new InternalCallContextFactory(dbi, clock);
+ accountApi = new DefaultAccountInternalApi(accountDao, accountEmailDao);
accountUserApi = new DefaultAccountUserApi(callContextFactory, internalCallContextFactory, accountDao, accountEmailDao);
final CatalogService catalogService = new DefaultCatalogService(Mockito.mock(CatalogConfig.class), Mockito.mock(VersionedCatalogLoader.class));
final AddonUtils addonUtils = new AddonUtils(catalogService);
@@ -89,10 +97,10 @@ public class TestBusinessTagRecorder extends AnalyticsTestSuiteWithEmbeddedDB {
final PlanAligner planAligner = new PlanAligner(catalogService);
final DefaultSubscriptionApiService apiService = new DefaultSubscriptionApiService(clock, entitlementDao, catalogService, planAligner, internalCallContextFactory);
final DefaultSubscriptionFactory subscriptionFactory = new DefaultSubscriptionFactory(apiService, clock, catalogService);
- entitlementUserApi = new DefaultEntitlementUserApi(clock, entitlementDao, catalogService,
- apiService, subscriptionFactory, addonUtils, internalCallContextFactory);
+ entitlementApi = new DefaultEntitlementInternalApi(entitlementDao, subscriptionFactory);
+ entitlementUserApi = new DefaultEntitlementUserApi(clock, entitlementDao, catalogService, apiService, subscriptionFactory, addonUtils, internalCallContextFactory);
tagDao = new BusinessTagDao(accountTagSqlDao, invoicePaymentTagSqlDao, invoiceTagSqlDao, subscriptionTransitionTagSqlDao,
- accountUserApi, entitlementUserApi);
+ accountApi, entitlementApi);
eventBus.start();
}
diff --git a/invoice/src/main/java/com/ning/billing/invoice/api/svcs/DefaultInvoiceInternalApi.java b/invoice/src/main/java/com/ning/billing/invoice/api/svcs/DefaultInvoiceInternalApi.java
index 70833fc..d0aef0f 100644
--- a/invoice/src/main/java/com/ning/billing/invoice/api/svcs/DefaultInvoiceInternalApi.java
+++ b/invoice/src/main/java/com/ning/billing/invoice/api/svcs/DefaultInvoiceInternalApi.java
@@ -16,6 +16,7 @@
package com.ning.billing.invoice.api.svcs;
+import java.math.BigDecimal;
import java.util.Collection;
import java.util.UUID;
@@ -52,4 +53,9 @@ public class DefaultInvoiceInternalApi implements InvoiceInternalApi {
public Collection<Invoice> getInvoicesByAccountId(final UUID accountId, final InternalTenantContext context) {
return dao.getInvoicesByAccount(accountId, context);
}
+
+ @Override
+ public BigDecimal getAccountBalance(final UUID accountId, final InternalTenantContext context) {
+ return dao.getAccountBalance(accountId, context);
+ }
}
diff --git a/util/src/main/java/com/ning/billing/util/svcapi/invoice/InvoiceInternalApi.java b/util/src/main/java/com/ning/billing/util/svcapi/invoice/InvoiceInternalApi.java
index 7248272..c54efe0 100644
--- a/util/src/main/java/com/ning/billing/util/svcapi/invoice/InvoiceInternalApi.java
+++ b/util/src/main/java/com/ning/billing/util/svcapi/invoice/InvoiceInternalApi.java
@@ -16,6 +16,7 @@
package com.ning.billing.util.svcapi.invoice;
+import java.math.BigDecimal;
import java.util.Collection;
import java.util.UUID;
@@ -32,4 +33,6 @@ public interface InvoiceInternalApi {
public Collection<Invoice> getUnpaidInvoicesByAccountId(UUID accountId, LocalDate upToDate, InternalTenantContext context);
public Collection<Invoice> getInvoicesByAccountId(UUID accountId, InternalTenantContext context);
+
+ public BigDecimal getAccountBalance(UUID accountId, InternalTenantContext context);
}