Как добавить элемент сразу после массива JSON с помощью Jolt - PullRequest
0 голосов
/ 14 ноября 2018

Мой образец JSON выглядит следующим образом


    {  
       "Event":{  
          "EventHeader":{  
             "size":57,
             "eventTime":"2018-11-02T20:31:15.428"
          },
          "EventData":{  
             "record":"XXXXX",
             "time":"201805270343",
             "count":11,
             "passengers":[  
                {  
                   "name":"DOE/JOHN",
                   "details":{  
                      "genderCode":"M",
                      "birthDate":"19900502",
                      "personName":{  
                         "lastName":"DOE",
                         "firstName":"JOHN",
                         "middleName":null
                      }
                   }
                }
             ],
             "flightCount":0,
             "ticketed":{  
                "typeCode":null,
                "comments":"ABCD"
             },
             "telephoneCnt":0
          }
       }
    }
and the desired  output look like this 

 <pre>{  
   "Event":{  
      "EventHeader":{  
         "size":57,
         "eventTime":"2018-11-02T20:31:15.428"
      },
      "EventData":{  
         "record":"XXXXX",
         "time":"201805270343",
         "count":11,
         "passengers":[  
            {  
               "name":"DOE/JOHN",
               "details":{  
                  "genderCode":"M",
                  "birthDate":"19900502",
                  "personName":{  
                     "lastName":"DOE",
                     "firstName":"JOHN",
                     "middleName":null
                  }
               }
            }
         ],
         "paxend":"true",
         "flightCount":0,
         "ticketed":{  
            "typeCode":null,
            "comments":"ABCD"
         },
         "telephoneCnt":0
      }
   }
}

В основном я хочу добавить "paxend": "true" сразу после массива Passenger. Как мы можем добиться этого с помощью Jolt? Буду признателен за любую помощь. Прошу прощения за то, что не опубликовал мою спецификацию, так как она не работает.

1 Ответ

0 голосов
/ 26 ноября 2018

Таким образом, это добавит "paxend": "true" к EventData, но не существует способа «из коробки» поставить его прямо «под» массивом «пассажиров».Это карта JSON, порядок не должен иметь значения.

Spec

[
  {
    "operation": "default",
    "spec": {
      "Event": {
        "EventData": {
          "paxend": "true"
        }
      }
    }
  }
]
...