JOLT спецификация при добавлении значений по умолчанию на основе условия - PullRequest
0 голосов
/ 25 сентября 2019

Если мои входные данные содержат «WorkflowCategory» в «метаданных», то выходные данные должны содержать workflow.workflowInputProperties с указанными значениями по умолчанию - с дублирующимися значениями (например, строка «», 3 и т. Д.).Если нет, то workflow.workflowInputProperties не следует добавлять.

Вход 1

    {
      "template": false,
      "active": true,
      "metadata": [
       {
         "value": "bank_",
         "key": "AssetNamePrefix"
       },
       {
         "value": "-BERG",
         "key": "SuffixForPublicId"
       },
       {
         "value": "false",
         "key": "CORSEnabled"
       },
       {
         "value": "Capture",
         "key": "WorkflowCategory"
       },
       {
         "value": "HD",
         "key": "Features"
       }
   ],
   "description": "Template for working with PRI",
   "name": "prof_name",
   "type": "Live",
   "id": "BNK056003413",
   "version": 6
 }

Вход 2

{
  "template": false,
  "active": true,
  "metadata": [
    {
      "value": "HD",
      "key": "Features"
    }
  ],
  "description": "Live Template",
  "name": "Live_HD",
  "type": "Live",
  "id": "BNK007596994",
  "version": 1
}

Для входа 1 вывод должен быть

{
  "id" : "BNK056003413",
  "name" : "prof_name",
  "metadataSet" : {
    "description" : "Template for working with PRI",
    "type" : "Live"
  },
  "workflow" : {
    "workflowInputProperties" : {
      "assetNamePrefix" : "bank_",
      "recordId" : "",
      "sourceUri":"",
      "processingUri": "",
      "recorderType": "ABC",
      "completionTimeout": 600
      "loopBackTimer": 10,
      "numberOfRetries": 3,
      "numberOfRetriesForScheduling": 3,
      "scheduleDelay" : 3600
    },
  }
}

Для входа 2 вывод должен быть следующим, без workflow.workflowInputProperties

{
  "id" : "BNK007596994",
  "name" : "Live_HD",
  "metadataSet" : {
    "description" : "Live Template",
    "type" : "Live"
  }
  "features" : "HD"
}
...