Anypoint Connector 開発

DevKit は、Studio 6 および Mule 3 とのみ互換性があります。Mule 4 Connector を作成するには、 「Mule SDK」ドキュメント​を参照してください。

このドキュメントでは、Anypoint Connector 開発プロジェクトを開始し、コネクタを機能させ、必要な機能で強化するための決定事項と実行手順について簡単に説明します。これをコネクタ開発作業のロードマップとして使用できます。

前提条件

このドキュメントは、​Anypoint Connector DevKit​ に精通し、​「開発環境のセットアップ」​で指定されている適切なバージョンの DevKit、JDK、Anypoint DevKit プラグイン、Maven をインストールしていることを前提としています。

コネクタ開発プロセスの概要

DevKit を使用してコネクタを開発する場合、ユースケースに従って、認証、接続、および対象での操作をコールして外部アプリケーションまたは他のリソースにデータを渡す方法に関する一連の決定が行われます。そして、これらの選択によって何を開発するかが決まります。このドキュメントでは、選択が必要なところで決定を下すのに役立つ情報、および詳細情報にアクセスするリンクが提供されます。

ステップ 1 - API アクセスのセットアップ

  1. コネクタ用のテスト環境を準備します。詳細は対象システムによって大きく異なります。

  2. SaaS​ – 一部の SaaS アプリケーションでは、Sandbox は本番アカウントとは別のアカウントになる場合や、別のエンドポイントで回答する場合があります。

  3. オンプレミス​ – 一部のオンプレミスシステムまたは Web サービスでは、本番データではなくダミーデータを使用する個別のスタンドアロンインストールのみの場合があります。

  4. API ドキュメントなど、対象システムの既存のドキュメントをすべて入手します。

詳細な手順は、​「API アクセスのセットアップ」​を参照してください。

ステップ 2 - Anypoint Connector プロジェクトの作成

  1. 「Java SDK ベースのコネクタの作成」​の手順に従って、開発環境でコネクタ開発プロジェクトを開始します。

  2. 対象システム用に提供されているクライアントライブラリやクラスライブラリなど、対象システムで必要な Java ライブラリを追加します。

完了したら、コネクタ用の最も基本的な機能を備えた Java クラスを含むスキャフォールディングプロジェクトの準備が整います。

ステップ 3 - 認証

API で認証が必要な場合は、API が使用する認証方法を理解し、コネクタがサポートしている認証方法を選択します。ユースケースに基づき、下の表から認証方法を選択します。詳細は、サポートされるすべての方法が紹介されている​「認証」​を参照してください。

Authentication メソッド 注意事項

接続管理

SAML、Kerberos、LDAP、NTLM などの OAuth 以外のプロトコル、またはカスタム接続の作成に使用される最も簡単な認証モード。

OAuth V1

RESTful Web サービスとクラウドアプリケーションでよく使用されます。

OAuth V2

RESTful Web サービスとクラウドアプリケーションでよく使用されます。

ステップ 4 - 属性、操作、およびデータモデルの定義

コネクタ用に記述する Java コードの大部分は、コネクタの操作内で API をコールする方法と、それらの操作と Mule 間でコネクタがデータを渡す方法に関連しています。これは、API に基づいてコネクタ間で最も異なる領域です。

下の表を使用して、API のスタイルに基づいてコネクタをビルドするためのアプローチを選択します。

API の例 注意事項

Java クライアントライブラリ

公式または有名なサードパーティのライブラリが使用可能な場合、これは一般的に実装するのが最も簡単なコネクタスタイルであり、推奨されています。ほとんどのクライアントライブラリは、実際には SOAP または RESTful API のラッパーです。

SOAP API

SOAP Web サービスをビルドおよびコンシュームするための事実上の標準ライブラリであるこのスタイルは、クライアントロジックと XML への Java オブジェクトマッピングを処理します。Anypoint Studio では、指定した WSDL によってコネクタが自動的にビルドされます。

詳細は、​「コネクタの属性と操作」​を参照してください。

ステップ 5 - 単体テストと機能テストのビルド

本番対応コネクタには、一連の単体テストと機能テストが必要です。コネクタは標準の JUnit フレームワークを使用します。実際には、コネクタの操作を実装するときに単体テストをビルドします。大きな成功を収めているコネクタの実装は、テスト駆動開発アプローチを使用しています。

  1. コネクタを使用する Mule フローを 1 つ以上開発します。

  2. テストを実行する ​FunctionalTestCase​ のインスタンスを作成します。DevKit テストの場合、JUnit テストケース内で Mule を実行します。テストケースをビルドするたびに、クラス ​FunctionalTestCase​ (JUnit のサブクラス) を拡張します。テストケースは Mule Runtime インスタンスのライフサイクルを管理し、フローをコールしてテストを実行します。

  3. プログラムで各テストケースの結果を調べ、成功または失敗を判断します。

コネクタを世界中にリリースする前に、すべての操作を対象とした完全なテストスイートを実行し、主要な各コードパスを実行します。Maven が生成したプロジェクトには、開始時に役立つ 1 つのサンプルテストケースが ​src/test/java​ ディレクトリ内に含まれています。

JUnit を使用してコネクタテストケースを実装する方法についての詳細は、​「DevKit Connector テストの開発」​を参照してください。

ステップ 6 - コネクタのドキュメント化

全機能を備えたコネクタにはドキュメントが必要です。DevKit では、コードサンプルを含む完全なリファレンスドキュメントを作成できます。

  • コネクタに操作を追加するたびに、DevKit はソースコードのコメントにサンプル XML コードスニペットを追加する。これらのスニペットは、自動生成されたコネクタドキュメントに含まれます。

  • 自動生成されたドキュメントを確認し、それを拡張して個々の操作の単純なドキュメントよりも多くの情報を提供するかどうかを決定する。

詳細は、​「コネクタリファレンスドキュメント」​を参照してください。

ステップ 7 - コネクタのパッケージ化とリリース

コネクタを幅広い利用者にリリースされる準備が整ったら、次の追加手順を実行してユーザが確実に成功するようにします。

  1. コネクタをリリースする前に、ライセンス契約が締結済みであることを確認します。

  2. コネクタが内部使用のみを目的としている場合は、Eclipse 更新サイトとして共有できます。

  3. コネクタをコミュニティで共有するには、​Anypoint Exchange を参照してください。

詳細は、​「リリースするコネクタのパッケージ化」​を参照してください。

関連情報