From 286155ecd63412560b2ee994b96ee01d9b915d94 Mon Sep 17 00:00:00 2001 From: Tor-Einar Skog <tor-einar.skog@bioforsk.no> Date: Wed, 14 Aug 2013 15:28:55 +0200 Subject: [PATCH] =?UTF-8?q?First=20version=20with=20working=20existing=20m?= =?UTF-8?q?odel=20(N=C3=A6rstad=20model)!!!?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vips/core/VIPSCoreApplication.java | 1 + .../vips/core/config/JacksonConfig.java | 32 +++++++++++++++++++ .../vips/core/service/ModelResource.java | 1 + 3 files changed, 34 insertions(+) create mode 100644 src/main/java/no/bioforsk/vips/core/config/JacksonConfig.java diff --git a/src/main/java/no/bioforsk/vips/core/VIPSCoreApplication.java b/src/main/java/no/bioforsk/vips/core/VIPSCoreApplication.java index 4844af8..764f0a2 100644 --- a/src/main/java/no/bioforsk/vips/core/VIPSCoreApplication.java +++ b/src/main/java/no/bioforsk/vips/core/VIPSCoreApplication.java @@ -25,6 +25,7 @@ public class VIPSCoreApplication extends Application * given list with all resources defined in the project. */ private void addRestResourceClasses(Set<Class<?>> resources) { + resources.add(no.bioforsk.vips.core.config.JacksonConfig.class); resources.add(no.bioforsk.vips.core.service.ModelResource.class); diff --git a/src/main/java/no/bioforsk/vips/core/config/JacksonConfig.java b/src/main/java/no/bioforsk/vips/core/config/JacksonConfig.java new file mode 100644 index 0000000..7e46739 --- /dev/null +++ b/src/main/java/no/bioforsk/vips/core/config/JacksonConfig.java @@ -0,0 +1,32 @@ +package no.bioforsk.vips.core.config; + +import javax.ws.rs.Produces; +import javax.ws.rs.core.MediaType; +import javax.ws.rs.ext.ContextResolver; +import javax.ws.rs.ext.Provider; +import org.codehaus.jackson.map.ObjectMapper; +import org.codehaus.jackson.map.SerializationConfig; + +/** + * This config ensures that Jackson serializes dates as [ISO-8601 ]-compliant notation, + * and not a timestamp + * @copyright 2013 <a href="http://www.bioforsk.no/">Bioforsk</a> + * @author Tor-Einar Skog <tor-einar.skog@bioforsk.no> + */ +@Provider +@Produces(MediaType.APPLICATION_JSON) +public class JacksonConfig implements ContextResolver<ObjectMapper>{ + private final ObjectMapper objectMapper; + + public JacksonConfig() + { + objectMapper = new ObjectMapper(); + objectMapper.configure(SerializationConfig.Feature.WRITE_DATES_AS_TIMESTAMPS, false); + } + + @Override + public ObjectMapper getContext(Class<?> objectType) + { + return objectMapper; + } +} diff --git a/src/main/java/no/bioforsk/vips/core/service/ModelResource.java b/src/main/java/no/bioforsk/vips/core/service/ModelResource.java index e9ef44e..08c5429 100644 --- a/src/main/java/no/bioforsk/vips/core/service/ModelResource.java +++ b/src/main/java/no/bioforsk/vips/core/service/ModelResource.java @@ -127,6 +127,7 @@ public class ModelResource { try { Model calledModel = ModelFactory.getInstance().getModelInstance(config.getModelId()); + calledModel.setConfiguration(config); return Response.ok().entity(calledModel.getResult()).build(); } catch(InstantiationException | IllegalAccessException iae) -- GitLab