Dataweave удалить пустой массив - PullRequest
0 голосов
/ 06 июня 2018

Мы запускаем MuleEsb 3.9.0 Я пытаюсь удалить пустой массив в моем преобразовании данных.Например:

payload map ((value , indexOfValue) -> {
 value : {
    content: value.content,
    subvalue: value.subValue map ((subValue, indexOfsubValue)->
    {
        sub: subValue
    }) filter ($.sub != null )
  }
})

это приведет к

[
  {
    value:
     {
       content: xyz
       subValue: []
     }
  }
]

Я хочу, чтобы subValue было полностью удалено.выводится:

[
  {
    value:
     {
       content: xyz
     }
  }
]

1 Ответ

0 голосов
/ 19 июня 2018

Вам нужно что-то вроде этого:

payload map ((v) -> {
  value: {
    content: v.content,
    (subvalue: v.subValue map ... ) when ((sizeOf v.subValue) != 0)
  }
})
...