Github user cestella commented on a diff in the pull request:
https://github.com/apache/metron/pull/910#discussion_r163967410
--- Diff:
metron-platform/metron-indexing/src/main/java/org/apache/metron/indexing/dao/IndexDao.java
---
@@ -140,9 +147,9 @@ default Document getPatchedDocument(PatchRequest request
throw new OriginalNotFoundException("Unable to patch an document
that doesn't exist and isn't specified.");
}
}
- JsonNode originalNode = JSONUtils.INSTANCE.convert(latest,
JsonNode.class);
- JsonNode patched = JSONUtils.INSTANCE.applyPatch(request.getPatch(),
originalNode);
- Map<String, Object> updated = JSONUtils.INSTANCE.getMapper()
+ JsonNode originalNode = _mapper.get().convertValue(latest,
JsonNode.class);
+ JsonNode patched = JsonPatch.apply(request.getPatch(), originalNode);
+ Map<String, Object> updated = _mapper.get()
.convertValue(patched, new TypeReference<Map<String, Object>>()
{});
--- End diff --
no, I don't think I want to pass in a JsonNode to
`JSONUtils.INSTANCE.convert()`. I'm not sure WHAT happens there, honestly in a
situation where the JsonNode we pass in isn't the jackson version that
JSONUtils is using in metron-common. Also, I think I'd just like to keep
JSONUtils out of this class since it's using Jackson.
---