Mule ESB 内で 3 つの (非常に) 異なるメッセージ形式を扱っているとします。それらを A、B、および C と呼びます。それらは XML (ソケット経由)、カスタム テキスト形式、および別の種類のメッセージを転送する SOAP である可能性があります。たとえば、XML (ソケットを介して転送されるものとは異なります)。それらはすべて互いに変換できます。A、B、C は同じ情報を運びますが、形式が異なります。
それらのそれぞれには、フロー内の独自のエントリ ポイント、いくつかの形式の検証などがあります。
しかし、いくつかの情報の処理/抽出、コンテンツに基づくルーティング、強化など、それらすべてで実行する必要があるいくつかの (多くの) ロジックがあります。
私は何をすべきか?つまり、統合パターンについて調査を行いましたが、この状況または類似のものについては何も見つかりませんでした。
より簡単なアプローチは、私の「メインフロー」の「デフォルト」としてフォーマットの1つ(Bを取りましょう)を取り、それに基づいてすべての共通ロジックを実装するように思えます。次に、到着するすべてのメッセージが B に変換され、2 つのポイントが同じ形式を使用している場合でも、目的の形式に再度変換されます。
例:
1) 1 つの「A」がアプリにヒットし、「B」に変換されて共通ロジックが実行され、再び「A」に変換されて配信されます。
2) 1 つの「C」がアプリにヒットし、「B」に変換されて共通ロジックが実行され、「A」に変換されて配信されます。
次に、私の質問は、Mule には、このようなことを行うためのより良い方法を提供する機能があるか、それとも上記の解決策が合理的に見えるかということです。
前もって感謝します。