I’m trying to use Jolt in Apache NiFi to transform my JSON data from the input structure to the desired output structure. Here’s my input JSON:
[
{
"LocationAvailabilitySync": {
"TransactionNumber": "31ea1a10-abc4-4aa5-a8c6-6f204903073a",
"TransactionType": "SyncDetail",
"CurrentPage": 5,
"CurrentCount": 15,
"TotalCount": 9,
"TotalPages": 9,
"SyncCount": null,
"ViewConfigurationName": null
},
"ItemId": "5678",
"LocationId": "0088",
"Status": "AVAILABLE",
"ViewName": "ATC_1",
"ViewId": "05fdb789-a372-4f0e-8e35-9517f3cf02cc",
"Quantity": 567,
"TransactionDateTime": "2020-04-29T18:35:56.662",
"NextAvailabilityDate": null,
"TotalIncludingSubstituteItems": 567,
"SubstituteItemsAvailable": false,
"SubstitutionDetail": null
},
{
"LocationAvailabilitySync": {
"TransactionNumber": "31ea1a10-abc4-4aa5-a8c6-6f204903073a",
"TransactionType": "SyncDetail",
"CurrentPage": 5,
"CurrentCount": 15,
"TotalCount": 9,
"TotalPages": 9,
"SyncCount": null,
"ViewConfigurationName": null
},
"ItemId": "1234",
"LocationId": "0088",
"Status": "AVAILABLE",
"ViewName": "ATC_1",
"ViewId": "05fdb789-a372-4f0e-8e35-9517f3cf02cc",
"Quantity": 567,
"TransactionDateTime": "2020-04-29T18:35:56.662",
"NextAvailabilityDate": null,
"TotalIncludingSubstituteItems": 567,
"SubstituteItemsAvailable": false,
"SubstitutionDetail": null
}
]
And here’s the desired output JSON:
{
"LocationAvailabilitySync": [
{
"TransactionNumber": "31ea1a10-abc4-4aa5-a8c6-6f204903073a",
"TransactionType": "SyncDetail",
"CurrentPage": 5,
"CurrentCount": 15,
"TotalCount": 9,
"TotalPages": 9,
"SyncCount": null,
"ViewConfigurationName": null,
"LocationAvailabilityResponse": [
{
"ItemId": "5678",
"LocationId": "0088",
"Status": "AVAILABLE",
"ViewName": "ATC_SOFKA1",
"ViewId": "e88130a2-6a07-408b-8bf8-03e3d28cf057",
"Quantity": 567,
"TransactionDateTime": "2020-04-29T18:35:56.662",
"NextAvailabilityDate": null,
"TotalIncludingSubstituteItems": 567,
"SubstituteItemsAvailable": false,
"SubstitutionDetail": null
},
{
"ItemId": "1234",
"LocationId": "0088",
"Status": "AVAILABLE",
"ViewName": "ATC_SOFKA2",
"ViewId": "e88130a2-6a07-408b-8bf8-03e3d28cf058",
"Quantity": 567,
"TransactionDateTime": "2020-04-29T18:35:56.662",
"NextAvailabilityDate": null,
"TotalIncludingSubstituteItems": 567,
"SubstituteItemsAvailable": false,
"SubstitutionDetail": null
}
]
}
]
}
I need help with creating the Jolt specification to achieve this transformation. Can anyone provide guidance or an example Jolt spec that can accomplish this?
Thank you!