killbill-memoizeit

analytics: fix potential NPE in AuditedPaymentDao AuditedPaymentDao.getPayment(paymentId)

8/29/2012 3:01:41 PM

Details

diff --git a/analytics/src/main/java/com/ning/billing/analytics/BusinessInvoicePaymentRecorder.java b/analytics/src/main/java/com/ning/billing/analytics/BusinessInvoicePaymentRecorder.java
index fa66c97..9c64c3a 100644
--- a/analytics/src/main/java/com/ning/billing/analytics/BusinessInvoicePaymentRecorder.java
+++ b/analytics/src/main/java/com/ning/billing/analytics/BusinessInvoicePaymentRecorder.java
@@ -67,7 +67,13 @@ public class BusinessInvoicePaymentRecorder {
         this.accountRecorder = accountRecorder;
     }
 
-    public void invoicePaymentPosted(final UUID accountId, final UUID paymentId, @Nullable final String extFirstPaymentRefId, @Nullable final String extSecondPaymentRefId, final String message) {
+    public void invoicePaymentPosted(final UUID accountId, @Nullable final UUID paymentId, @Nullable final String extFirstPaymentRefId,
+                                     @Nullable final String extSecondPaymentRefId, final String message) {
+        // Payment attempt with no default payment method. Ignore.
+        if (paymentId == null) {
+            return;
+        }
+
         final Account account;
         try {
             account = accountApi.getAccountById(accountId);