Flex Gateway新着情報
Governance新着情報
Monitoring API Managerこの DataWeave の例では、オブジェクトの配列から一連のキー-値ペアを含むすべてのオブジェクトを削除します。
開始する前に、DataWeave バージョン 2 (%dw 2.0
) は Mule 4 アプリケーションを対象とすることに注意してください。Mule 3 アプリケーションの場合、Mule 3.9 ドキュメントセットの DataWeave バージョン 1 (%dw 1.0
) の例を参照してください。他の Mule バージョンの場合は、目次の Mule Runtime バージョンセレクターを使用できます。
この例では、次の関数を使用します。
filter
では、入力配列のオブジェクトを反復処理し、式の結果として true
を返すオブジェクトが含まれる配列を返します。入力配列の各オブジェクトには、一連のキー-値ペアが含まれます。式では contains
関数と not
演算子が使用されます。
contains
では、dropThese
変数で指定されたキー-値ペアを識別します。この変数は、削除するキー-値ペアが含まれるオブジェクトの配列です。
not
では、dropThese
で識別されたキー-値ペアを filter
で最終出力から削除するように、contains
関数の結果を否定します。(not
がない場合、結果は不要なキー-値ペアのみが含まれるオブジェクトの配列になります)。
%dw 2.0
var dropThese = [
{"type" : "secondary", "space" : "rgb"},
{"type" : "primary", "space" : "cmyk"}
]
output application/json
---
payload filter (not (dropThese contains {"type": $."type", "space": $."space"}))
[
{"sequence": "1", "color": "red", "type": "primary", "space": "rgb"}
{"sequence": "2", "color": "green", "type": "primary", "space": "rgb"},
{"sequence": "3", "color": "blue", "type": "primary", "space": "rgb"},
{"sequence": "4", "color": "yellow", "type": "secondary", "space": "rgb"},
{"sequence": "5", "color": "magenta", "type": "secondary", "space": "rgb"},
{"sequence": "6", "color": "cyan", "type": "secondary", "space": "rgb"},
{"sequence": "7", "color": "cyan", "type": "primary", "space": "cmyk"},
{"sequence": "8", "color": "magenta", "type": "primary", "space": "cmyk"},
{"sequence": "9", "color": "yellow", "type": "primary", "space": "cmyk"},
{"sequence": "10", "color": "red", "type": "secondary", "space": "cmyk"},
{"sequence": "11", "color": "green", "type": "secondary", "space": "cmyk"},
{"sequence": "12", "color": "blue", "type": "secondary", "space": "cmyk"}
]
[
{
"sequence": "1",
"color": "red",
"type": "primary",
"space": "rgb"
},
{
"sequence": "2",
"color": "green",
"type": "primary",
"space": "rgb"
},
{
"sequence": "3",
"color": "blue",
"type": "primary",
"space": "rgb"
},
{
"sequence": "10",
"color": "red",
"type": "secondary",
"space": "cmyk"
},
{
"sequence": "11",
"color": "green",
"type": "secondary",
"space": "cmyk"
},
{
"sequence": "12",
"color": "blue",
"type": "secondary",
"space": "cmyk"
}
]