diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/CreditResource.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/CreditResource.java
index b9bb48c..226457e 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/CreditResource.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/CreditResource.java
@@ -16,19 +16,9 @@
package com.ning.billing.jaxrs.resources;
-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;
-import com.ning.billing.invoice.api.InvoiceApiException;
-import com.ning.billing.invoice.api.InvoiceItem;
-import com.ning.billing.invoice.api.InvoiceUserApi;
-import com.ning.billing.jaxrs.json.CreditJson;
-import com.ning.billing.jaxrs.util.Context;
-import com.ning.billing.jaxrs.util.JaxrsUriBuilder;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import static javax.ws.rs.core.MediaType.APPLICATION_JSON;
+
+import java.util.UUID;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
@@ -39,12 +29,23 @@ import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Response;
-import java.util.UUID;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
-import static javax.ws.rs.core.MediaType.APPLICATION_JSON;
+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;
+import com.ning.billing.invoice.api.InvoiceApiException;
+import com.ning.billing.invoice.api.InvoiceItem;
+import com.ning.billing.invoice.api.InvoiceUserApi;
+import com.ning.billing.jaxrs.json.CreditJson;
+import com.ning.billing.jaxrs.util.Context;
+import com.ning.billing.jaxrs.util.JaxrsUriBuilder;
@Singleton
-@Path(JaxrsResource.PREFIX)
+@Path(JaxrsResource.CREDITS_PATH)
public class CreditResource implements JaxrsResource {
private static final Logger log = LoggerFactory.getLogger(CreditResource.class);
@@ -62,11 +63,11 @@ public class CreditResource implements JaxrsResource {
}
@GET
- @Path("/credits/{creditId:" + UUID_PATTERN + "}")
+ @Path("/{creditId:" + UUID_PATTERN + "}")
@Produces(APPLICATION_JSON)
public Response getCredit(@PathParam("creditId") String creditId) {
try {
- InvoiceItem credit = invoiceUserApi.getCreditById(UUID.fromString(creditId));
+ InvoiceItem credit = invoiceUserApi.getCreditById(UUID.fromString(creditId));
CreditJson creditJson = new CreditJson(credit);
return Response.status(Response.Status.OK).entity(creditJson).build();
@@ -78,19 +79,19 @@ public class CreditResource implements JaxrsResource {
}
@POST
- @Path("/accounts/{accountId:" + UUID_PATTERN + "}/credits")
+ @Path("/accounts/{accountId:" + UUID_PATTERN + "}")
@Consumes(APPLICATION_JSON)
@Produces(APPLICATION_JSON)
- public Response createChargeback(final CreditJson json,
- @PathParam("accountId") final String accountId,
- @HeaderParam(HDR_CREATED_BY) final String createdBy,
- @HeaderParam(HDR_REASON) final String reason,
- @HeaderParam(HDR_COMMENT) final String comment) {
+ public Response createCredit(final CreditJson json,
+ @PathParam("accountId") final String accountId,
+ @HeaderParam(HDR_CREATED_BY) final String createdBy,
+ @HeaderParam(HDR_REASON) final String reason,
+ @HeaderParam(HDR_COMMENT) final String comment) {
try {
Account account = accountUserApi.getAccountById(UUID.fromString(accountId));
InvoiceItem credit = invoiceUserApi.insertCredit(account.getId(), json.getCreditAmount(), json.getEffectiveDate(),
- account.getCurrency(), context.createContext(createdBy, reason, comment));
+ account.getCurrency(), context.createContext(createdBy, reason, comment));
return uriBuilder.buildResponse(ChargebackResource.class, "getCredit", credit.getId());
} catch (InvoiceApiException e) {
@@ -110,7 +111,6 @@ public class CreditResource implements JaxrsResource {
}
-
//POST /1.0/accounts/<account_id>/credits Creates a credit for that account 201 (CREATED), 400 (BAD_REQUEST), 404 (NOT_FOUND)
//Semantics:
//
diff --git a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/JaxrsResource.java b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/JaxrsResource.java
index 8d74c07..d208ce9 100644
--- a/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/JaxrsResource.java
+++ b/jaxrs/src/main/java/com/ning/billing/jaxrs/resources/JaxrsResource.java
@@ -74,7 +74,9 @@ public interface JaxrsResource {
public static final String INVOICES = "invoices";
public static final String INVOICES_PATH = PREFIX + "/" + INVOICES;
-
+ public static final String CREDITS = "credits";
+ public static final String CREDITS_PATH = PREFIX + "/" + CREDITS;
+
public static final String TAGS = "tags";
public static final String CUSTOM_FIELDS = "custom_fields";
}