進行中のベータリリース​: クラウド IDE は進行中のベータリリースです​。ベータ状態での Anypoint Code Builder の使用には、IDE で入手できる、該当するベータサービス契約条件が適用されます。

コードスニペットの操作

コードスニペット​は、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 のスニペット)」Leaving the Site​を参照してください。

組み込みスニペットを使用する利点

スニペットから生成された XML を使用すると、設定 XML で使用できる基本 XML 要素を使用するよりも迅速かつ一貫した方法でアプリケーションを設定できます。次に例を示します。

  • 組み込み Logger スニペット:

    <logger level="" message='$2' doc:name="Logger" doc:id="xgsmzm" />
    XML

    Mule アプリケーションのスニペット XML を設定するには、Logger の ​message​ など、属性の値を指定します。

  • 基本 Logger XML:

    <logger doc:name="Logger" doc:id="xlkhkz" />
    XML

    基本 Logger XML を設定するには、属性と値を指定する必要があります。

Mule アプリケーションへのスニペットの追加

キャンバスまたは設定 XML のいずれかからスニペットを追加します。

  • キャンバスからは、Anypoint Code Builder により、作業している ​<flow/>​ または ​<sub-flow/>​ 要素にすべてのユーザースニペットが挿入されます。

  • 設定 XML からは、​オートコンプリート​を使用してユーザースニペットを見つけて挿入します。

    たとえば、​<flow/>​ または ​<sub-flow/>​ と同じレベルに存在する必要があり、このどちらの要素にも存在しないグローバル設定では、オートコンプリートを使用します。 オートコンプリートメニューでは、スニペットはその名前と 2 次元ボックスアイコンで識別されます。

組み込みスニペットまたはユーザースニペットをインテグレーションまたは実装に追加します。

フローまたはサブフローに組み込みスニペットを追加する

組み込みスニペットを追加する手順は、次のとおりです。

  1. キャンバスで、スニペットを追加する場所で ​​ (​[Add component (コンポーネントを追加)]​) アイコンをクリックします。

    Mule アプリケーションキャンバス
  2. [Snippets (スニペット)]​ > ​[Built-in Snippets (組み込みスニペット)]​ を選択します。

  3. フローまたはサブフローに追加する組み込みスニペットをクリックします。

    キャンバスで選択した場所にあるアプリケーションの ​<flow/>​ または ​<sub-flow/>​ 要素内にスニペットの XML が挿入されます。

オートコンプリート機能を使用して組み込みスニペットを XML 設定ファイルに直接挿入することもできます。 オートコンプリートを使用してスニペットを設定 XML に挿入する​を参照してください。

フローまたはサブフローにユーザースニペットを追加する

作成するユーザースニペットをインテグレーションまたは実装に追加します。スニペットを作成するには、​ユーザースニペットの作成​を参照してください。

フローまたはサブフローにユーザースニペットを追加する手順は、次のとおりです。

  1. キャンバスで、スニペットを追加する場所で ​​ (​[Add component (コンポーネントを追加)]​) アイコンをクリックします。

    Mule アプリケーションキャンバス
  2. [Snippets (スニペット)]​ > ​[User Snippets (ユーザースニペット)]​ を選択します。

    定義されたスニペットがない場合、Anypoint Code Builder により、編集するサンプルスニペットが含まれる新しい ​mule-xml.json​ スニペットファイルが作成されます。 ユーザースニペットの作成​を参照してください。

  3. フローまたはサブフローに追加するユーザースニペットをクリックします。

    キャンバスで選択した場所にあるアプリケーションの ​<flow/>​ または ​<sub-flow/>​ 要素内にスニペットの XML が挿入されます。

ユーザースニペットの作成

キャンバスまたはコマンドパレットのいずれかからユーザースニペットを作成します。

キャンバスからユーザースニペットを作成する

Mule アプリケーション用の再利用可能なユーザースニペットを作成します。

ユーザースニペットは IDE インスタンスに固有です。また、他のユーザーがインポートして使用するためにエクスポートされるアプリケーションのプロジェクトではユーザースニペットは共有されません。

  1. キャンバスで、スニペットを追加する場所で ​​ (​[Add component (コンポーネントを追加)]​) アイコンをクリックします。

    Mule アプリケーションキャンバス
  2. [Snippets (スニペット)]​ > ​[User Snippets (ユーザースニペット)]​ を選択します。

  3. ​ (​[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"
    	 }
    }
    JSON
    1 スニペットリストに表示される名前
    2 スニペットのオートコンプリートを実行するトリガーテキスト
    3 再利用可能なコード
  4. スニペットを保存し、​​ (​[Refresh snippet list (スニペットリストを更新)]​) アイコンをクリックします。

  5. サンプルスニペットをフローに追加します。

    1. [User Snippets (ユーザースニペット)]​ で ​[Log a message (メッセージを記録)]​ をクリックします。

      Anypoint Code Builder によりスニペットが設定 XML に追加されます。

      <logger level="" message='$2' doc:name="Logger" doc:id="sgxbfo" />
      xml

      スニペットの ​$RANDOM_HEX​ 値のため、​doc:id​ の値はランダムに生成されます。

  6. level​ や ​message​ の値など、必要な値または設定を XML に追加します。次に例を示します。

    <logger level="WARN" message='This is a warning message.' doc:name="Logger" doc:id="sgxbfo" />
    xml
  7. 他のスニペットを ​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"
    	 }
    }
    JSON

オートコンプリート機能を使用してユーザースニペットを XML 設定ファイルに直接挿入することもできます。

設定ファイルでユーザースニペットを作成する

ユーザースニペットを設定する手順は、次のとおりです。

  1. [Configure User Snippets (ユーザースニペットを制御)] に移動します。

  2. 開いた ​[Select Snippets File or Create Snippets (スニペットファイルを選択またはスニペットを作成)]​ 項目で、次を選択します。

    mule-xml.json (Mule XML)
    command
  3. ファイルに設定が含まれていない場合、​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"
    	// }
    }
    json
  4. ファイルにスニペットコードを追加します。

オートコンプリートを使用してスニペットを設定 XML に挿入する

スニペットを Mule アプリケーションの設定 XML に直接追加する手順は、次のとおりです。

  1. 設定 XML ファイル内をクリックします。

  2. [Auto Complete (オートコンプリート)] メニューを開きます。

  3. フローまたはサブフローにスニペットを挿入します。

    • 組み込みスニペットの場合、組み込みスニペットの名前を検索して選択します。次に例を示します。

      Choice ルーターのオートコンプリートオプション

      組み込み 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>
      xml
      1 組み込み Choice スニペットの XML はオートコンプリートリストの ​flow:choice​ です。このメニュー内のスニペットのアイコンは 1 次元ボックスです。
      2 最小設定の Choice コンポーネントの XML。これは、キャンバスから ​[Core Processors (コアプロセッサー)]​ > ​[Flow Control (フロー制御)]​ > ​[Choice]​ に移動しても使用できます。 この XML のアイコンは 3 次元ボックスです。
      • ユーザースニペットの場合、(​mule-xml.json​ で設定されている) ユーザースニペットの名前を検索して選択します。次に例を示します。

        [Log a message (メッセージを記録)] ユーザースニペットのオートコンプリートオプション