Details
diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/AccountResource.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/AccountResource.java
index f2291ab..e8898f2 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/AccountResource.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/AccountResource.java
@@ -1303,7 +1303,7 @@ public class AccountResource extends JaxRsResourceBase {
@ApiOperation(value = "Remove tags from account")
@ApiResponses(value = {@ApiResponse(code = 400, message = "Invalid account id supplied or account does not have a default payment method (AUTO_PAY_OFF tag only)")})
public Response deleteTags(@PathParam(ID_PARAM_NAME) final UUID accountId,
- @QueryParam(QUERY_TAG) final List<String> tagList,
+ @QueryParam(QUERY_TAG) final List<UUID> tagList,
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
@@ -1312,9 +1312,8 @@ public class AccountResource extends JaxRsResourceBase {
// Look if there is an AUTO_PAY_OFF for that account and check if the account has a default paymentMethod
// If not we can't remove the AUTO_PAY_OFF tag
- final Collection<UUID> tagDefinitionUUIDs = getTagDefinitionUUIDs(tagList);
boolean isTagAutoPayOff = false;
- for (final UUID cur : tagDefinitionUUIDs) {
+ for (final UUID cur : tagList) {
if (cur.equals(ControlTagType.AUTO_PAY_OFF.getId())) {
isTagAutoPayOff = true;
break;
diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/BundleResource.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/BundleResource.java
index 5ced172..c9f4032 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/BundleResource.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/BundleResource.java
@@ -459,7 +459,7 @@ public class BundleResource extends JaxRsResourceBase {
@ApiOperation(value = "Remove tags from bundle")
@ApiResponses(value = {@ApiResponse(code = 400, message = "Invalid bundle id supplied")})
public Response deleteTags(@PathParam(ID_PARAM_NAME) final UUID bundleId,
- @QueryParam(QUERY_TAG) final List<String> tagList,
+ @QueryParam(QUERY_TAG) final List<UUID> tagList,
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/InvoiceItemResource.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/InvoiceItemResource.java
index 5035ad1..fcb1833 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/InvoiceItemResource.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/InvoiceItemResource.java
@@ -187,7 +187,7 @@ public class InvoiceItemResource extends JaxRsResourceBase {
@ApiOperation(value = "Remove tags from invoice item")
@ApiResponses(value = {@ApiResponse(code = 400, message = "Invalid invoice item id supplied")})
public Response deleteTags(@PathParam(ID_PARAM_NAME) final UUID id,
- @QueryParam(QUERY_TAG) final List<String> tagList,
+ @QueryParam(QUERY_TAG) final List<UUID> tagList,
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/InvoicePaymentResource.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/InvoicePaymentResource.java
index b270235..8252eec 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/InvoicePaymentResource.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/InvoicePaymentResource.java
@@ -421,7 +421,7 @@ public class InvoicePaymentResource extends JaxRsResourceBase {
@ApiOperation(value = "Remove tags from payment")
@ApiResponses(value = {@ApiResponse(code = 400, message = "Invalid payment id supplied")})
public Response deleteTags(@PathParam(ID_PARAM_NAME) final UUID id,
- @QueryParam(QUERY_TAG) final List<String> tagList,
+ @QueryParam(QUERY_TAG) final List<UUID> tagList,
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/InvoiceResource.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/InvoiceResource.java
index 00f840a..bac709a 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/InvoiceResource.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/InvoiceResource.java
@@ -975,7 +975,7 @@ public class InvoiceResource extends JaxRsResourceBase {
@ApiOperation(value = "Remove tags from invoice")
@ApiResponses(value = {@ApiResponse(code = 400, message = "Invalid invoice id supplied")})
public Response deleteTags(@PathParam(ID_PARAM_NAME) final UUID id,
- @QueryParam(QUERY_TAG) final List<String> tagList,
+ @QueryParam(QUERY_TAG) final List<UUID> tagList,
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/JaxRsResourceBase.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/JaxRsResourceBase.java
index a78fffc..7fa89ab 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/JaxRsResourceBase.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/JaxRsResourceBase.java
@@ -226,11 +226,9 @@ public abstract class JaxRsResourceBase implements JaxrsResource {
}
protected Response deleteTags(final UUID id,
- final List<String> tagList,
+ final List<UUID> tagList,
final CallContext context) throws TagApiException {
- final Collection<UUID> input = getTagDefinitionUUIDs(tagList);
- tagUserApi.removeTags(id, getObjectType(), input, context);
-
+ tagUserApi.removeTags(id, getObjectType(), tagList, context);
return Response.status(Response.Status.OK).build();
}
diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/PaymentResource.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/PaymentResource.java
index 81013c9..906e578 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/PaymentResource.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/PaymentResource.java
@@ -888,7 +888,7 @@ public class PaymentResource extends ComboPaymentResource {
@ApiOperation(value = "Remove tags from payment payment")
@ApiResponses(value = {@ApiResponse(code = 400, message = "Invalid payment id supplied")})
public Response deleteTags(@PathParam(ID_PARAM_NAME) final UUID paymentId,
- @QueryParam(QUERY_TAG) final List<String> tagList,
+ @QueryParam(QUERY_TAG) final List<UUID> tagList,
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/SubscriptionResource.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/SubscriptionResource.java
index 3bdbde8..f13e34e 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/SubscriptionResource.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/SubscriptionResource.java
@@ -957,7 +957,7 @@ public class SubscriptionResource extends JaxRsResourceBase {
@ApiOperation(value = "Remove tags from subscription")
@ApiResponses(value = {@ApiResponse(code = 400, message = "Invalid subscription id supplied")})
public Response deleteTags(@PathParam(ID_PARAM_NAME) final UUID id,
- @QueryParam(QUERY_TAG) final List<String> tagList,
+ @QueryParam(QUERY_TAG) final List<UUID> tagList,
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/TransactionResource.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/TransactionResource.java
index 95485d3..bba7dcb 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/TransactionResource.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/TransactionResource.java
@@ -253,7 +253,7 @@ public class TransactionResource extends JaxRsResourceBase {
@ApiOperation(value = "Remove tags from payment transaction")
@ApiResponses(value = {@ApiResponse(code = 400, message = "Invalid transaction id supplied")})
public Response deleteTags(@PathParam(ID_PARAM_NAME) final UUID id,
- @QueryParam(QUERY_TAG) final List<String> tagList,
+ @QueryParam(QUERY_TAG) final List<UUID> tagList,
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
@HeaderParam(HDR_COMMENT) final String comment,
diff --git a/profiles/killbill/src/test/java/org/killbill/billing/jaxrs/KillbillClient.java b/profiles/killbill/src/test/java/org/killbill/billing/jaxrs/KillbillClient.java
index 49585c2..04c5666 100644
--- a/profiles/killbill/src/test/java/org/killbill/billing/jaxrs/KillbillClient.java
+++ b/profiles/killbill/src/test/java/org/killbill/billing/jaxrs/KillbillClient.java
@@ -26,6 +26,7 @@ import javax.annotation.Nullable;
import org.killbill.billing.GuicyKillbillTestSuiteWithEmbeddedDB;
import org.killbill.billing.catalog.api.BillingPeriod;
+import org.killbill.billing.catalog.api.Currency;
import org.killbill.billing.catalog.api.PriceListSet;
import org.killbill.billing.catalog.api.ProductCategory;
import org.killbill.billing.client.KillBillClientException;
@@ -82,7 +83,7 @@ public abstract class KillbillClient extends GuicyKillbillTestSuiteWithEmbeddedD
protected static final String PLUGIN_NAME = "noop";
- protected static final String DEFAULT_CURRENCY = "USD";
+ protected static final Currency DEFAULT_CURRENCY = Currency.USD;
// Multi-Tenancy information, if enabled
protected String DEFAULT_API_KEY = UUID.randomUUID().toString();
@@ -282,7 +283,7 @@ public abstract class KillbillClient extends GuicyKillbillTestSuiteWithEmbeddedD
public Account getAccount(final String name, final String externalKey, final String email, final UUID parentAccountId) {
final UUID accountId = UUID.randomUUID();
final int length = 4;
- final String currency = DEFAULT_CURRENCY;
+ final Currency currency = DEFAULT_CURRENCY;
final String timeZone = "UTC";
final String address1 = "12 rue des ecoles";
final String address2 = "Poitier";
diff --git a/profiles/killbill/src/test/java/org/killbill/billing/jaxrs/TestAccount.java b/profiles/killbill/src/test/java/org/killbill/billing/jaxrs/TestAccount.java
index db0b5a2..47465b6 100644
--- a/profiles/killbill/src/test/java/org/killbill/billing/jaxrs/TestAccount.java
+++ b/profiles/killbill/src/test/java/org/killbill/billing/jaxrs/TestAccount.java
@@ -303,8 +303,9 @@ public class TestAccount extends TestJaxrsBase {
// FINALLY TRY TO REMOVE AUTO_PAY_OFF WITH NO DEFAULT PAYMENT METHOD ON ACCOUNT
//
try {
- accountApi.deleteTags(accountJson.getAccountId(), ImmutableList.<String>of(new UUID(0, 1).toString()), requestOptions);
+ accountApi.deleteTags(accountJson.getAccountId(), ImmutableList.<UUID>of(new UUID(0, 1)), requestOptions);
} catch (final KillBillClientException e) {
+ Assert.assertTrue(e.getBillingException().getCode() == ErrorCode.TAG_CANNOT_BE_REMOVED.getCode());
}
}