summaryrefslogtreecommitdiffstats
path: root/base/common/src/com/netscape/certsrv/cert
diff options
context:
space:
mode:
authorEndi S. Dewata <edewata@redhat.com>2014-02-11 16:23:59 -0500
committerEndi S. Dewata <edewata@redhat.com>2014-02-18 11:34:56 -0500
commite412c9a33793c2cde306e7bc98e9cd096f669bed (patch)
tree24e342a41683fdefabfbb3d60d4bbbf52284fbd1 /base/common/src/com/netscape/certsrv/cert
parent1cfaa91e25df63fbe11e3da0c686071850c7a038 (diff)
downloadpki-e412c9a33793c2cde306e7bc98e9cd096f669bed.tar.gz
pki-e412c9a33793c2cde306e7bc98e9cd096f669bed.tar.xz
pki-e412c9a33793c2cde306e7bc98e9cd096f669bed.zip
Updated REST interface for certificates.
The REST interface for certificates has been modified to return Response objects to allow better handling of server responses. Ticket #554
Diffstat (limited to 'base/common/src/com/netscape/certsrv/cert')
-rw-r--r--base/common/src/com/netscape/certsrv/cert/CertClient.java23
-rw-r--r--base/common/src/com/netscape/certsrv/cert/CertResource.java24
2 files changed, 33 insertions, 14 deletions
diff --git a/base/common/src/com/netscape/certsrv/cert/CertClient.java b/base/common/src/com/netscape/certsrv/cert/CertClient.java
index ab7ad9a55..c52372c54 100644
--- a/base/common/src/com/netscape/certsrv/cert/CertClient.java
+++ b/base/common/src/com/netscape/certsrv/cert/CertClient.java
@@ -19,6 +19,8 @@ package com.netscape.certsrv.cert;
import java.net.URISyntaxException;
+import javax.ws.rs.core.Response;
+
import com.netscape.certsrv.client.Client;
import com.netscape.certsrv.client.PKIClient;
import com.netscape.certsrv.dbs.certdb.CertId;
@@ -44,31 +46,38 @@ public class CertClient extends Client {
}
public CertData getCert(CertId id) {
- return certClient.getCert(id);
+ Response response = certClient.getCert(id);
+ return client.getEntity(response, CertData.class);
}
public CertData reviewCert(CertId id) {
- return certClient.reviewCert(id);
+ Response response = certClient.reviewCert(id);
+ return client.getEntity(response, CertData.class);
}
public CertDataInfos listCerts(String status, Integer maxResults, Integer maxTime, Integer start, Integer size) {
- return certClient.listCerts(status, maxResults, maxTime, start, size);
+ Response response = certClient.listCerts(status, maxResults, maxTime, start, size);
+ return client.getEntity(response, CertDataInfos.class);
}
public CertDataInfos findCerts(CertSearchRequest data, Integer start, Integer size) {
- return certClient.searchCerts(data, start, size);
+ Response response = certClient.searchCerts(data, start, size);
+ return client.getEntity(response, CertDataInfos.class);
}
public CertRequestInfo revokeCert(CertId id, CertRevokeRequest request) {
- return certClient.revokeCert(id, request);
+ Response response = certClient.revokeCert(id, request);
+ return client.getEntity(response, CertRequestInfo.class);
}
public CertRequestInfo revokeCACert(CertId id, CertRevokeRequest request) {
- return certClient.revokeCACert(id, request);
+ Response response = certClient.revokeCACert(id, request);
+ return client.getEntity(response, CertRequestInfo.class);
}
public CertRequestInfo unrevokeCert(CertId id, CertUnrevokeRequest request) {
- return certClient.unrevokeCert(id, request);
+ Response response = certClient.unrevokeCert(id, request);
+ return client.getEntity(response, CertRequestInfo.class);
}
public CertRequestInfos enrollRequest(CertEnrollmentRequest data) {
diff --git a/base/common/src/com/netscape/certsrv/cert/CertResource.java b/base/common/src/com/netscape/certsrv/cert/CertResource.java
index 9f527e130..23e898755 100644
--- a/base/common/src/com/netscape/certsrv/cert/CertResource.java
+++ b/base/common/src/com/netscape/certsrv/cert/CertResource.java
@@ -8,6 +8,9 @@ import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.Response;
+
+import org.jboss.resteasy.annotations.ClientResponseType;
import com.netscape.certsrv.acls.ACLMapping;
import com.netscape.certsrv.authentication.AuthMethodMapping;
@@ -18,8 +21,9 @@ public interface CertResource {
@GET
@Path("certs")
+ @ClientResponseType(entityType=CertDataInfos.class)
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
- public CertDataInfos listCerts(
+ public Response listCerts(
@QueryParam("status") String status,
@QueryParam("maxResults") Integer maxResults,
@QueryParam("maxTime") Integer maxTime,
@@ -28,46 +32,52 @@ public interface CertResource {
@POST
@Path("certs/search")
+ @ClientResponseType(entityType=CertDataInfos.class)
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
@Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
- public CertDataInfos searchCerts(
+ public Response searchCerts(
CertSearchRequest data,
@QueryParam("start") Integer start,
@QueryParam("size") Integer size);
@GET
@Path("certs/{id}")
+ @ClientResponseType(entityType=CertData.class)
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
- public CertData getCert(@PathParam("id") CertId id);
+ public Response getCert(@PathParam("id") CertId id);
@GET
@Path("agent/certs/{id}")
+ @ClientResponseType(entityType=CertData.class)
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
@ACLMapping("certs")
@AuthMethodMapping("certs")
- public CertData reviewCert(@PathParam("id") CertId id);
+ public Response reviewCert(@PathParam("id") CertId id);
@POST
@Path("agent/certs/{id}/revoke-ca")
+ @ClientResponseType(entityType=CertRequestInfo.class)
@Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
@ACLMapping("certs")
@AuthMethodMapping("certs")
- public CertRequestInfo revokeCACert(@PathParam("id") CertId id, CertRevokeRequest request);
+ public Response revokeCACert(@PathParam("id") CertId id, CertRevokeRequest request);
@POST
@Path("agent/certs/{id}/revoke")
+ @ClientResponseType(entityType=CertRequestInfo.class)
@Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
@ACLMapping("certs")
@AuthMethodMapping("certs")
- public CertRequestInfo revokeCert(@PathParam("id") CertId id, CertRevokeRequest request);
+ public Response revokeCert(@PathParam("id") CertId id, CertRevokeRequest request);
@POST
@Path("agent/certs/{id}/unrevoke")
+ @ClientResponseType(entityType=CertRequestInfo.class)
@Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
@ACLMapping("certs")
@AuthMethodMapping("certs")
- public CertRequestInfo unrevokeCert(@PathParam("id") CertId id, CertUnrevokeRequest request);
+ public Response unrevokeCert(@PathParam("id") CertId id, CertUnrevokeRequest request);
}