Flex Gateway新着情報
Governance新着情報
Monitoring API Managerコードスニペットは、IDE から Mule アプリケーションフローまたはサブフローの設定 XML ファイルに挿入するコードパターンです。 再利用可能なコードパターンのコードスニペットを使用すると、より効率的に作業でき、設定エラーの可能性を減らすことができます。
スニペットを使用して、一般的に使用されるコネクタ操作、コアコンポーネントでサポートされるメッセージ処理パターン、設定 XML 内の複数要素の設定など、Mule DSL でサポートされる任意の要素の設定を提供します。 コネクタ操作、コアプロセッサー、およびその他のプロセッサーのスニペットを Mule アプリケーションの XML 設定ファイルで設定できます。Mule アプリケーションへのスニペットの追加を参照してください。
Anypoint Code Builder では組み込みスニペットが提供されるほか、独自のユーザースニペットを JSON 形式で設定できます。ユーザースニペットの作成を参照してください。
スニペットを Mule アプリケーションの設定 XML に追加すると、スニペットは Anypoint Code Builder により XML に変換されます。
スニペットは JSON 形式で作成されたテンプレートです。
スニペットを Mule アプリケーションフローまたはサブフローの設定 XML に挿入すると、スニペットの JSON は XML に自動的に変換されます。
ユーザースニペットを mule-xml.json
ファイルに作成します。
コードスニペットは VS Code 機能です。詳細は、 「Snippets in Visual Studio Code (Visual Studio Code のスニペット)」を参照してください。
スニペットから生成された XML を使用すると、設定 XML で使用できる基本 XML 要素を使用するよりも迅速かつ一貫した方法でアプリケーションを設定できます。次に例を示します。
組み込み Logger スニペット:
<logger level="" message='$2' doc:name="Logger" doc:id="xgsmzm" />
Mule アプリケーションのスニペット XML を設定するには、Logger の message
など、属性の値を指定します。
基本 Logger XML:
<logger doc:name="Logger" doc:id="xlkhkz" />
基本 Logger XML を設定するには、属性と値を指定する必要があります。
キャンバスまたは設定 XML のいずれかからスニペットを追加します。
キャンバスからは、 Anypoint Code Builder により、作業している <flow/>
または <sub-flow/>
要素にすべてのユーザースニペットが挿入されます。
設定 XML からは、オートコンプリートを使用してユーザースニペットを見つけて挿入します。
たとえば、<flow/>
または <sub-flow/>
と同じレベルに存在する必要があり、このどちらの要素にも存在しないグローバル設定では、オートコンプリートを使用します。
オートコンプリートメニューでは、スニペットはその名前と 2 次元ボックスアイコンで識別されます。
組み込みスニペットまたはユーザースニペットをインテグレーションまたは実装に追加します。
組み込みスニペットを追加する手順は、次のとおりです。
キャンバスで、スニペットを追加する場所で ([Add component (コンポーネントを追加)]) アイコンをクリックします。
[Snippets (スニペット)] > [Built-in Snippets (組み込みスニペット)] を選択します。
フローまたはサブフローに追加する組み込みスニペットをクリックします。
キャンバスで選択した場所にあるアプリケーションの <flow/>
または <sub-flow/>
要素内にスニペットの XML が挿入されます。
オートコンプリート機能を使用して組み込みスニペットを XML 設定ファイルに直接挿入することもできます。 オートコンプリートを使用してスニペットを設定 XML に挿入する を参照してください。
作成するユーザースニペットをインテグレーションまたは実装に追加します。スニペットを作成するには、ユーザースニペットの作成を参照してください。
フローまたはサブフローにユーザースニペットを追加する手順は、次のとおりです。
キャンバスで、スニペットを追加する場所で ([Add component (コンポーネントを追加)]) アイコンをクリックします。
[Snippets (スニペット)] > [User Snippets (ユーザースニペット)] を選択します。
定義されたスニペットがない場合、Anypoint Code Builder により、編集するサンプルスニペットが含まれる新しい mule-xml.json
スニペットファイルが作成されます。
ユーザースニペットの作成を参照してください。
フローまたはサブフローに追加するユーザースニペットをクリックします。
キャンバスで選択した場所にあるアプリケーションの <flow/>
または <sub-flow/>
要素内にスニペットの XML が挿入されます。
キャンバスまたはコマンドパレットのいずれかからユーザースニペットを作成します。
Mule アプリケーション用の再利用可能なユーザースニペットを作成します。
ユーザースニペットは IDE インスタンスに固有です。また、他のユーザーがインポートして使用するためにエクスポートされるアプリケーションのプロジェクトではユーザースニペットは共有されません。
キャンバスで、スニペットを追加する場所で ([Add component (コンポーネントを追加)]) アイコンをクリックします。
[Snippets (スニペット)] > [User Snippets (ユーザースニペット)] を選択します。
([Create user snippet (ユーザースニペットを作成)]) アイコンをクリックします。
Anypoint Code Builder で mule-xml.json
が開きます。ここで、ユーザースニペットを設定します。
定義されたスニペットがない場合、Anypoint Code Builder により、編集するサンプルスニペットが含まれる新しい mule-xml.json
スニペットファイルが作成されます。
たとえば、Example 以降のすべての項目のコメントを解除して、[Log a message] (メッセージを記録) ユーザースニペットを作成します。
{
// Example:
"Log a message": { (1)
"prefix": "log", (2)
"body": [ (3)
"<logger level=\"${1:INFO}\" message='$2' doc:name=\"Logger\" doc:id=\"$RANDOM_HEX\" />$0",
],
"description": "Log output to console"
}
}
1 | スニペットリストに表示される名前 |
2 | スニペットのオートコンプリートを実行するトリガーテキスト |
3 | 再利用可能なコード |
スニペットを保存し、 ([Refresh snippet list (スニペットリストを更新)]) アイコンをクリックします。
サンプルスニペットをフローに追加します。
[User Snippets (ユーザースニペット)] で [Log a message (メッセージを記録)] をクリックします。
Anypoint Code Builder によりスニペットが設定 XML に追加されます。
<logger level="" message='$2' doc:name="Logger" doc:id="sgxbfo" />
スニペットの $RANDOM_HEX
値のため、doc:id
の値はランダムに生成されます。
level
や message
の値など、必要な値または設定を XML に追加します。次に例を示します。
<logger level="WARN" message='This is a warning message.' doc:name="Logger" doc:id="sgxbfo" />
他のスニペットを mule-xml.json
に追加するには、}
の後にカンマを追加し、新しいスニペットを定義します。次に例を示します。
{
// Example:
"Log a message": {
"prefix": "log",
"body": [
"<logger level=\"${1:INFO}\" message='$2' doc:name=\"Logger\" doc:id=\"$RANDOM_HEX\" />$0",
],
"description": "Log output to console"
},
"Add your snippet title here": {
"prefix": "Add your snippet trigger here",
"body": [
"Add your code here",
],
"description": "Add your description here"
}
}
オートコンプリート機能を使用してユーザースニペットを XML 設定ファイルに直接挿入することもできます。
ユーザースニペットを設定する手順は、次のとおりです。
[Configure User Snippets (ユーザースニペットを制御)] に移動します。
デスクトップ IDE で、[Code (コード)] > [Settings (設定)] > [Configure User Snippets (ユーザースニペットを設定)] を選択する。
クラウド IDE で、 (メニュー) アイコンをクリックし、[Preferences (プリファレンス)] > [Configure User Snippets (ユーザースニペットを設定)] を選択する。
いずれかの IDE で次の操作を実行する。
キーボードショートカットを使用してコマンドパレットを開く。
Mac: Cmd+Shift+p
Windows: Ctrl+Shift+p
次のコマンドを選択する。
Snippets: Configure User Snippets
開いた [Select Snippets File or Create Snippets (スニペットファイルを選択またはスニペットを作成)] 項目で、次を選択します。
mule-xml.json (Mule XML)
ファイルに設定が含まれていない場合、mule-xml.json
では、中括弧内にコメントが提供されます。
{
// Place your snippets for mule-xml here. Each snippet is defined under a snippet name and has a prefix, body and
// description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the
// same ids are connected.
// Example:
// "Print to console": {
// "prefix": "log",
// "body": [
// "console.log('$1');",
// "$2"
// ],
// "description": "Log output to console"
// }
}
ファイルにスニペットコードを追加します。
{
"Mule Flow": {
"prefix": "muledx:flow",
"body": [
"<flow name=\"${1:$TM_FILENAME_BASE-Flow}\" doc:id=\"$RANDOM_HEX-$RANDOM_HEX\">",
"",
"</flow>"
]
},
"HTTP Listener Config": {
"prefix": "muledx:http-listener-config",
"body": [
"<http:listener-config name=\"${1:httpListenerConfig}\" doc:name=\"${2:Listener Config}\" doc:id=\"$RANDOM_HEX-$RANDOM_HEX\">",
" <http:listener-connection host=\"${3:Host}\" port=\"${4:Port}\"/>",
"</http:listener-config>"
]
},
"HTTP Listener": {
"prefix": "muledx:http-listener",
"body": [
"<http:listener path=\"/${1:path}\" config-ref=\"${2:httpListenerConfig}\" doc:name=\"${3:Listener}\" doc:id=\"$RANDOM_HEX-$RANDOM_HEX\"/>"
]
},
"Set Payload": {
"prefix": "muledx:set-payload",
"body": [
"<set-payload value=\"${1:#[payload]}\" doc:name=\"${2:Set Payload}\" doc:id=\"$RANDOM_HEX-$RANDOM_HEX\"/>"
]
},
"Set Variable": {
"prefix": "muledx:set-variable",
"body": [
"<set-variable variableName=\"${1:name}\" value=\"${2:#[payload]}\" doc:name=\"${3:Set Variable}\" doc:id=\"$RANDOM_HEX-$RANDOM_HEX\"/>"
]
},
"Logger": {
"prefix": "muledx:logger",
"body": [
"<logger level=\"INFO\" message=\"${1:#[payload]}\" doc:name=\"${2:Logger}\" doc:id=\"$RANDOM_HEX-$RANDOM_HEX\"/>"
]
},
"Database Config - MySQL": {
"prefix": "muledx:db-config-mysql",
"body": [
"<db:config name=\"${1:DatabaseConfig}\" doc:name=\"${2:mySQL DB}\" doc:id=\"$RANDOM_HEX-$RANDOM_HEX\">",
" <db:my-sql-connection host=\"${3:Host}\" port=\"${4:Port}\" user=\"${5:Username}\" password=\"${6:Password}\" database=\"${7:DatabaseName}\" />",
"</db:config>"
]
},
"Database Select": {
"prefix": "muledx:db-select",
"body": [
"<db:select config-ref=\"${1:DatabaseConfigRef}\" doc:name=\"${2:Select}\" doc:id=\"$RANDOM_HEX-$RANDOM_HEX\">",
" <db:sql>",
" <![CDATA[${3:SQL}]]>",
" </db:sql>",
"</db:select>"
]
},
"Transform Message": {
"prefix": "muledx:transform-message",
"body": [
"<ee:transform doc:name=\"${1:Transform Message}\" doc:id=\"$RANDOM_HEX-$RANDOM_HEX\">",
" <ee:message>",
" <ee:set-payload>",
" <![CDATA[${2:DataWeave}]]>",
" </ee:set-payload>",
" </ee:message>",
"</ee:transform>"
]
}
}
スニペットを Mule アプリケーションの設定 XML に直接追加する手順は、次のとおりです。
設定 XML ファイル内をクリックします。
[Auto Complete (オートコンプリート)] メニューを開きます。
Mac: Ctrl+Space
Windows: Cmd+Space
フローまたはサブフローにスニペットを挿入します。
組み込みスニペットの場合、組み込みスニペットの名前を検索して選択します。次に例を示します。
組み込み Choice スニペット設定をこのコンポーネントの基本 XML 設定と比較します。
<choice doc:name="Choice" doc:id="vcfaqr" > (1)
<when expression='#[]' doc:name="When" >
</when>
<otherwise doc:name="Otherwise" >
</otherwise>
</choice>
<choice doc:name="Choice" doc:id="hhdehz" > (2)
</choice>
1 | 組み込み Choice スニペットの XML はオートコンプリートリストの flow:choice です。このメニュー内のスニペットのアイコンは 1 次元ボックスです。 |
2 | 最小設定の Choice コンポーネントの XML。これは、キャンバス UI から [Core Processors (コアプロセッサー)] > [Flow Control (フロー制御)] > [Choice] に移動しても使用できます。
この XML のアイコンは 3 次元ボックスです。
|