I have json in the following format (not limited to just two documents like in this example, there could potentially be many, many more):
[{
"ownerId": "XTV7I728",
"vehicleId": "999",
"engineId": "1",
"engineName": "Standard Engine",
"engineHp": 300
},
{
"ownerId": "XTV7I728",
"vehicleId": "999",
"engineId": "2",
"engineName": "Custom Engine",
"engineHp": 450
}]
I would like to essentially "denormalize" multiple of these kinds of json documents into one json document, like the following:
[{
"ownerId": "XTV7I728",
"vehicleId": "999",
"engines": [
{
"engineId": "1",
"engineName": "Standard Engine",
"engineHp": 300
},
{
"engineId": "2",
"engineName": "Custom Engine",
"engineHp": 450
}
]
}]
Also wanted to add that something like
[{
"ownerId": "XTV7I728",
"vehicleId": "999",
"engineId": "1",
"engineName": "Standard Engine",
"engineHp": 300
},
{
"ownerId": "XTV7I728",
"vehicleId": "999",
"engineId": "2",
"engineName": "Custom Engine",
"engineHp": 450
},
{
"ownerId": "TY789021",
"vehicleId": "999",
"engineId": "1",
"engineName": "Standard Engine",
"engineHp": 300
}]
Should be transformed to:
[{
"ownerId": "XTV7I728",
"vehicleId": "999",
"engines": [
{
"engineId": "1",
"engineName": "Standard Engine",
"engineHp": 300
},
{
"engineId": "2",
"engineName": "Custom Engine",
"engineHp": 450
}
]
},
{
"ownerId": "TY789021",
"vehicleId": "999",
"engines": [
{
"engineId": "1",
"engineName": "Standard Engine",
"engineHp": 300
}
]
}]
My limited understanding of Jolt so far leads me to believe this kind of transformation is possible, but it's not immediately clear exactly how to go about this from the provided documentation. Any assistance with the Jolt spec would be greatly appreciated!!