Flex Gateway新着情報
Governance新着情報
Monitoring API Manager
DataWeave 2.1 は Mule 4.1 と互換性があります。 Mule 4.1 の標準サポートは 2020 年 11 月 2 日に終了しました。このバージョンの Mule は、拡張サポートが終了する 2022 年 11 月 2 日にそのすべてのサポートが終了します。 このバージョンの Mule を使用する CloudHub には新しいアプリケーションをデプロイできなくなります。許可されるのはアプリケーションへのインプレース更新のみになります。 標準サポートが適用されている最新バージョンの Mule 4 にアップグレードすることをお勧めします。これにより、最新の修正とセキュリティ機能強化を備えたアプリケーションが実行されます。 |
定義入力に応じて動的に実行内容を変更できる変換を作成できます。この DataWeave の例では、ペイロード入力と mapping
という名前の変数の両方を取得します。この変数は、各項目の名前の変更方法とそれぞれで使用するデフォルト値を指定します。
この例では、以下を使用します。
入力配列のすべての要素を調べる map
関数。および、各要素の各項目を調べる 2 番目の map
関数。
mapping
変数で指定された変更を適用するカスタム関数。
デフォルト値を設定する default
。これは、mapping
変数から取得します。
%dw 2.0
output application/json
var applyMapping = (input, mappingsDef) -> (
mappingsDef map (def) -> {
(def.target) : input[def.source] default def."default"
}
)
---
payload.sfdc_users.*sfdc_user map (user) -> (
applyMapping(user, vars.mappings)
)
<sfdc_users>
<sfdc_user>
<sfdc_name>Mariano</sfdc_name>
<sfdc_last_name>Achaval</sfdc_last_name>
<sfdc_employee>true</sfdc_employee>
</sfdc_user>
<sfdc_user>
<sfdc_name>Julian</sfdc_name>
<sfdc_last_name>Esevich</sfdc_last_name>
<sfdc_employee>true</sfdc_employee>
</sfdc_user>
<sfdc_user>
<sfdc_name>Leandro</sfdc_name>
<sfdc_last_name>Shokida</sfdc_last_name>
</sfdc_user>
</sfdc_users>
mappings
[
{
"source": "sfdc_name",
"target": "name",
"default": "---"
},
{
"source": "sfdc_last_name",
"target": "lastName",
"default": "---"
},
{
"source": "sfdc_employee",
"target": "user",
"default": true
}
]
[
[
{"name": "Mariano"},
{"lastName": "Achaval"},
{"user": "true"}
],
[
{"name": "Julian"},
{"lastName": "Esevich"},
{"user": "true"}
],
[
{"name": "Leandro"},
{"lastName": "Shokida"},
{"user": true}
]
]