Details
diff --git a/api/src/main/java/com/ning/billing/invoice/api/InvoiceUserApi.java b/api/src/main/java/com/ning/billing/invoice/api/InvoiceUserApi.java
index 38543f2..91b0917 100644
--- a/api/src/main/java/com/ning/billing/invoice/api/InvoiceUserApi.java
+++ b/api/src/main/java/com/ning/billing/invoice/api/InvoiceUserApi.java
@@ -22,8 +22,6 @@ import java.util.Collection;
import java.util.List;
import java.util.UUID;
-import javax.annotation.Nullable;
-
import org.joda.time.LocalDate;
import com.ning.billing.account.api.AccountApiException;
@@ -160,20 +158,33 @@ public interface InvoiceUserApi {
Currency currency, CallContext context) throws InvoiceApiException;
/**
- * Adjust a given invoice item.
+ * Adjust fully a given invoice item.
+ *
+ * @param accountId account id
+ * @param invoiceId invoice id
+ * @param invoiceItemId invoice item id
+ * @param effectiveDate the effective date for this adjustment invoice item
+ * @param context the call context
+ * @return the adjustment invoice item
+ * @throws InvoiceApiException
+ */
+ public InvoiceItem insertInvoiceItemAdjustment(UUID accountId, UUID invoiceId, UUID invoiceItemId, LocalDate effectiveDate, CallContext context) throws InvoiceApiException;
+
+ /**
+ * Adjust partially a given invoice item.
*
* @param accountId account id
* @param invoiceId invoice id
* @param invoiceItemId invoice item id
* @param effectiveDate the effective date for this adjustment invoice item
- * @param amount the adjustment amount. Pass null to adjust for the full amount of the original item
- * @param currency adjustment currency. Pass null to use the original currency
+ * @param amount the adjustment amount
+ * @param currency adjustment currency
* @param context the call context
* @return the adjustment invoice item
* @throws InvoiceApiException
*/
public InvoiceItem insertInvoiceItemAdjustment(UUID accountId, UUID invoiceId, UUID invoiceItemId, LocalDate effectiveDate,
- @Nullable BigDecimal amount, @Nullable Currency currency, CallContext context) throws InvoiceApiException;
+ BigDecimal amount, Currency currency, CallContext context) throws InvoiceApiException;
/**
* Retrieve the invoice formatted in HTML.
diff --git a/invoice/src/main/java/com/ning/billing/invoice/api/user/DefaultInvoiceUserApi.java b/invoice/src/main/java/com/ning/billing/invoice/api/user/DefaultInvoiceUserApi.java
index 2fc3623..927db0b 100644
--- a/invoice/src/main/java/com/ning/billing/invoice/api/user/DefaultInvoiceUserApi.java
+++ b/invoice/src/main/java/com/ning/billing/invoice/api/user/DefaultInvoiceUserApi.java
@@ -158,6 +158,11 @@ public class DefaultInvoiceUserApi implements InvoiceUserApi {
}
@Override
+ public InvoiceItem insertInvoiceItemAdjustment(final UUID accountId, final UUID invoiceId, final UUID invoiceItemId, final LocalDate effectiveDate, final CallContext context) throws InvoiceApiException {
+ return insertInvoiceItemAdjustment(accountId, invoiceId, invoiceItemId, effectiveDate, null, null, context);
+ }
+
+ @Override
public InvoiceItem insertInvoiceItemAdjustment(final UUID accountId, final UUID invoiceId, final UUID invoiceItemId,
final LocalDate effectiveDate, @Nullable final BigDecimal amount,
@Nullable final Currency currency, final CallContext context) throws InvoiceApiException {
diff --git a/invoice/src/test/java/com/ning/billing/invoice/api/user/TestDefaultInvoiceUserApi.java b/invoice/src/test/java/com/ning/billing/invoice/api/user/TestDefaultInvoiceUserApi.java
index 88ce414..2de15d7 100644
--- a/invoice/src/test/java/com/ning/billing/invoice/api/user/TestDefaultInvoiceUserApi.java
+++ b/invoice/src/test/java/com/ning/billing/invoice/api/user/TestDefaultInvoiceUserApi.java
@@ -136,7 +136,7 @@ public class TestDefaultInvoiceUserApi extends InvoiceApiTestBase {
// Adjust the invoice for the full amount
final InvoiceItem adjInvoiceItem = invoiceUserApi.insertInvoiceItemAdjustment(accountId, invoiceId, invoiceItem.getId(),
- clock.getUTCToday(), null, null, context);
+ clock.getUTCToday(), context);
Assert.assertEquals(adjInvoiceItem.getInvoiceId(), invoiceId);
Assert.assertEquals(adjInvoiceItem.getInvoiceItemType(), InvoiceItemType.ITEM_ADJ);
Assert.assertEquals(adjInvoiceItem.getAccountId(), accountId);