summaryrefslogtreecommitdiffstats
path: root/base/common/src/com/netscape/cms/servlet/key
diff options
context:
space:
mode:
Diffstat (limited to 'base/common/src/com/netscape/cms/servlet/key')
-rw-r--r--base/common/src/com/netscape/cms/servlet/key/KeyResource.java17
-rw-r--r--base/common/src/com/netscape/cms/servlet/key/KeyResourceService.java50
-rw-r--r--base/common/src/com/netscape/cms/servlet/key/KeysResource.java23
-rw-r--r--base/common/src/com/netscape/cms/servlet/key/KeysResourceService.java86
4 files changed, 66 insertions, 110 deletions
diff --git a/base/common/src/com/netscape/cms/servlet/key/KeyResource.java b/base/common/src/com/netscape/cms/servlet/key/KeyResource.java
index 13960b23e..9a9b5db1a 100644
--- a/base/common/src/com/netscape/cms/servlet/key/KeyResource.java
+++ b/base/common/src/com/netscape/cms/servlet/key/KeyResource.java
@@ -1,18 +1,33 @@
package com.netscape.cms.servlet.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;
import com.netscape.cms.servlet.key.model.KeyData;
+import com.netscape.cms.servlet.key.model.KeyDataInfos;
import com.netscape.cms.servlet.request.model.RecoveryRequestData;
-@Path("/key")
+@Path("/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, MediaType.TEXT_XML })
+ 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
diff --git a/base/common/src/com/netscape/cms/servlet/key/KeyResourceService.java b/base/common/src/com/netscape/cms/servlet/key/KeyResourceService.java
index e475591a5..75fb886df 100644
--- a/base/common/src/com/netscape/cms/servlet/key/KeyResourceService.java
+++ b/base/common/src/com/netscape/cms/servlet/key/KeyResourceService.java
@@ -23,6 +23,7 @@ import javax.ws.rs.WebApplicationException;
import javax.ws.rs.core.MultivaluedMap;
import javax.ws.rs.core.Response;
+import com.netscape.certsrv.apps.CMS;
import com.netscape.certsrv.base.EBaseException;
import com.netscape.certsrv.dbs.keydb.KeyId;
import com.netscape.certsrv.request.IRequest;
@@ -31,9 +32,11 @@ import com.netscape.certsrv.request.RequestStatus;
import com.netscape.cms.servlet.base.CMSResourceService;
import com.netscape.cms.servlet.key.model.KeyDAO;
import com.netscape.cms.servlet.key.model.KeyData;
+import com.netscape.cms.servlet.key.model.KeyDataInfos;
import com.netscape.cms.servlet.request.model.KeyRequestDAO;
import com.netscape.cms.servlet.request.model.KeyRequestInfo;
import com.netscape.cms.servlet.request.model.RecoveryRequestData;
+import com.netscape.cmsutil.ldap.LDAPUtil;
/**
* @author alee
@@ -121,4 +124,51 @@ public class KeyResourceService extends CMSResourceService implements KeyResourc
return reqInfo.getKeyId();
}
+ /**
+ * Used to generate list of key infos based on the search parameters
+ */
+ public KeyDataInfos listKeys(String clientID, String status, int maxResults, int maxTime) {
+ // auth and authz
+
+ // get ldap filter
+ String filter = createSearchFilter(status, clientID);
+ CMS.debug("listKeys: filter is " + filter);
+
+ KeyDAO dao = new KeyDAO();
+ KeyDataInfos infos;
+ try {
+ infos = dao.listKeys(filter, maxResults, maxTime, uriInfo);
+ } catch (EBaseException e) {
+ e.printStackTrace();
+ throw new WebApplicationException(Response.Status.INTERNAL_SERVER_ERROR);
+ }
+ return infos;
+ }
+
+ private String createSearchFilter(String status, String clientID) {
+ String filter = "";
+ int matches = 0;
+
+ if ((status == null) && (clientID == null)) {
+ filter = "(serialno=*)";
+ return filter;
+ }
+
+ if (status != null) {
+ filter += "(status=" + LDAPUtil.escapeFilter(status) + ")";
+ matches ++;
+ }
+
+ if (clientID != null) {
+ filter += "(clientID=" + LDAPUtil.escapeFilter(clientID) + ")";
+ matches ++;
+ }
+
+ if (matches > 1) {
+ filter = "(&" + filter + ")";
+ }
+
+ return filter;
+ }
+
}
diff --git a/base/common/src/com/netscape/cms/servlet/key/KeysResource.java b/base/common/src/com/netscape/cms/servlet/key/KeysResource.java
deleted file mode 100644
index 67d29cc52..000000000
--- a/base/common/src/com/netscape/cms/servlet/key/KeysResource.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package com.netscape.cms.servlet.key;
-
-import javax.ws.rs.DefaultValue;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.Produces;
-import javax.ws.rs.QueryParam;
-import javax.ws.rs.core.MediaType;
-import com.netscape.cms.servlet.key.model.KeyDataInfos;
-
-@Path("/keys")
-public interface KeysResource {
- public static final int DEFAULT_MAXTIME = 10;
- public static final int DEFAULT_MAXRESULTS = 100;
-
- @GET
- @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, MediaType.TEXT_XML })
- 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);
-
-}
diff --git a/base/common/src/com/netscape/cms/servlet/key/KeysResourceService.java b/base/common/src/com/netscape/cms/servlet/key/KeysResourceService.java
deleted file mode 100644
index c57710ce0..000000000
--- a/base/common/src/com/netscape/cms/servlet/key/KeysResourceService.java
+++ /dev/null
@@ -1,86 +0,0 @@
-// --- 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.key;
-
-import javax.ws.rs.WebApplicationException;
-import javax.ws.rs.core.Response;
-
-import com.netscape.certsrv.apps.CMS;
-import com.netscape.certsrv.base.EBaseException;
-import com.netscape.cms.servlet.base.CMSResourceService;
-import com.netscape.cms.servlet.key.model.KeyDAO;
-import com.netscape.cms.servlet.key.model.KeyDataInfos;
-import com.netscape.cmsutil.ldap.LDAPUtil;
-
-/**
- * @author alee
- *
- */
-public class KeysResourceService extends CMSResourceService implements KeysResource {
-
- /**
- * Used to generate list of key infos based on the search parameters
- */
- public KeyDataInfos listKeys(String clientID, String status, int maxResults, int maxTime) {
- // auth and authz
-
- // get ldap filter
- String filter = createSearchFilter(status, clientID);
- CMS.debug("listKeys: filter is " + filter);
-
- KeyDAO dao = new KeyDAO();
- KeyDataInfos infos;
- try {
- infos = dao.listKeys(filter, maxResults, maxTime, uriInfo);
- } catch (EBaseException e) {
- e.printStackTrace();
- throw new WebApplicationException(Response.Status.INTERNAL_SERVER_ERROR);
- }
- return infos;
- }
-
- private String createSearchFilter(String status, String clientID) {
- String filter = "";
- int matches = 0;
-
- if ((status == null) && (clientID == null)) {
- filter = "(serialno=*)";
- return filter;
- }
-
- if (status != null) {
- filter += "(status=" + LDAPUtil.escapeFilter(status) + ")";
- matches ++;
- }
-
- if (clientID != null) {
- filter += "(clientID=" + LDAPUtil.escapeFilter(clientID) + ")";
- matches ++;
- }
-
- if (matches > 1) {
- filter = "(&" + filter + ")";
- }
-
- return filter;
- }
-
-}