diff options
author | Endi S. Dewata <edewata@redhat.com> | 2014-02-11 16:23:59 -0500 |
---|---|---|
committer | Endi S. Dewata <edewata@redhat.com> | 2014-02-18 11:34:56 -0500 |
commit | e412c9a33793c2cde306e7bc98e9cd096f669bed (patch) | |
tree | 24e342a41683fdefabfbb3d60d4bbbf52284fbd1 /base/common/src/com/netscape/certsrv/cert | |
parent | 1cfaa91e25df63fbe11e3da0c686071850c7a038 (diff) | |
download | pki-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.java | 23 | ||||
-rw-r--r-- | base/common/src/com/netscape/certsrv/cert/CertResource.java | 24 |
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); } |