判断一个数组是否有元素,Nifi

Determine whether or not an array has element, Nifi

我有以下 json:

{
  "a":[1,2,3,4],
  "b":[]
}

我想知道数组是否有元素。 因此所需的期望输出是:

{
  "a":[1,2,3,4],
  "b":[],
  "is_element_in_a":True,
  "is_element_in_b":False    
}

这个的 jolt 规范表达式是什么?

您可以使用 modify-overwrite-beta transformation spec 以及 size 函数来确定列表的大小是否zeronot 第一步,然后使用 shift 转换规范打印 布尔值 条件逻辑中的值,例如

[
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "in_a": "=size(@(1,a))",
      "in_b": "=size(@(1,b))"
    }
  },
  {
    "operation": "shift",
    "spec": {
      "*": "&",
      "in_*": {
        "0": {
          "#False": "is_element_&2"
        },
        "*": {
          "#True": "is_element_&2"
        }
      }
    }
  }
]