summaryrefslogtreecommitdiffstats
path: root/base/common/src/com/netscape/certsrv/cert/CertResource.java
diff options
context:
space:
mode:
Diffstat (limited to 'base/common/src/com/netscape/certsrv/cert/CertResource.java')
-rw-r--r--base/common/src/com/netscape/certsrv/cert/CertResource.java60
1 files changed, 60 insertions, 0 deletions
diff --git a/base/common/src/com/netscape/certsrv/cert/CertResource.java b/base/common/src/com/netscape/certsrv/cert/CertResource.java
new file mode 100644
index 000000000..1d5958824
--- /dev/null
+++ b/base/common/src/com/netscape/certsrv/cert/CertResource.java
@@ -0,0 +1,60 @@
+package com.netscape.certsrv.cert;
+
+import javax.ws.rs.Consumes;
+import javax.ws.rs.DefaultValue;
+import javax.ws.rs.GET;
+import javax.ws.rs.POST;
+import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
+import javax.ws.rs.Produces;
+import javax.ws.rs.QueryParam;
+import javax.ws.rs.core.MediaType;
+
+import com.netscape.certsrv.dbs.certdb.CertId;
+
+@Path("")
+public interface CertResource {
+
+ public static final int DEFAULT_MAXTIME = 0;
+ public static final int DEFAULT_MAXRESULTS = 20;
+
+ @GET
+ @Path("certs")
+ @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
+ public CertDataInfos listCerts(
+ @QueryParam("status") String status,
+ @DefaultValue("" + DEFAULT_MAXRESULTS) @QueryParam("maxResults") int maxResults,
+ @DefaultValue("" + DEFAULT_MAXTIME) @QueryParam("maxTime") int maxTime);
+
+ @POST
+ @Path("certs/search")
+ @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
+ @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
+ public CertDataInfos searchCerts(
+ CertSearchRequest data,
+ @QueryParam("start") Integer start,
+ @QueryParam("size") Integer size);
+
+ @GET
+ @Path("certs/{id}")
+ @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
+ public CertData getCert(@PathParam("id") CertId id);
+
+ @POST
+ @Path("agent/certs/{id}/revoke-ca")
+ @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
+ @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
+ public CertRequestInfo revokeCACert(@PathParam("id") CertId id, CertRevokeRequest request);
+
+ @POST
+ @Path("agent/certs/{id}/revoke")
+ @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
+ @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
+ public CertRequestInfo revokeCert(@PathParam("id") CertId id, CertRevokeRequest request);
+
+ @POST
+ @Path("agent/certs/{id}/unrevoke")
+ @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
+ @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
+ public CertRequestInfo unrevokeCert(@PathParam("id") CertId id, CertUnrevokeRequest request);
+}