You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2015/12/18 16:34:55 UTC

[2/2] syncope git commit: [SYNCOPE-749] Using ISO dates for JSON

[SYNCOPE-749] Using ISO dates for JSON


Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/c3b1c7e6
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/c3b1c7e6
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/c3b1c7e6

Branch: refs/heads/master
Commit: c3b1c7e66d061d99cb47c5d0e7f67591e97da7a9
Parents: 907be4a
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Fri Dec 18 16:34:47 2015 +0100
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Fri Dec 18 16:34:47 2015 +0100

----------------------------------------------------------------------
 client/lib/pom.xml                                       |  9 +++++++++
 .../syncope/client/lib/SyncopeClientFactoryBean.java     |  7 ++++++-
 core/rest-cxf/pom.xml                                    |  9 +++++++++
 .../syncope/core/rest/cxf/UnwrappedObjectMapper.java     |  8 ++++++++
 .../syncope/fit/core/reference/SchedTaskITCase.java      |  1 -
 pom.xml                                                  | 11 +++++++++++
 6 files changed, 43 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/c3b1c7e6/client/lib/pom.xml
----------------------------------------------------------------------
diff --git a/client/lib/pom.xml b/client/lib/pom.xml
index a119827..18b71c0 100644
--- a/client/lib/pom.xml
+++ b/client/lib/pom.xml
@@ -53,11 +53,20 @@ under the License.
     </dependency>
     
     <dependency>
+      <groupId>com.fasterxml.jackson.datatype</groupId>
+      <artifactId>jackson-datatype-joda</artifactId>
+    </dependency>    
+    <dependency>
       <groupId>com.fasterxml.jackson.jaxrs</groupId>
       <artifactId>jackson-jaxrs-json-provider</artifactId>
     </dependency>  
 
     <dependency>
+      <groupId>joda-time</groupId>
+      <artifactId>joda-time</artifactId>
+    </dependency>
+    
+    <dependency>
       <groupId>org.slf4j</groupId>
       <artifactId>slf4j-api</artifactId>
     </dependency>

http://git-wip-us.apache.org/repos/asf/syncope/blob/c3b1c7e6/client/lib/src/main/java/org/apache/syncope/client/lib/SyncopeClientFactoryBean.java
----------------------------------------------------------------------
diff --git a/client/lib/src/main/java/org/apache/syncope/client/lib/SyncopeClientFactoryBean.java b/client/lib/src/main/java/org/apache/syncope/client/lib/SyncopeClientFactoryBean.java
index 85eeac6..6ea7b4f 100644
--- a/client/lib/src/main/java/org/apache/syncope/client/lib/SyncopeClientFactoryBean.java
+++ b/client/lib/src/main/java/org/apache/syncope/client/lib/SyncopeClientFactoryBean.java
@@ -18,6 +18,8 @@
  */
 package org.apache.syncope.client.lib;
 
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.datatype.joda.JodaModule;
 import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
 import java.util.ArrayList;
 import java.util.Collections;
@@ -80,7 +82,10 @@ public class SyncopeClientFactoryBean {
     private RestClientFactoryBean restClientFactoryBean;
 
     protected JacksonJaxbJsonProvider defaultJsonProvider() {
-        return new JacksonJaxbJsonProvider();
+        ObjectMapper objectMapper = new ObjectMapper();
+        objectMapper.registerModule(new JodaModule());
+        objectMapper.configure(com.fasterxml.jackson.databind.SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
+        return new JacksonJaxbJsonProvider(objectMapper, JacksonJaxbJsonProvider.DEFAULT_ANNOTATIONS);
     }
 
     @SuppressWarnings({ "rawtypes" })

http://git-wip-us.apache.org/repos/asf/syncope/blob/c3b1c7e6/core/rest-cxf/pom.xml
----------------------------------------------------------------------
diff --git a/core/rest-cxf/pom.xml b/core/rest-cxf/pom.xml
index 7316921..b5874ff 100644
--- a/core/rest-cxf/pom.xml
+++ b/core/rest-cxf/pom.xml
@@ -71,6 +71,10 @@ under the License.
     </dependency>
     
     <dependency>
+      <groupId>com.fasterxml.jackson.datatype</groupId>
+      <artifactId>jackson-datatype-joda</artifactId>
+    </dependency>    
+    <dependency>
       <groupId>com.fasterxml.jackson.jaxrs</groupId>
       <artifactId>jackson-jaxrs-json-provider</artifactId>
     </dependency>
@@ -80,6 +84,11 @@ under the License.
     </dependency>
     
     <dependency>
+      <groupId>joda-time</groupId>
+      <artifactId>joda-time</artifactId>
+    </dependency>
+      
+    <dependency>
       <groupId>org.apache.cxf</groupId>
       <artifactId>cxf-rt-frontend-jaxrs</artifactId>
     </dependency>

http://git-wip-us.apache.org/repos/asf/syncope/blob/c3b1c7e6/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/UnwrappedObjectMapper.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/UnwrappedObjectMapper.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/UnwrappedObjectMapper.java
index 661f3b0..31b1dfd 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/UnwrappedObjectMapper.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/UnwrappedObjectMapper.java
@@ -21,6 +21,7 @@ package org.apache.syncope.core.rest.cxf;
 import com.fasterxml.jackson.core.JsonGenerator;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.datatype.joda.JodaModule;
 import java.io.File;
 import java.io.IOException;
 import java.io.OutputStream;
@@ -35,6 +36,13 @@ public class UnwrappedObjectMapper extends ObjectMapper {
 
     private static final long serialVersionUID = -317191546835195103L;
 
+    public UnwrappedObjectMapper() {
+        super();
+
+        registerModule(new JodaModule());
+        configure(com.fasterxml.jackson.databind.SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
+    }
+
     /**
      * Unwraps the given value if it implements the Map interface and contains only a single entry, otherwise the
      * value is returned unmodified.

http://git-wip-us.apache.org/repos/asf/syncope/blob/c3b1c7e6/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SchedTaskITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SchedTaskITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SchedTaskITCase.java
index 108c192..327abe8 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SchedTaskITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SchedTaskITCase.java
@@ -125,7 +125,6 @@ public class SchedTaskITCase extends AbstractTaskITCase {
         assertTrue(execs.getResult().get(0).getStart().after(initial));
         // round 1 sec for safety
         assertTrue(DateUtils.addSeconds(execs.getResult().get(0).getStart(), 1).after(later));
-
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/syncope/blob/c3b1c7e6/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index aab0e0e..081c91c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -585,6 +585,11 @@ under the License.
         <version>${jackson.version}</version>
       </dependency>
       <dependency>
+        <groupId>com.fasterxml.jackson.datatype</groupId>
+        <artifactId>jackson-datatype-joda</artifactId>
+        <version>${jackson.version}</version>
+      </dependency>    
+      <dependency>
         <groupId>com.fasterxml.jackson.core</groupId>
         <artifactId>jackson-annotations</artifactId>
         <version>${jackson.version}</version>
@@ -601,6 +606,12 @@ under the License.
       </dependency>
             
       <dependency>
+        <groupId>joda-time</groupId>
+        <artifactId>joda-time</artifactId>
+        <version>2.9.1</version>
+      </dependency>
+
+      <dependency>
         <groupId>org.springframework</groupId>
         <artifactId>spring-context</artifactId>
         <version>${spring.version}</version>