Merge "Replace GsonProvider to JacksonJaxbJsonProvider"
authorJakub Morvay <jakub.morvay@gmail.com>
Mon, 7 Jan 2019 15:28:07 +0000 (15:28 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Mon, 7 Jan 2019 15:28:07 +0000 (15:28 +0000)
restconf/sal-rest-docgen/pom.xml
restconf/sal-rest-docgen/src/main/java/org/opendaylight/netconf/sal/rest/doc/jaxrs/ApiDocApplication.java
restconf/sal-rest-docgen/src/test/java/org/opendaylight/controller/sal/rest/doc/impl/ApiDocServiceImplTest.java

index 156b378ff5af9c579356bba25a711b7a27a88a74..7e984362ad93e98abcdee405e05d522542618aab 100644 (file)
       <groupId>com.fasterxml.jackson.core</groupId>
       <artifactId>jackson-databind</artifactId>
     </dependency>
-
+    <dependency>
+      <groupId>com.fasterxml.jackson.jaxrs</groupId>
+      <artifactId>jackson-jaxrs-json-provider</artifactId>
+    </dependency>
     <dependency>
       <groupId>com.google.guava</groupId>
       <artifactId>guava</artifactId>
       <artifactId>automaton</artifactId>
       <version>1.11-8</version>
     </dependency>
-    <dependency>
-      <groupId>org.opendaylight.aaa</groupId>
-      <artifactId>aaa-shiro</artifactId>
-    </dependency>
     <dependency>
       <groupId>org.opendaylight.aaa.web</groupId>
       <artifactId>web-api</artifactId>
index af9cdcdd1674837e6fbeed933d8bbef81b3f21e7..e02e6fd180e19d063de6ca23a5cc33b2285b71c5 100644 (file)
@@ -7,10 +7,10 @@
  */
 package org.opendaylight.netconf.sal.rest.doc.jaxrs;
 
+import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
 import java.util.HashSet;
 import java.util.Set;
 import javax.ws.rs.core.Application;
-import org.opendaylight.aaa.provider.GsonProvider;
 import org.opendaylight.netconf.sal.rest.doc.api.ApiDocService;
 
 public class ApiDocApplication extends Application {
@@ -25,7 +25,7 @@ public class ApiDocApplication extends Application {
         Set<Object> singletons = new HashSet<>();
         singletons.add(apiDocService);
         singletons.add(new JaxbContextResolver());
-        singletons.add(new GsonProvider());
+        singletons.add(new JacksonJaxbJsonProvider());
         return singletons;
     }
 }
index d2bbcfab47e4cf0cf1564498b5082c5076bed3e6..d6f372835eff39d7e0393a7235526ef302450801 100644 (file)
@@ -10,11 +10,9 @@ package org.opendaylight.controller.sal.rest.doc.impl;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
-
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import javax.ws.rs.core.UriInfo;
-
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
@@ -67,12 +65,12 @@ public class ApiDocServiceImplTest {
     }
 
     @Test
-    public void getListOfMounts() throws java.net.URISyntaxException {
+    public void getListOfMounts() throws java.net.URISyntaxException, JsonProcessingException {
         final UriInfo mockInfo = this.helper.createMockUriInfo(HTTP_URL);
-        // simulate the behavior of GsonProvider
-        Gson gson = (new GsonBuilder()).serializeNulls()
-                .enableComplexMapKeySerialization().create();
-        String result = gson.toJson(apiDocService.getListOfMounts(mockInfo).getEntity());
+        // simulate the behavior of JacksonJaxbJsonProvider
+        ObjectMapper mapper = new ObjectMapper();
+        String result = mapper.writer().writeValueAsString(
+                apiDocService.getListOfMounts(mockInfo).getEntity());
         Assert.assertEquals("[{\"instance\":\"/nodes/node/123/\",\"id\":1}]", result);
     }
 }