Mule のコンポーネント

Mule アプリケーションの主な構成要素はコンポーネントです。コンポーネントは Mule アプリケーションを経由するメッセージでビジネスロジックを実行します。コンポーネントには、コアコンポーネントと、コネクタやモジュールに属するコンポーネントがあります。

コアコンポーネント

これは、Mule Runtime の機能のコアを構成する個別のコンポーネントです。次に、コアコンポーネントでアプリケーションに追加できる機能の例を挙げます。

  • フローまたはサブフローの一部の非同期処理

  • メッセージの一括処理

  • サブフローの初期化

  • ログ記録

  • ペイロードの設定

  • DataWeave 言語を使用したメッセージの変換

  • エラーをキャッチして対応するためのフローでの Try スコープの作成

たとえば、Choice ルーターはメッセージコンテンツを評価する DataWeave 式のセットに従ってフローを経由するメッセージを動的にルーティングするコンポーネントです。各式は、異なるルーティングオプションに関連付けられます。これにより、大部分のプログラミング言語の ​if​/​then​/​else​ コードブロックのような条件付き処理がフローに追加されます。

Anypoint Studio のコアコンポーネントのリスト
Figure 1. Anypoint Studio のコアコンポーネントのリスト

コンポーネントドキュメントについては、​「コアコンポーネント」​を参照してください。

コネクタ

コネクタは、サードパーティ API や標準インテグレーションプロトコルなどの外部リソースと MuleSoft アプリケーションのインテグレーションを容易にするために作成されたコンポーネントをグループにまとめたものです。コネクタにより、SaaS やオンプレミスアプリケーション、システム、サービスへの接続が可能になります。

たとえば、Salesforce Connector には、Salesforce プラットフォーム API を使用して多数のさまざまな操作を実行できるコンポーネントが用意されています。

Anypoint Studio でリストされた Salesforce Connector およびその操作
Figure 2. Anypoint Studio でリストされた Salesforce Connector およびその操作

モジュール

モジュールは、値の圧縮データの集約、Java 機能の使用、JSON を処理するための追加機能の使用などを可能にすることで、アプリケーションの柔軟性を高めるために作成されたコンポーネントをグループにまとめたものです。モジュールによって提供される機能は、従来のアプリケーションコーディングのレベルではさらに増えます。

たとえば、XML Module には XML ドキュメントからデータを抽出して処理できるコンポーネントが用意されています。

Anypoint Studio でリストされた XML Module およびそのコンポーネント
Figure 3. Anypoint Studio でリストされた XML Module およびそのコンポーネント