JSON to JSON transformation library written in Java.
Interesting and powerful feature; for an example see : https://raw.githubusercontent.com/bazaarvoice/jolt/f8f18e8544f7f3ffef8c5a8f9e059a844857387f/jolt-core/src/test/resources/json/shiftr/transposeNestedLookup.json
Additionally, "fixed" an issue where Shiftr could not differentiate between something not existing or a legitimate null in the input data.s
However this necessitated two small backward incompatibilities
So that you can have output paths like "ref.local" that do not have that be nested maps.
Example: RHS Shiftr values and how they would manifest in the ouput tree
The class ChainrFactory was in the wrong package; "bazarvoice" instead of "bazaarvoice".
If you were referencing that class, you will need to fix you imports.
You should be able to reuse Chainr instances to perform multiple transforms. There was a bug in the "shift" operation where "per run" information was leaking into the reusable spec.
Compiles with Java 1.7
Updated Dependencies
Code Cleanup based on Intellij inspections
Ability to transpose data / do rudimentary filtering -> new '@' logic
Ability to "hardcode" a value in the spec file to get placed in the output -> new '#' logic
New JsonUtil interface "extracted" from existing JsonUtils class static methods
Fixed bug in JsonUtils
Fancy Jackson Annotations
Bumped Dependency Versions
The * wildcard can now be used in Removr specs. The reason for this is, we needed to remove extraneous keys before a Shiftr operation. The extraneous keys were being matched and pass thru to the output by Shiftr wildcards.
Additionally, there was a bug fix in Sortr, when sorting input arrays that are "unmodifiable".
Command Line
New Maven "convenience" artifact