diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/PaymentMethodResource.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/PaymentMethodResource.java
index 45961b3..91012ee 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/PaymentMethodResource.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/PaymentMethodResource.java
@@ -13,8 +13,11 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
+
package com.ning.billing.jaxrs.resources;
+import java.util.UUID;
+
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.DefaultValue;
@@ -27,13 +30,7 @@ import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.Status;
-import java.util.UUID;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
import com.ning.billing.account.api.Account;
import com.ning.billing.account.api.AccountApiException;
import com.ning.billing.account.api.AccountUserApi;
@@ -47,76 +44,60 @@ import com.ning.billing.util.api.CustomFieldUserApi;
import com.ning.billing.util.api.TagUserApi;
import com.ning.billing.util.dao.ObjectType;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+
import static javax.ws.rs.core.MediaType.APPLICATION_JSON;
@Singleton
@Path(JaxrsResource.PAYMENT_METHODS_PATH)
public class PaymentMethodResource extends JaxRsResourceBase {
- private static final Logger log = LoggerFactory.getLogger(PaymentMethodResource.class);
-
private final PaymentApi paymentApi;
private final AccountUserApi accountApi;
private final Context context;
@Inject
- public PaymentMethodResource(final JaxrsUriBuilder uriBuilder, final AccountUserApi accountApi,
- final PaymentApi paymentApi, final TagUserApi tagUserApi,
- final CustomFieldUserApi customFieldUserApi, final Context context) {
- super(uriBuilder, tagUserApi,customFieldUserApi);
+ public PaymentMethodResource(final JaxrsUriBuilder uriBuilder,
+ final AccountUserApi accountApi,
+ final PaymentApi paymentApi,
+ final TagUserApi tagUserApi,
+ final CustomFieldUserApi customFieldUserApi,
+ final Context context) {
+ super(uriBuilder, tagUserApi, customFieldUserApi);
this.paymentApi = paymentApi;
this.accountApi = accountApi;
this.context = context;
}
-
@GET
@Path("/{paymentMethodId:" + UUID_PATTERN + "}")
@Produces(APPLICATION_JSON)
public Response getPaymentMethod(@PathParam("paymentMethodId") final String paymentMethodId,
- @QueryParam(QUERY_PAYMENT_METHOD_PLUGIN_INFO) @DefaultValue("false") final Boolean withPluginInfo) {
- try {
- PaymentMethod paymentMethod = paymentApi.getPaymentMethodById(UUID.fromString(paymentMethodId));
- final Account account = accountApi.getAccountById(paymentMethod.getAccountId());
- if (withPluginInfo) {
- paymentMethod = paymentApi.getPaymentMethod(account, paymentMethod.getId(), true);
- }
- final PaymentMethodJson json = PaymentMethodJson.toPaymentMethodJson(account, paymentMethod);
-
- return Response.status(Status.OK).entity(json).build();
- } catch (AccountApiException e) {
- return Response.status(Status.NO_CONTENT).build();
- } catch (PaymentApiException e) {
- return Response.status(Status.NO_CONTENT).entity("PaymentMethod does not exist").build();
+ @QueryParam(QUERY_PAYMENT_METHOD_PLUGIN_INFO) @DefaultValue("false") final Boolean withPluginInfo) throws AccountApiException, PaymentApiException {
+ PaymentMethod paymentMethod = paymentApi.getPaymentMethodById(UUID.fromString(paymentMethodId));
+ final Account account = accountApi.getAccountById(paymentMethod.getAccountId());
+ if (withPluginInfo) {
+ paymentMethod = paymentApi.getPaymentMethod(account, paymentMethod.getId(), true);
}
- }
+ final PaymentMethodJson json = PaymentMethodJson.toPaymentMethodJson(account, paymentMethod);
+ return Response.status(Status.OK).entity(json).build();
+ }
@PUT
@Consumes(APPLICATION_JSON)
@Produces(APPLICATION_JSON)
@Path("/{paymentMethodId:" + UUID_PATTERN + "}")
public Response updatePaymentMethod(final PaymentMethodJson json,
- @PathParam("paymentMethodId") final String paymentMethodId,
- @HeaderParam(HDR_CREATED_BY) final String createdBy,
- @HeaderParam(HDR_REASON) final String reason,
- @HeaderParam(HDR_COMMENT) final String comment) {
- try {
-
- final PaymentMethod input = json.toPaymentMethod();
- final PaymentMethod paymentMethod = paymentApi.getPaymentMethodById(UUID.fromString(paymentMethodId));
-
- final Account account = accountApi.getAccountById(paymentMethod.getAccountId());
-
- paymentApi.updatePaymentMethod(account, paymentMethod.getId(), input.getPluginDetail());
- return getPaymentMethod(paymentMethod.getId().toString(), false);
- } catch (PaymentApiException e) {
- return Response.status(Status.NO_CONTENT).entity("PaymentMethod does not exist").build();
- } catch (AccountApiException e) {
- return Response.status(Status.NO_CONTENT).build();
- } catch (IllegalArgumentException e) {
- return Response.status(Status.BAD_REQUEST).entity(e.getMessage()).build();
- }
+ @PathParam("paymentMethodId") final String paymentMethodId) throws PaymentApiException, AccountApiException {
+ final PaymentMethod input = json.toPaymentMethod();
+ final PaymentMethod paymentMethod = paymentApi.getPaymentMethodById(UUID.fromString(paymentMethodId));
+ final Account account = accountApi.getAccountById(paymentMethod.getAccountId());
+
+ paymentApi.updatePaymentMethod(account, paymentMethod.getId(), input.getPluginDetail());
+
+ return getPaymentMethod(paymentMethod.getId().toString(), false);
}
@DELETE
@@ -125,20 +106,13 @@ public class PaymentMethodResource extends JaxRsResourceBase {
public Response deletePaymentMethod(@PathParam("paymentMethodId") final String paymentMethodId,
@HeaderParam(HDR_CREATED_BY) final String createdBy,
@HeaderParam(HDR_REASON) final String reason,
- @HeaderParam(HDR_COMMENT) final String comment) {
- try {
-
- final PaymentMethod paymentMethod = paymentApi.getPaymentMethodById(UUID.fromString(paymentMethodId));
- final Account account = accountApi.getAccountById(paymentMethod.getAccountId());
- paymentApi.deletedPaymentMethod(account, UUID.fromString(paymentMethodId), context.createContext(createdBy, reason, comment));
- return Response.status(Status.OK).build();
- } catch (PaymentApiException e) {
- return Response.status(Status.NO_CONTENT).entity("PaymentMethod does not exist").build();
- } catch (AccountApiException e) {
- return Response.status(Status.NO_CONTENT).build();
- } catch (IllegalArgumentException e) {
- return Response.status(Status.BAD_REQUEST).entity(e.getMessage()).build();
- }
+ @HeaderParam(HDR_COMMENT) final String comment) throws PaymentApiException, AccountApiException {
+ final PaymentMethod paymentMethod = paymentApi.getPaymentMethodById(UUID.fromString(paymentMethodId));
+ final Account account = accountApi.getAccountById(paymentMethod.getAccountId());
+
+ paymentApi.deletedPaymentMethod(account, UUID.fromString(paymentMethodId), context.createContext(createdBy, reason, comment));
+
+ return Response.status(Status.OK).build();
}
@Override