diff options
author | Endi Sukma Dewata <edewata@redhat.com> | 2012-08-11 09:47:39 -0500 |
---|---|---|
committer | Endi Sukma Dewata <edewata@redhat.com> | 2012-08-15 12:07:43 -0500 |
commit | 1aa02e5207514d210e903d23e1d698b85fc29344 (patch) | |
tree | 3bd555aed82c2446208444939594aac3e3979308 /base/common/src/com/netscape/certsrv/key/KeyResource.java | |
parent | 3c9b8e787ccf066c38469e1fe2c119d5c410bb5e (diff) | |
download | pki-1aa02e5207514d210e903d23e1d698b85fc29344.tar.gz pki-1aa02e5207514d210e903d23e1d698b85fc29344.tar.xz pki-1aa02e5207514d210e903d23e1d698b85fc29344.zip |
Reorganized REST common classes.
The common classes used by REST client and services have been moved
into the com.netscape.certsrv.<component> packages.
Ticket #215
Diffstat (limited to 'base/common/src/com/netscape/certsrv/key/KeyResource.java')
-rw-r--r-- | base/common/src/com/netscape/certsrv/key/KeyResource.java | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/base/common/src/com/netscape/certsrv/key/KeyResource.java b/base/common/src/com/netscape/certsrv/key/KeyResource.java new file mode 100644 index 000000000..a499ca11f --- /dev/null +++ b/base/common/src/com/netscape/certsrv/key/KeyResource.java @@ -0,0 +1,45 @@ +package com.netscape.certsrv.key; + +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.Produces; +import javax.ws.rs.QueryParam; +import javax.ws.rs.core.MediaType; +import javax.ws.rs.core.MultivaluedMap; + + +@Path("agent/keys") +public interface KeyResource { + + public static final int DEFAULT_MAXTIME = 10; + public static final int DEFAULT_MAXRESULTS = 100; + + @GET + @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON }) + public KeyDataInfos listKeys(@QueryParam("clientID") String clientID, + @QueryParam("status") String status, + @DefaultValue(""+DEFAULT_MAXRESULTS) @QueryParam("maxResults") int maxResults, + @DefaultValue(""+DEFAULT_MAXTIME) @QueryParam("maxTime") int maxTime); + + + /** + * Used to retrieve a key + * @param data + * @return + */ + @POST + @Path("retrieve") + @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON }) + @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON }) + public KeyData retrieveKey(KeyRecoveryRequest data); + + // retrieval - used to test integration with a browser + @POST + @Path("retrieve") + @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON }) + @Consumes({ MediaType.APPLICATION_FORM_URLENCODED }) + public KeyData retrieveKey(MultivaluedMap<String, String> form); +} |