Details
diff --git a/analytics/src/main/java/com/ning/billing/analytics/AnalyticsListener.java b/analytics/src/main/java/com/ning/billing/analytics/AnalyticsListener.java
index 6337422..a5ad78f 100644
--- a/analytics/src/main/java/com/ning/billing/analytics/AnalyticsListener.java
+++ b/analytics/src/main/java/com/ning/billing/analytics/AnalyticsListener.java
@@ -25,7 +25,7 @@ import com.ning.billing.entitlement.api.timeline.RepairEntitlementEvent;
import com.ning.billing.entitlement.api.user.EffectiveSubscriptionEvent;
import com.ning.billing.entitlement.api.user.EntitlementUserApiException;
import com.ning.billing.entitlement.api.user.RequestedSubscriptionEvent;
-import com.ning.billing.invoice.api.EmptyInvoiceEvent;
+import com.ning.billing.invoice.api.NullInvoiceEvent;
import com.ning.billing.invoice.api.InvoiceCreationEvent;
import com.ning.billing.overdue.OverdueChangeEvent;
import com.ning.billing.payment.api.PaymentErrorEvent;
@@ -101,7 +101,7 @@ public class AnalyticsListener {
}
@Subscribe
- public void handleNullInvoice(final EmptyInvoiceEvent event) {
+ public void handleNullInvoice(final NullInvoiceEvent event) {
// Ignored for now
}
diff --git a/api/src/main/java/com/ning/billing/invoice/api/InvoiceCreationEvent.java b/api/src/main/java/com/ning/billing/invoice/api/InvoiceCreationEvent.java
index 0385827..5fb8964 100644
--- a/api/src/main/java/com/ning/billing/invoice/api/InvoiceCreationEvent.java
+++ b/api/src/main/java/com/ning/billing/invoice/api/InvoiceCreationEvent.java
@@ -22,12 +22,10 @@ import java.util.UUID;
import org.joda.time.DateTime;
import com.ning.billing.catalog.api.Currency;
-import com.ning.billing.util.bus.BusEvent;
-public interface InvoiceCreationEvent extends BusEvent {
- public UUID getInvoiceId();
+public interface InvoiceCreationEvent extends InvoiceEvent {
- public UUID getAccountId();
+ public UUID getInvoiceId();
public BigDecimal getAmountOwed();
diff --git a/api/src/main/java/com/ning/billing/invoice/api/InvoiceEvent.java b/api/src/main/java/com/ning/billing/invoice/api/InvoiceEvent.java
new file mode 100644
index 0000000..429e69c
--- /dev/null
+++ b/api/src/main/java/com/ning/billing/invoice/api/InvoiceEvent.java
@@ -0,0 +1,24 @@
+/*
+ * Copyright 2010-2011 Ning, Inc.
+ *
+ * Ning licenses this file to you under the Apache License, version 2.0
+ * (the "License"); you may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at:
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+package com.ning.billing.invoice.api;
+
+import java.util.UUID;
+
+import com.ning.billing.util.bus.BusEvent;
+
+public interface InvoiceEvent extends BusEvent {
+ public UUID getAccountId();
+}
diff --git a/api/src/main/java/com/ning/billing/util/userrequest/CompletionUserRequestWaiter.java b/api/src/main/java/com/ning/billing/util/userrequest/CompletionUserRequestWaiter.java
index 19f1b65..b7c308d 100644
--- a/api/src/main/java/com/ning/billing/util/userrequest/CompletionUserRequestWaiter.java
+++ b/api/src/main/java/com/ning/billing/util/userrequest/CompletionUserRequestWaiter.java
@@ -21,7 +21,7 @@ import java.util.concurrent.TimeoutException;
import com.ning.billing.account.api.AccountChangeEvent;
import com.ning.billing.account.api.AccountCreationEvent;
import com.ning.billing.entitlement.api.user.EffectiveSubscriptionEvent;
-import com.ning.billing.invoice.api.EmptyInvoiceEvent;
+import com.ning.billing.invoice.api.NullInvoiceEvent;
import com.ning.billing.invoice.api.InvoiceCreationEvent;
import com.ning.billing.payment.api.PaymentErrorEvent;
import com.ning.billing.payment.api.PaymentInfoEvent;
@@ -39,7 +39,7 @@ public interface CompletionUserRequestWaiter {
public void onInvoiceCreation(final InvoiceCreationEvent curEvent);
- public void onEmptyInvoice(final EmptyInvoiceEvent curEvent);
+ public void onEmptyInvoice(final NullInvoiceEvent curEvent);
public void onPaymentInfo(final PaymentInfoEvent curEvent);
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegration.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegration.java
index 832a419..ce54f8c 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegration.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegration.java
@@ -93,6 +93,18 @@ public class TestIntegration extends TestIntegrationBase {
}
+ @Test(groups = {"slow", "stress"}, enabled = true)
+ public void stressTestDebug() throws Exception {
+ final int maxIterations = 5;
+ for (int curIteration = 0; curIteration < maxIterations; curIteration++) {
+ log.info("################################ ITERATION " + curIteration + " #########################");
+ Thread.sleep(1000);
+ testRepairChangeBPWithAddonIncluded();
+ setupTest();
+ }
+ }
+
+
@Test(groups = "slow", enabled = true)
public void testRepairChangeBPWithAddonIncluded() throws Exception {
@@ -146,9 +158,13 @@ public class TestIntegration extends TestIntegrationBase {
busHandler.pushExpectedEvent(NextEvent.INVOICE);
busHandler.pushExpectedEvent(NextEvent.PAYMENT);
busHandler.pushExpectedEvent(NextEvent.INVOICE);
- busHandler.pushExpectedEvent(NextEvent.PAYMENT);
+ busHandler.pushExpectedEvent(NextEvent.INVOICE);
log.info("Moving clock from" + clock.getUTCNow() + " to " + clock.getUTCNow().plusDays(28));
clock.addDays(28);// 26 / 5
+
+
+ Thread.sleep(1000000);
+
assertTrue(busHandler.isCompleted(DELAY));
assertListenerStatus();
diff --git a/invoice/src/main/java/com/ning/billing/invoice/InvoiceDispatcher.java b/invoice/src/main/java/com/ning/billing/invoice/InvoiceDispatcher.java
index 1f747e5..01948ba 100644
--- a/invoice/src/main/java/com/ning/billing/invoice/InvoiceDispatcher.java
+++ b/invoice/src/main/java/com/ning/billing/invoice/InvoiceDispatcher.java
@@ -41,7 +41,7 @@ import com.ning.billing.invoice.api.InvoiceApiException;
import com.ning.billing.invoice.api.InvoiceCreationEvent;
import com.ning.billing.invoice.api.InvoiceItem;
import com.ning.billing.invoice.api.InvoiceNotifier;
-import com.ning.billing.invoice.api.user.DefaultEmptyInvoiceEvent;
+import com.ning.billing.invoice.api.user.DefaultNullInvoiceEvent;
import com.ning.billing.invoice.api.user.DefaultInvoiceCreationEvent;
import com.ning.billing.invoice.dao.InvoiceDao;
import com.ning.billing.invoice.generator.InvoiceGenerator;
@@ -159,7 +159,7 @@ public class InvoiceDispatcher {
log.info("Generated null invoice.");
outputDebugData(billingEvents, invoices);
if (!dryRun) {
- final BusEvent event = new DefaultEmptyInvoiceEvent(accountId, clock.getUTCNow(), context.getUserToken());
+ final BusEvent event = new DefaultNullInvoiceEvent(accountId, clock.getUTCNow(), context.getUserToken());
postEvent(event, accountId);
}
} else {
diff --git a/invoice/src/test/java/com/ning/billing/invoice/api/user/TestEventJson.java b/invoice/src/test/java/com/ning/billing/invoice/api/user/TestEventJson.java
index 404255b..1dff8cb 100644
--- a/invoice/src/test/java/com/ning/billing/invoice/api/user/TestEventJson.java
+++ b/invoice/src/test/java/com/ning/billing/invoice/api/user/TestEventJson.java
@@ -23,7 +23,7 @@ import org.testng.Assert;
import org.testng.annotations.Test;
import com.ning.billing.catalog.api.Currency;
-import com.ning.billing.invoice.api.EmptyInvoiceEvent;
+import com.ning.billing.invoice.api.NullInvoiceEvent;
import com.ning.billing.invoice.api.InvoiceCreationEvent;
import com.ning.billing.util.jackson.ObjectMapper;
@@ -45,11 +45,11 @@ public class TestEventJson {
@Test(groups = {"fast"})
public void testEmptyInvoiceEvent() throws Exception {
- final EmptyInvoiceEvent e = new DefaultEmptyInvoiceEvent(UUID.randomUUID(), new DateTime(), UUID.randomUUID());
+ final NullInvoiceEvent e = new DefaultNullInvoiceEvent(UUID.randomUUID(), new DateTime(), UUID.randomUUID());
final String json = mapper.writeValueAsString(e);
- final Class<?> claz = Class.forName(DefaultEmptyInvoiceEvent.class.getName());
+ final Class<?> claz = Class.forName(DefaultNullInvoiceEvent.class.getName());
final Object obj = mapper.readValue(json, claz);
Assert.assertTrue(obj.equals(e));
}
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/SubscriptionResource.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/SubscriptionResource.java
index 969830c..6cb4de1 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/SubscriptionResource.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/SubscriptionResource.java
@@ -49,7 +49,7 @@ 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.invoice.api.EmptyInvoiceEvent;
+import com.ning.billing.invoice.api.NullInvoiceEvent;
import com.ning.billing.invoice.api.InvoiceCreationEvent;
import com.ning.billing.jaxrs.json.CustomFieldJson;
import com.ning.billing.jaxrs.json.SubscriptionJsonNoEvents;
@@ -295,7 +295,7 @@ public class SubscriptionResource extends JaxRsResourceBase {
}
@Override
- public void onEmptyInvoice(final EmptyInvoiceEvent curEvent) {
+ public void onEmptyInvoice(final NullInvoiceEvent curEvent) {
log.info(String.format("Got event EmptyInvoiceNotification token = %s ", curEvent.getUserToken()));
notifyForCompletion();
}
diff --git a/junction/src/main/java/com/ning/billing/junction/plumbing/billing/DefaultBillingApi.java b/junction/src/main/java/com/ning/billing/junction/plumbing/billing/DefaultBillingApi.java
index 7aa55ff..3bc8f28 100644
--- a/junction/src/main/java/com/ning/billing/junction/plumbing/billing/DefaultBillingApi.java
+++ b/junction/src/main/java/com/ning/billing/junction/plumbing/billing/DefaultBillingApi.java
@@ -111,10 +111,10 @@ public class DefaultBillingApi implements BillingApi {
private void debugLog(final SortedSet<BillingEvent> result, final String title) {
- log.debug(title);
+ log.info(title);
final Iterator<BillingEvent> i = result.iterator();
while (i.hasNext()) {
- log.debug(i.next().toString());
+ log.info(i.next().toString());
}
}
diff --git a/util/src/main/java/com/ning/billing/util/userrequest/CompletionUserRequestBase.java b/util/src/main/java/com/ning/billing/util/userrequest/CompletionUserRequestBase.java
index 7468c27..20ecbc4 100644
--- a/util/src/main/java/com/ning/billing/util/userrequest/CompletionUserRequestBase.java
+++ b/util/src/main/java/com/ning/billing/util/userrequest/CompletionUserRequestBase.java
@@ -23,7 +23,7 @@ import java.util.concurrent.TimeoutException;
import com.ning.billing.account.api.AccountChangeEvent;
import com.ning.billing.account.api.AccountCreationEvent;
import com.ning.billing.entitlement.api.user.EffectiveSubscriptionEvent;
-import com.ning.billing.invoice.api.EmptyInvoiceEvent;
+import com.ning.billing.invoice.api.NullInvoiceEvent;
import com.ning.billing.invoice.api.InvoiceCreationEvent;
import com.ning.billing.payment.api.PaymentErrorEvent;
import com.ning.billing.payment.api.PaymentInfoEvent;
@@ -106,7 +106,7 @@ public abstract class CompletionUserRequestBase implements CompletionUserRequest
onSubscriptionTransition((EffectiveSubscriptionEvent) curEvent);
break;
case INVOICE_EMPTY:
- onEmptyInvoice((EmptyInvoiceEvent) curEvent);
+ onEmptyInvoice((NullInvoiceEvent) curEvent);
break;
case INVOICE_CREATION:
onInvoiceCreation((InvoiceCreationEvent) curEvent);
@@ -139,7 +139,7 @@ public abstract class CompletionUserRequestBase implements CompletionUserRequest
}
@Override
- public void onEmptyInvoice(final EmptyInvoiceEvent curEvent) {
+ public void onEmptyInvoice(final NullInvoiceEvent curEvent) {
}
@Override
diff --git a/util/src/test/java/com/ning/billing/api/TestApiListener.java b/util/src/test/java/com/ning/billing/api/TestApiListener.java
index 45543f3..8d6bedf 100644
--- a/util/src/test/java/com/ning/billing/api/TestApiListener.java
+++ b/util/src/test/java/com/ning/billing/api/TestApiListener.java
@@ -1,4 +1,4 @@
-/*
+/*
* Copyright 2010-2011 Ning, Inc.
*
* Ning licenses this file to you under the Apache License, version 2.0
@@ -28,6 +28,7 @@ import com.google.common.eventbus.Subscribe;
import com.ning.billing.entitlement.api.timeline.RepairEntitlementEvent;
import com.ning.billing.entitlement.api.user.EffectiveSubscriptionEvent;
import com.ning.billing.invoice.api.InvoiceCreationEvent;
+import com.ning.billing.invoice.api.InvoiceEvent;
import com.ning.billing.payment.api.PaymentErrorEvent;
import com.ning.billing.payment.api.PaymentInfoEvent;
@@ -122,11 +123,10 @@ public class TestApiListener {
}
@Subscribe
- public void handleInvoiceEvents(final InvoiceCreationEvent event) {
+ public void handleInvoiceEvents(final InvoiceEvent event) {
log.info(String.format("TestApiListener Got Invoice event %s", event.toString()));
assertEqualsNicely(NextEvent.INVOICE);
notifyIfStackEmpty();
-
}
@Subscribe