1.4. Fuse Online コンストラクトの説明
Fuse Online を使用するには、コネクター、コネクション、アクション、ステップ、およびフローを使用してインテグレーションを作成します。これらのコンストラクトの基本を理解すると便利です。
Fuse Online の各インストールは Fuse Online 環境と呼ばれます。Red Hat が Fuse Online 環境をインストールおよび管理する場合、OpenShift Online または OpenShift Dedicated 上で実行されます。ユーザーが Fuse Online 環境をインストールおよび管理する場合、通常は OpenShift Container Platform で実行されますが、OpenShift Dedicated で実行することもできます。
インテグレーション
Fuse Online には、シンプルなインテグレーションと API プロバイダーインテグレーションがあります。
シンプルなインテグレーションは、Fuse Online が実行する順序付けされたステップです。これには、以下が含まれます。
- アプリケーションに接続し、インテグレーションを開始するステップ。このコネクションは、インテグレーションが操作する初期データを提供します。後続のコネクションは追加のデータを提供できます。
- アプリケーションに接続し、インテグレーションを完了するためのステップ。このコネクションは、以前のステップから出力されたデータをすべて受け取り、インテグレーションを終了します。
最初と最後のコネクションの間にアプリケーションに接続する任意の追加ステップ。追加のコネクションがどのインテグレーションステップにあるかによって、追加のコネクションは以下のいずれかまたはすべてを実行できます。
- 操作するインテグレーションの追加データを提供します。
- インテグレーションデータを処理します。
- 処理結果をインテグレーションに出力します。
- コネクションとアプリケーション間のデータで操作する任意のステップ。通常、前のコネクションのデータフィールドを次のコネクションが使用するデータフィールドにマップするステップがあります。
API プロバイダーインテグレーションは、OpenAPI スキーマを提供した REST API サービスをパブリッシュします。REST API クライアントからの呼び出しによって、API プロバイダーインテグレーションの実行がトリガーされます。呼び出しは、REST API が実装するすべてのオペレーションを呼び出すことができます。シンプルなインテグレーションには実行のプライマリーフローが 1 つあります。API プロバイダーインテグレーションの場合は、オペレーションごとに 1 つのプライマリーフローがあります。各オペレーションフローは、インテグレーションの作成時にそのオペレーションのフローに追加したステップに応じて、アプリケーションに接続し、データを処理します。各オペレーションフローは、呼び出しがインテグレーションの実行をトリガーしたクライアントに指定する応答を返して終了します。
コネクター
Fuse Online はコネクターのセットを提供します。コネクターは、データの取得元また送信先となる特定のアプリケーションを示します。各コネクターは、その特定のアプリケーションへのコネクションを作成するためのテンプレートです。たとえば、Salesforce コネクターを使用して、Salesforce へのコネクションを作成します。
接続するアプリケーションは、OAuth プロトコルを使用してユーザーを認証することがあります。この場合、Fuse Online 環境をそのアプリケーションにアクセスできるクライアントとして登録します。登録は、アプリケーションのコネクターに関連付けられます。OAuth を使用する各アプリケーションに 1 度だけ特定の Fuse Online 環境を登録する必要があります。登録は、コネクターから作成する各コネクションまで適用されます。
Fuse Online が必要なコネクターを提供しない場合、開発者が必要なコネクターを作成できます。
コネクション
インテグレーションを作成する前に、データの取得元また送信先となる各アプリケーションまたはサービスへのコネクションを作成する必要があります。コネクションを作成するには、コネクターを選択して、設定情報を追加します。たとえば、インテグレーションで AMQ ブローカーに接続するには、AMQ コネクターを選択してコネクションを作成し、プロンプトにしたがって接続するブローカーと、コネクションに使用するアカウントを特定します。
コネクションは、作成されたコネクターの特定のインスタンスの 1 つです。1 つのコネクターから複数のコネクションを作成できます。たとえば、AMQ コネクターを使用して、各コネクションが異なるブローカーにアクセスする 3 つの AMQ コネクションを作成できます。
シンプルなインテグレーションを作成するには、インテグレーションを開始するコネクションとインテグレーションを終了するコネクションを選択します。また任意で、追加のアプリケーションにアクセスするためのコネクションを 1 つ以上選択します。各オペレーションフローに 1 つ以上のコネクションを追加して API プロバイダーインテグレーションを作成できます。任意の数のインテグレーションおよびオペレーションフローが同じコネクションを使用できます。特定のインテグレーションまたはフローは、同じコネクションを複数回使用できます。
詳細は、統合するアプリケーションへのコネクション を参照してください。
アクション
インテグレーションでは、各コネクションは必ず 1 つのアクションを実行します。インテグレーションの作成時に、フローに追加するコネクションを選択し、コネクションが実行するアクションを選択します。たとえば、Salesforce コネクションをフローに追加するときに、Salesforce アカウントの作成、Salesforce アカウントの更新、および Salesforce の検索が含まれ、それに限定されないアクションのセットから選択します。
一部のアクションには追加の設定が必要で、Fuse Online は必要な情報を要求します。
ステップ
シンプルなインテグレーションは、順序付けされたステップのセットです。API プロバイダーインテグレーションでは、各オペレーションフローが順序付けされたステップのセットになります。
各ステップはデータで操作します。ステップによっては、Fuse Online 外部のアプリケーションまたはサービスに接続しながらデータ上で操作するものもあります。これらのステップはコネクションです。コネクションの間に、Fuse Online のデータで操作する他のステップがある場合があります。通常、ステップのセットには、前のコネクションで使用されたデータフィールドをフローの次のコネクションで使用されるデータフィールドにマップするステップが含まれます。シンプルなインテグレーションの最初のコネクション以外では、各ステップは前のステップから受け取るデータで操作します。
Fuse Online は、コネクションの間でデータを操作するため、以下を行うステップを提供します。
- あるアプリケーションのデータフィールドを別のアプリケーションのデータフィールドにマップします。
- データをフィルターし、処理中のデータがユーザー定義の基準と合ったときのみインテグレーションが継続されるようにします。
- レコードのコレクションを個別のレコードに分割して、Fuse Online が各レコードに対して 1 度後続のステップをイテレーティブに実行するようにします。
- 個別のレコードをコレクションに集計し、Fuse Online がコレクションに対して 1 度後続のステップを実行するようにします。
- Freemaker、Mustache、または Velocity テンプレートにデータを挿入して、同等で一貫性のある出力を生成します。
- Fuse Online が自動的に提供するデフォルトのログ以外の情報をログに記録します。
カスタムステップを提供するエクステンションをアップロードすると、Fuse Online に組み込まれない方法でコネクションの間のデータを操作できます。Fuse Online エクステンションの開発 を参照してください。
フロー
フローは、インテグレーションが実行する順序付けされたステップのセットです。
シンプルなインテグレーションには、1 つのプライマリーフローがあります。API プロバイダーインテグレーションの場合は、REST API が定義するオペレーションごとに 1 つのプライマリーフローがあります。各オペレーションのプライマリーフローは、そのオペレーションの呼び出しを処理するステップのセットです。
プライマリーフローには条件付きフローを追加できます。インテグレーションは、指定した条件を評価し、関連付けられたフローを実行するかどうかを決定します。
フローでは、各ステップは前のステップから出力されたデータで操作できます。フローに必要なステップを判断するには、インテグレーションの計画に関する注意点 を参照してください。