9.4. カスタムステップの作成
Fuse Online エクステンションプロジェクトを作成した後、Fuse Online ユーザーによって提供される必要な機能の説明を基にして、カスタムステップを定義するコードを記述します。1 つのエクステンション内では、複数のカスタムステップを定義できます。また、各カスタムステップを Camel ルートまたは Java Bean で定義できます。
9.4.1. カスタムステップのコードの記述
Fuse Online エクステンションプロジェクトを作成した後、Fuse Online ユーザーによって提供される必要な機能の説明を基にして、カスタムステップを定義するコードを記述します。
表9.2「カスタムステップ要素」 は、Fuse Tooling で作成したカスタムステップ要素が Fuse Online 要素にどのように対応するか示しています。
Fuse Tooling 要素 | Fuse Online 要素 | 説明 |
---|---|---|
Action | カスタムステップ | Fuse Online では、ユーザーがステップエクステンションをインポートした後、Choose a step ページにカスタムステップが表示されます。 |
アクションで定義されたプロパティー | カスタムステップ設定パラメーター | Fuse Online では、ユーザーがカスタムステップを選択すると、Fuse Online が設定パラメーターの値を要求します。 |
Fuse Online のカスタムステップを実装するコードを記述するには、以下を実行します。
Camel ルートベースのステップの場合、
extension.xml
ファイルで、エクステンションの目的に対応するルートを作成します。各ルートのエントリーポイントは、ステップ 2 で説明されているように、syndesis-extension-definition.json
ファイルで定義するエントリーポイントと一致する必要があります。Java Bean ベースのステップの場合は、
java
ファイルを編集します。syndesis-extension-definition.json
ファイルで、アクションとそのプロパティーを定義するコードを作成します。各エントリーポイントに新しいアクションが必要です。作成する各アクションは Fuse Online のカスタムステップに対応します。アクションごとに、異なるタイプのコードを使用できます。つまり、あるアクションに Camel ルートを、別のアクションに Java Bean を使用することができます。
各プロパティーは Fuse Online のステップ設定パラメーターに対応します。Fuse Online では、ユーザーがカスタムステップを選択すると、Fuse Online が設定パラメーターの値を要求します。たとえば、カスタムログステップにはログに送信する情報量を示す level パラメーターが含まれる場合があります。
エクステンションをアップロードし、そのカスタムステップをインテグレーションに追加した後に Fuse Online でユーザーが入力するプロパティーを含むエクステンションメタデータが含まれる
.json
ファイルのテンプレートは次のとおりです。{ "actions": [ { "actionType": "extension", "id": "${actionId}", "name": "Action Name", "description": "Action Description", "tags": [ "xml" ], "descriptor": { "kind": "ENDPOINT|BEAN|STEP", "entrypoint": "direct:${actionId}", "inputDataShape": { "kind": "any" }, "outputDataShape": { "kind": "any" }, "propertyDefinitionSteps": [] } } ], "tags": [ "feature", "experimental" ] }
注記このリリースではタグは無視されます。これらは今後使用するために予約されています。
- エクステンションの依存関係を編集するには、エディターで 'pom.xml' ファイルを開きます。依存関係を追加する場合は、そのスコープを定義する必要があります。
カスタムステップのコード作成が終了したら、「Fuse Online エクステンション JAR ファイルのビルド」の説明に従って .jar
ファイルをビルドします。