Added more fixes for missing exceptions in JsonUtils.
Change-Id: I7c4bd43aa23b6041dbc837c9d025a3cf13b9de25
diff --git a/full/src/main/java/de/ids_mannheim/korap/web/controller/AdminController.java b/full/src/main/java/de/ids_mannheim/korap/web/controller/AdminController.java
index 53f0acf..c12f5cf 100644
--- a/full/src/main/java/de/ids_mannheim/korap/web/controller/AdminController.java
+++ b/full/src/main/java/de/ids_mannheim/korap/web/controller/AdminController.java
@@ -85,9 +85,15 @@
catch (NumberFormatException | NullPointerException e) {
throw kustvaktResponseHandler.throwit(StatusCodes.ILLEGAL_ARGUMENT);
}
- String result = JsonUtils.toJSON(auditingController.retrieveRecords(
- AuditRecord.CATEGORY.valueOf(type.toUpperCase()), from_date,
- until_date, dayOnly, integer_limit));
+ String result="";
+ try {
+ result = JsonUtils.toJSON(auditingController.retrieveRecords(
+ AuditRecord.CATEGORY.valueOf(type.toUpperCase()), from_date,
+ until_date, dayOnly, integer_limit));
+ }
+ catch (KustvaktException e) {
+ throw kustvaktResponseHandler.throwit(e);
+ }
// limit number of records to return
return Response.ok(result).build();
}
diff --git a/full/src/main/java/de/ids_mannheim/korap/web/controller/AnnotationController.java b/full/src/main/java/de/ids_mannheim/korap/web/controller/AnnotationController.java
index ac4f69f..dbeb447 100644
--- a/full/src/main/java/de/ids_mannheim/korap/web/controller/AnnotationController.java
+++ b/full/src/main/java/de/ids_mannheim/korap/web/controller/AnnotationController.java
@@ -57,8 +57,12 @@
@GET
@Path("layers")
public Response getLayers () {
- String result = JsonUtils.toJSON(annotationService.getLayerDtos());
- return Response.ok(result).build();
+ try {
+ return Response.ok(JsonUtils.toJSON(annotationService.getLayerDtos())).build();
+ }
+ catch (KustvaktException e) {
+ throw responseHandler.throwit(e);
+ }
}
diff --git a/full/src/main/java/de/ids_mannheim/korap/web/controller/AuthenticationController.java b/full/src/main/java/de/ids_mannheim/korap/web/controller/AuthenticationController.java
index f772224..75a772e 100644
--- a/full/src/main/java/de/ids_mannheim/korap/web/controller/AuthenticationController.java
+++ b/full/src/main/java/de/ids_mannheim/korap/web/controller/AuthenticationController.java
@@ -88,7 +88,12 @@
.getQueryLanguages());
m.put("SortTypes", null); // types of sorting that are supported!
m.put("version", ServiceInfo.getInfo().getVersion());
- return Response.ok(JsonUtils.toJSON(m)).build();
+ try {
+ return Response.ok(JsonUtils.toJSON(m)).build();
+ }
+ catch (KustvaktException e) {
+ throw kustvaktResponseHandler.throwit(e);
+ }
}
@@ -102,7 +107,12 @@
@HeaderParam(ContainerRequest.HOST) String host,
@Context Locale locale) {
TokenContext ctx = (TokenContext) context.getUserPrincipal();
- return Response.ok(ctx.toJson()).build();
+ try {
+ return Response.ok(ctx.toJson()).build();
+ }
+ catch (KustvaktException e) {
+ throw kustvaktResponseHandler.throwit(e);
+ }
}
@@ -200,7 +210,12 @@
throw kustvaktResponseHandler.throwit(e);
}
- return Response.ok(context.toJson()).build();
+ try {
+ return Response.ok(context.toJson()).build();
+ }
+ catch (KustvaktException e) {
+ throw kustvaktResponseHandler.throwit(e);
+ }
}
@@ -299,7 +314,12 @@
catch (KustvaktException e) {
throw kustvaktResponseHandler.throwit(e);
}
- return Response.ok().entity(context.toJson()).build();
+ try {
+ return Response.ok().entity(context.toJson()).build();
+ }
+ catch (KustvaktException e) {
+ throw kustvaktResponseHandler.throwit(e);
+ }
}
diff --git a/full/src/main/java/de/ids_mannheim/korap/web/controller/KustvaktController.java b/full/src/main/java/de/ids_mannheim/korap/web/controller/KustvaktController.java
index f581f37..cf3cfaa 100644
--- a/full/src/main/java/de/ids_mannheim/korap/web/controller/KustvaktController.java
+++ b/full/src/main/java/de/ids_mannheim/korap/web/controller/KustvaktController.java
@@ -1,11 +1,14 @@
package de.ids_mannheim.korap.web.controller;
+import de.ids_mannheim.korap.exceptions.KustvaktException;
import de.ids_mannheim.korap.server.KustvaktServer;
import de.ids_mannheim.korap.utils.JsonUtils;
import de.ids_mannheim.korap.utils.ServiceInfo;
+import de.ids_mannheim.korap.web.utils.KustvaktResponseHandler;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
@@ -22,6 +25,8 @@
public class KustvaktController {
private static Logger jlog = LoggerFactory.getLogger(UserController.class);
+ @Autowired
+ private KustvaktResponseHandler kustvaktResponseHandler;
@Path("info")
@@ -30,7 +35,12 @@
m.put("version", ServiceInfo.getInfo().getVersion());
m.put("recent_api_version", KustvaktServer.API_VERSION);
m.put("service_name", ServiceInfo.getInfo().getName());
- return Response.ok(JsonUtils.toJSON(m)).build();
+ try {
+ return Response.ok(JsonUtils.toJSON(m)).build();
+ }
+ catch (KustvaktException e) {
+ throw kustvaktResponseHandler.throwit(e);
+ }
}
}
diff --git a/full/src/main/java/de/ids_mannheim/korap/web/controller/OAuthController.java b/full/src/main/java/de/ids_mannheim/korap/web/controller/OAuthController.java
index c21c406..2bc03d7 100644
--- a/full/src/main/java/de/ids_mannheim/korap/web/controller/OAuthController.java
+++ b/full/src/main/java/de/ids_mannheim/korap/web/controller/OAuthController.java
@@ -110,14 +110,16 @@
"Missing parameter!", "redirect_url");
info.setRedirect_uri(rurl);
TokenContext ctx = (TokenContext) context.getUserPrincipal();
+ String json = "";
try {
User user = this.controller.getUser(ctx.getUsername());
this.handler.getPersistenceHandler().registerClient(info, user);
+ json = info.toJSON();
}
catch (KustvaktException e) {
throw kustvaktResponseHandler.throwit(e);
}
- return Response.ok(info.toJSON()).build();
+ return Response.ok(json).build();
}
@@ -128,20 +130,21 @@
@QueryParam("scope") String scopes) {
TokenContext ctx = (TokenContext) context.getUserPrincipal();
Userdata data;
+ String json= "";
try {
User user = this.controller.getUser(ctx.getUsername());
data = this.controller.getUserData(user, UserDetails.class);
Set<String> base_scope = StringUtils.toSet(scopes, " ");
base_scope.retainAll(StringUtils.toSet(scopes));
scopes = StringUtils.toString(base_scope);
+ json = JsonUtils.toJSON(Scopes.mapScopes(scopes, data));
}
catch (KustvaktException e) {
throw kustvaktResponseHandler.throwit(e);
}
// json format with scope callback parameter
// todo: add other scopes as well!
- return Response.ok(JsonUtils.toJSON(Scopes.mapScopes(scopes, data)))
- .build();
+ return Response.ok(json).build();
}
diff --git a/full/src/main/java/de/ids_mannheim/korap/web/controller/ResourceController.java b/full/src/main/java/de/ids_mannheim/korap/web/controller/ResourceController.java
index 103072e..d64e5bd 100644
--- a/full/src/main/java/de/ids_mannheim/korap/web/controller/ResourceController.java
+++ b/full/src/main/java/de/ids_mannheim/korap/web/controller/ResourceController.java
@@ -11,6 +11,7 @@
import com.sun.jersey.spi.container.ResourceFilters;
+import de.ids_mannheim.korap.exceptions.KustvaktException;
import de.ids_mannheim.korap.service.ResourceService;
import de.ids_mannheim.korap.utils.JsonUtils;
import de.ids_mannheim.korap.web.filter.PiwikFilter;
@@ -40,7 +41,14 @@
@GET
@Path("info")
public Response getAllResourceInfo () {
- String result = JsonUtils.toJSON(resourceService.getResourceDtos());
+ String result = "";
+ try {
+ result = JsonUtils.toJSON(resourceService.getResourceDtos());
+ }
+ catch (KustvaktException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
return Response.ok(result).build();
}
}
diff --git a/full/src/main/java/de/ids_mannheim/korap/web/controller/SearchController.java b/full/src/main/java/de/ids_mannheim/korap/web/controller/SearchController.java
index 5e37692..3c4f33d 100644
--- a/full/src/main/java/de/ids_mannheim/korap/web/controller/SearchController.java
+++ b/full/src/main/java/de/ids_mannheim/korap/web/controller/SearchController.java
@@ -336,19 +336,20 @@
// EM: is this necessary at all?
KustvaktResource resource = isCollectionIdValid(ctx.getName(), id);
if (resource != null) {
- if (resource instanceof VirtualCollection) {
- JsonNode node = cquery.and().mergeWith(resource.getData());
- query = JsonUtils.toJSON(node);
- }
- else if (resource instanceof Corpus) {
- cquery.and().with(Attributes.CORPUS_SIGLE, "=",
- resource.getPersistentID());
- try {
+ try {
+ if (resource instanceof VirtualCollection) {
+ JsonNode node = cquery.and().mergeWith(resource.getData());
+ query = JsonUtils.toJSON(node);
+ }
+ else if (resource instanceof Corpus) {
+ cquery.and().with(Attributes.CORPUS_SIGLE, "=",
+ resource.getPersistentID());
+
query = cquery.toJSON();
}
- catch (KustvaktException e) {
- throw responseHandler.throwit(e);
- }
+ }
+ catch (KustvaktException e) {
+ throw responseHandler.throwit(e);
}
}
@@ -555,26 +556,28 @@
jlog.error("Failed retrieving resource: {}", e.string());
throw responseHandler.throwit(e);
}
+ try {
+ if (resource instanceof VirtualCollection) {
+ // test this
+ //builder.setBaseQuery(resource.getData());
+ return JsonUtils
+ .toJSON(builder.and().mergeWith(resource.getData()));
+ }
+ else if (resource instanceof Corpus) {
+ builder.and().with(Attributes.CORPUS_SIGLE, "=",
+ resource.getPersistentID());
- if (resource instanceof VirtualCollection) {
- // test this
- //builder.setBaseQuery(resource.getData());
- return JsonUtils
- .toJSON(builder.and().mergeWith(resource.getData()));
- }
- else if (resource instanceof Corpus) {
- builder.and().with(Attributes.CORPUS_SIGLE, "=",
- resource.getPersistentID());
- try {
return builder.toJSON();
}
- catch (KustvaktException e) {
- throw responseHandler.throwit(e);
+
+
+ else {
+ throw responseHandler.throwit(StatusCodes.ILLEGAL_ARGUMENT,
+ "Type parameter not supported", type);
}
}
- else {
- throw responseHandler.throwit(StatusCodes.ILLEGAL_ARGUMENT,
- "Type parameter not supported", type);
+ catch (KustvaktException e) {
+ throw responseHandler.throwit(e);
}
}
@@ -620,7 +623,12 @@
Map vals = new HashMap();
vals.put("id", cache.getId());
vals.put("statistics", cache.getStats());
- return Response.ok(JsonUtils.toJSON(vals)).build();
+ try {
+ return Response.ok(JsonUtils.toJSON(vals)).build();
+ }
+ catch (KustvaktException e) {
+ throw responseHandler.throwit(e);
+ }
}
@@ -736,7 +744,7 @@
base = JsonUtils.readTree(query);
}
catch (KustvaktException e) {
- responseHandler.throwit(e);
+ responseHandler.throwit(e);
}
else
// todo: throw exception response for no resource to save!
@@ -775,7 +783,12 @@
throw responseHandler.throwit(e);
}
}
- return Response.ok(JsonUtils.toJSON(vals)).build();
+ try {
+ return Response.ok(JsonUtils.toJSON(vals)).build();
+ }
+ catch (KustvaktException e) {
+ throw responseHandler.throwit(e);
+ }
}
diff --git a/full/src/main/java/de/ids_mannheim/korap/web/controller/UserController.java b/full/src/main/java/de/ids_mannheim/korap/web/controller/UserController.java
index ff8ccf9..b181178 100644
--- a/full/src/main/java/de/ids_mannheim/korap/web/controller/UserController.java
+++ b/full/src/main/java/de/ids_mannheim/korap/web/controller/UserController.java
@@ -116,7 +116,12 @@
object.put("confirm_uri", uriBuilder.build());
object.put("uri_expiration",
TimeUtils.format(uri.getUriExpiration()));
- return Response.ok(JsonUtils.toJSON(object)).build();
+ try {
+ return Response.ok(JsonUtils.toJSON(object)).build();
+ }
+ catch (KustvaktException e) {
+ throw kustvaktResponseHandler.throwit(e);
+ }
}
else {
jlog.error("Failed creating confirmation and expiry tokens.");
@@ -224,7 +229,12 @@
ObjectNode obj = JsonUtils.createObjectNode();
obj.put(Attributes.URI, builder.toString());
obj.put(Attributes.URI_EXPIRATION, objects[1].toString());
- return Response.ok(JsonUtils.toJSON(obj)).build();
+ try {
+ return Response.ok(JsonUtils.toJSON(obj)).build();
+ }
+ catch (KustvaktException e) {
+ throw kustvaktResponseHandler.throwit(e);
+ }
}
@@ -271,7 +281,12 @@
throw kustvaktResponseHandler
.throwAuthenticationException(ctx.getUsername());
}
- return Response.ok(m.toEntity()).build();
+ try {
+ return Response.ok(m.toEntity()).build();
+ }
+ catch (KustvaktException e) {
+ throw kustvaktResponseHandler.throwit(e);
+ }
}
@@ -444,7 +459,12 @@
jlog.error("Exception encountered!", e);
throw kustvaktResponseHandler.throwit(e);
}
- return Response.ok(JsonUtils.toJSON(add)).build();
+ try {
+ return Response.ok(JsonUtils.toJSON(add)).build();
+ }
+ catch (KustvaktException e) {
+ throw kustvaktResponseHandler.throwit(e);
+ }
}