summaryrefslogtreecommitdiffstats
path: root/pki/base/common/src/com/netscape/cms/servlet/request/KeyRequestResource.java
diff options
context:
space:
mode:
Diffstat (limited to 'pki/base/common/src/com/netscape/cms/servlet/request/KeyRequestResource.java')
-rw-r--r--pki/base/common/src/com/netscape/cms/servlet/request/KeyRequestResource.java141
1 files changed, 17 insertions, 124 deletions
diff --git a/pki/base/common/src/com/netscape/cms/servlet/request/KeyRequestResource.java b/pki/base/common/src/com/netscape/cms/servlet/request/KeyRequestResource.java
index 154986624..0a476c49c 100644
--- a/pki/base/common/src/com/netscape/cms/servlet/request/KeyRequestResource.java
+++ b/pki/base/common/src/com/netscape/cms/servlet/request/KeyRequestResource.java
@@ -1,21 +1,3 @@
-// --- BEGIN COPYRIGHT BLOCK ---
-// This program is free software; you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation; version 2 of the License.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License along
-// with this program; if not, write to the Free Software Foundation, Inc.,
-// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-//
-// (C) 2011 Red Hat, Inc.
-// All rights reserved.
-// --- END COPYRIGHT BLOCK ---
-
package com.netscape.cms.servlet.request;
import javax.ws.rs.GET;
@@ -24,146 +6,57 @@ import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.Consumes;
-import javax.ws.rs.WebApplicationException;
-import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
-import com.netscape.certsrv.base.EBaseException;
-import com.netscape.cms.servlet.base.CMSResource;
import com.netscape.cms.servlet.request.model.ArchivalRequestData;
-import com.netscape.cms.servlet.request.model.KeyRequestDAO;
import com.netscape.cms.servlet.request.model.KeyRequestInfo;
import com.netscape.cms.servlet.request.model.RecoveryRequestData;
-
-/**
- * @author alee
- *
- */
+
@Path("/keyrequest")
-public class KeyRequestResource extends CMSResource {
+public interface KeyRequestResource {
- @Context
- UriInfo uriInfo;
-
/**
* Used to retrieve key request info for a specific request
*/
@GET
@Path("{id}")
- @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, MediaType.TEXT_XML })
- public KeyRequestInfo getRequestInfo(@PathParam("id") String id) {
- // auth and authz
- KeyRequestDAO dao = new KeyRequestDAO();
- KeyRequestInfo info;
- try {
- info = dao.getRequest(id, uriInfo);
- } catch (EBaseException e) {
- // log error
- e.printStackTrace();
- throw new WebApplicationException(Response.Status.INTERNAL_SERVER_ERROR);
- }
- if (info == null) {
- // request does not exist
- throw new WebApplicationException(Response.Status.NOT_FOUND);
- }
- return info;
- }
-
+ @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, MediaType.TEXT_XML })
+ public KeyRequestInfo getRequestInfo(@PathParam("id") String id);
+
// Archiving - used to test integration with a browser
@POST
@Path("archive")
@Produces({ MediaType.TEXT_XML })
- public KeyRequestInfo archiveKey(MultivaluedMap<String, String> form) {
- ArchivalRequestData data = new ArchivalRequestData(form);
- return archiveKey(data);
- }
+ public KeyRequestInfo archiveKey(MultivaluedMap<String, String> form);
@POST
@Path("archive")
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, MediaType.TEXT_XML })
@Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
- public KeyRequestInfo archiveKey(ArchivalRequestData data) {
- // auth and authz
- KeyRequestDAO dao = new KeyRequestDAO();
- KeyRequestInfo info;
- try {
- info = dao.submitRequest(data, uriInfo);
- } catch (EBaseException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- throw new WebApplicationException(Response.Status.INTERNAL_SERVER_ERROR);
- }
- return info;
- }
-
+ public KeyRequestInfo archiveKey(ArchivalRequestData data);
+
//Recovery - used to test integration with a browser
@POST
@Path("recover")
@Produces({ MediaType.TEXT_XML })
- public KeyRequestInfo recoverKey(MultivaluedMap<String, String> form) {
- RecoveryRequestData data = new RecoveryRequestData(form);
- return recoverKey(data);
- }
+ public KeyRequestInfo recoverKey(MultivaluedMap<String, String> form);
@POST
@Path("recover")
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, MediaType.TEXT_XML })
@Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
- public KeyRequestInfo recoverKey(RecoveryRequestData data) {
- // auth and authz
- KeyRequestDAO dao = new KeyRequestDAO();
- KeyRequestInfo info;
- try {
- info = dao.submitRequest(data, uriInfo);
- } catch (EBaseException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- throw new WebApplicationException(Response.Status.INTERNAL_SERVER_ERROR);
- }
- return info;
- }
-
+ public KeyRequestInfo recoverKey(RecoveryRequestData data);
+
@POST
@Path("approve/{id}")
- public void approveRequest(@PathParam("id") String id) {
- // auth and authz
- KeyRequestDAO dao = new KeyRequestDAO();
- try {
- dao.approveRequest(id);
- } catch (EBaseException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- throw new WebApplicationException(Response.Status.INTERNAL_SERVER_ERROR);
- }
- }
-
+ public void approveRequest(@PathParam("id") String id);
+
@POST
@Path("reject/{id}")
- public void rejectRequest(@PathParam("id") String id) {
- // auth and authz
- KeyRequestDAO dao = new KeyRequestDAO();
- try {
- dao.rejectRequest(id);
- } catch (EBaseException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- throw new WebApplicationException(Response.Status.INTERNAL_SERVER_ERROR);
- }
- }
-
+ public void rejectRequest(@PathParam("id") String id);
+
@POST
@Path("cancel/{id}")
- public void cancelRequest(@PathParam("id") String id) {
- // auth and authz
- KeyRequestDAO dao = new KeyRequestDAO();
- try {
- dao.cancelRequest(id);
- } catch (EBaseException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- throw new WebApplicationException(Response.Status.INTERNAL_SERVER_ERROR);
- }
- }
+ public void cancelRequest(@PathParam("id") String id);
+
}