Upgrade fasterXML libraries for OS-9
Upgrade fasterXML to version 2.9.5 to address security vulnerability
Wrap calls to treeRead(InputStream) to handle new behavior of null streams
Change-Id: Id199cfacd0cf9e5371dc33de9f1e058c2e72eaa5
diff --git a/apps/route-service/app/src/main/java/org/onosproject/routeservice/rest/RouteServiceWebResource.java b/apps/route-service/app/src/main/java/org/onosproject/routeservice/rest/RouteServiceWebResource.java
index eb17d79..fc1a09a 100644
--- a/apps/route-service/app/src/main/java/org/onosproject/routeservice/rest/RouteServiceWebResource.java
+++ b/apps/route-service/app/src/main/java/org/onosproject/routeservice/rest/RouteServiceWebResource.java
@@ -39,6 +39,7 @@
import java.util.stream.Collectors;
import static org.onlab.util.Tools.nullIsIllegal;
+import static org.onlab.util.Tools.readTreeFromStream;
/**
* Manage the unicast routing information.
@@ -88,7 +89,7 @@
public Response createRoute(InputStream route) {
RouteAdminService service = get(RouteAdminService.class);
try {
- ObjectNode jsonTree = (ObjectNode) mapper().readTree(route);
+ ObjectNode jsonTree = readTreeFromStream(mapper(), route);
Route r = codec(Route.class).decode(jsonTree, this);
service.update(Collections.singletonList(r));
} catch (IOException ex) {
@@ -118,7 +119,7 @@
public Response createRoutes(InputStream routesStream) {
RouteAdminService service = get(RouteAdminService.class);
try {
- ObjectNode jsonTree = (ObjectNode) mapper().readTree(routesStream);
+ ObjectNode jsonTree = readTreeFromStream(mapper(), routesStream);
ArrayNode routesArray = nullIsIllegal((ArrayNode) jsonTree.get(ROUTES),
ROUTES_KEY_ERROR);
List<Route> routes = codec(Route.class).decode(routesArray, this);
@@ -146,7 +147,7 @@
public Response deleteRoute(InputStream route) {
RouteAdminService service = get(RouteAdminService.class);
try {
- ObjectNode jsonTree = (ObjectNode) mapper().readTree(route);
+ ObjectNode jsonTree = readTreeFromStream(mapper(), route);
Route r = codec(Route.class).decode(jsonTree, this);
service.withdraw(Collections.singletonList(r));
} catch (IOException ex) {
@@ -168,7 +169,7 @@
public Response deleteRoutes(InputStream routesStream) {
RouteAdminService service = get(RouteAdminService.class);
try {
- ObjectNode jsonTree = (ObjectNode) mapper().readTree(routesStream);
+ ObjectNode jsonTree = readTreeFromStream(mapper(), routesStream);
ArrayNode routesArray = nullIsIllegal((ArrayNode) jsonTree.get(ROUTES),
ROUTES_KEY_ERROR);
List<Route> routes = codec(Route.class).decode(routesArray, this);