summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
authorEndi S. Dewata <edewata@redhat.com>2014-02-14 15:26:16 -0500
committerEndi S. Dewata <edewata@redhat.com>2014-02-18 11:35:47 -0500
commit9c3f874fa00f71c75bd7f90537bcdd6aab1d70c6 (patch)
tree104170847a5ed122c664160d910935bd2de2bdeb /base
parentec9ba2da596eba5c6f09f8f2b0c5d8bcf1413356 (diff)
downloadpki-9c3f874fa00f71c75bd7f90537bcdd6aab1d70c6.tar.gz
pki-9c3f874fa00f71c75bd7f90537bcdd6aab1d70c6.tar.xz
pki-9c3f874fa00f71c75bd7f90537bcdd6aab1d70c6.zip
Updated REST interface for TPS activities.
The REST interface for TPS activities has been modified to return Response objects to allow better handling of server responses. Ticket #554
Diffstat (limited to 'base')
-rw-r--r--base/common/src/com/netscape/certsrv/logging/ActivityClient.java8
-rw-r--r--base/common/src/com/netscape/certsrv/logging/ActivityResource.java9
-rw-r--r--base/tps-tomcat/src/org/dogtagpki/server/tps/logging/ActivityService.java9
3 files changed, 18 insertions, 8 deletions
diff --git a/base/common/src/com/netscape/certsrv/logging/ActivityClient.java b/base/common/src/com/netscape/certsrv/logging/ActivityClient.java
index 48ecdd5c4..eae2f6f48 100644
--- a/base/common/src/com/netscape/certsrv/logging/ActivityClient.java
+++ b/base/common/src/com/netscape/certsrv/logging/ActivityClient.java
@@ -19,6 +19,8 @@ package com.netscape.certsrv.logging;
import java.net.URISyntaxException;
+import javax.ws.rs.core.Response;
+
import com.netscape.certsrv.client.Client;
import com.netscape.certsrv.client.PKIClient;
@@ -39,10 +41,12 @@ public class ActivityClient extends Client {
}
public ActivityCollection findActivities(Integer start, Integer size) {
- return resource.findActivities(start, size);
+ Response response = resource.findActivities(start, size);
+ return client.getEntity(response, ActivityCollection.class);
}
public ActivityData getActivity(String tokenID) {
- return resource.getActivity(tokenID);
+ Response response = resource.getActivity(tokenID);
+ return client.getEntity(response, ActivityData.class);
}
}
diff --git a/base/common/src/com/netscape/certsrv/logging/ActivityResource.java b/base/common/src/com/netscape/certsrv/logging/ActivityResource.java
index 6ecf41dd2..715233e63 100644
--- a/base/common/src/com/netscape/certsrv/logging/ActivityResource.java
+++ b/base/common/src/com/netscape/certsrv/logging/ActivityResource.java
@@ -23,6 +23,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;
/**
@@ -32,13 +35,15 @@ import javax.ws.rs.core.MediaType;
public interface ActivityResource {
@GET
+ @ClientResponseType(entityType=ActivityCollection.class)
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
- public ActivityCollection findActivities(
+ public Response findActivities(
@QueryParam("start") Integer start,
@QueryParam("size") Integer size);
@GET
@Path("{activityID}")
+ @ClientResponseType(entityType=ActivityData.class)
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
- public ActivityData getActivity(@PathParam("activityID") String activityID);
+ public Response getActivity(@PathParam("activityID") String activityID);
}
diff --git a/base/tps-tomcat/src/org/dogtagpki/server/tps/logging/ActivityService.java b/base/tps-tomcat/src/org/dogtagpki/server/tps/logging/ActivityService.java
index a97a4775c..0bed20311 100644
--- a/base/tps-tomcat/src/org/dogtagpki/server/tps/logging/ActivityService.java
+++ b/base/tps-tomcat/src/org/dogtagpki/server/tps/logging/ActivityService.java
@@ -27,6 +27,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.HttpHeaders;
import javax.ws.rs.core.Request;
+import javax.ws.rs.core.Response;
import javax.ws.rs.core.UriInfo;
import org.dogtagpki.server.tps.TPSSubsystem;
@@ -97,7 +98,7 @@ public class ActivityService extends PKIService implements ActivityResource {
}
@Override
- public ActivityCollection findActivities(Integer start, Integer size) {
+ public Response findActivities(Integer start, Integer size) {
CMS.debug("ActivityService.findActivities()");
@@ -135,7 +136,7 @@ public class ActivityService extends PKIService implements ActivityResource {
response.addLink(new Link("next", uri));
}
- return response;
+ return createOKResponse(response);
} catch (Exception e) {
e.printStackTrace();
@@ -144,7 +145,7 @@ public class ActivityService extends PKIService implements ActivityResource {
}
@Override
- public ActivityData getActivity(String activityID) {
+ public Response getActivity(String activityID) {
if (activityID == null) throw new BadRequestException("Activity ID is null.");
@@ -154,7 +155,7 @@ public class ActivityService extends PKIService implements ActivityResource {
TPSSubsystem subsystem = (TPSSubsystem)CMS.getSubsystem(TPSSubsystem.ID);
ActivityDatabase database = subsystem.getActivityDatabase();
- return createActivityData(database.getRecord(activityID));
+ return createOKResponse(createActivityData(database.getRecord(activityID)));
} catch (Exception e) {
e.printStackTrace();