今回はVS CodeからAPI実装をしてみます。
VS CodeからAPIを実装する
プロジェクトの作成
プロジェクトの開始には、ANYPOINT CODE BUILDERからImplement An APIを選択します。
プロジェクト情報を入力します。ExchangeからAPI仕様を取り込む場合は、「Search an API Specification from Exchange to implement it」からExchange上からAPI仕様を検索します。
プロジェクト作成後は画面のように、フローとXMLが並んで表示されます。
Anypoint Studioと違う所は、Mule Paletteがありませんが、コンポーネントの間に+アイコンが設置されているので、入れたいところに+アイコンを押して追加するような形となります。
ローカルでの実行やデプロイもできます。デバック実行も可能で、ブレークポイントで止まることもできます。
MUnitはどうなってる?
次にMUnitの動作について確認してみます。まず、テストクラスの作成にはエクスプローラーから右クリックした状態で「New MUnit Test Suite File…」から作成が可能です。
ファイル名を入力すると、このようなテストクラス作成/実行のナビゲーションのものが表示されます。
テストケースを追加するには、左上の「Add」アイコンから「Test Scope」で作成できます。
Anypoint Studioとは画面配置が違いますが、構造は同じです。ただ、Anypoint Studioでは自動でExecutionにFlow Referenceが配置されますが、その機能はないみたいですね。
テストフローのコンポーネント配置は同様に+アイコンから追加して組み立てていく感じです。
テストの実行は左上から実施します。カバレージのあり/なしが選択できるので、選択してテスト実行になります。
カバレージ付きでテストした場合は、コードの通過状況が可視化できるのでどこが足りていないか一目で見ることができます。
CloudHubへのデプロイ
CloudHubへのデプロイはコマンドパレットの「MuleSoft: Deploy Project to CloudHub」から実施できます。
デプロイ時にCloudHubのバージョンやリージョンを選択します。バージョンやリージョンがよく分からない場合は、Runtime ManagerからDeployment Targetに情報が載っているので、そちらと同じものを選択すればOKです。
Anypoint Studioとの違い
実際に使ってみて、Anypoint Studioとの操作感の違いをざっくり挙げてみます。
- ドラッグアンドドロップでなく、クリックベースでの実装
- フローは縦向きで表示
- VS Code管理用のファイルがある(デプロイ情報が記載されたJSONなど)
- 1画面ファイル単位ではなくフロー単位
挙動で気になる点
- フローのリロードがやや不安定
- 「Downloading Mule runtime 4.9.5…」がずっと表示されている
Anypoint Studioにはなかった機能、逆にあったけどVS Codeのプラグインには搭載されていない機能などはいくつかありましたが、操作感としてはそこまで違和感ななく、使いこなせていけば問題なく使えると感じました。むしろ、EclipseベースのAnypoint Studioは動作の重さはやっぱり否めないので、近い将来開発のベースはVS Codeになっていくのかもしれません。
コメント