独自のSBPIサービス

<< 目次を表示 >>

ページ位置:  プロジェクトの作成と管理 > Proクラウドサーバ > 有料ライセンスで利用できる機能 > 外部ツールとの連携 >

独自のSBPIサービス

独自のSBPIサービスは、Enterprise Architectのスクリプトやアドインが呼び出すことができるユーザー定義のプラグインで、その応答を利用してリポジトリのデータを操作できます。独自のSBPIプラグインは、Enterprise ArchitectからRepository.CallSBPIのメソッドを利用して呼び出せます。

 

サービスに要求できることや、Enterprise Architectに返せることの範囲は限定されません。例えば、作成するSBPIサービスで、サードパーティのサービスから情報を収集する要求に応答し、Enterprise Architectのスクリプトに返すことができます。他にも、OSLCの呼び出しによってモデルデータ自体に対して処理を実行したり、モデルデータに対して独自の処理を実行したりすることも考えられます。

 

 

メリット

 

 

概要

独自のSBPIサービスのプラグインを作成するには、ゼロから始めるか、Proクラウドサーバにインストールされているサンプルを元に変更できます。

 

Proクラウドサーバをインストールする際に、インストールする機能の選択としてSBPIサービスのサンプルをインストールするように選択してください。インストールディレクトリ内の「SBPI Examples\ExampleServicePlugins」にサンプルプログラムがインストールされます。既定のパスの場合は以下の位置になります。

 

C:\Program Files\SparxSystems Japan\Pro Cloud Server\SBPI Examples\ExampleServicePlugins

 

なお、SBPIのサンプルはデフォルトではインストールしない設定になっていることに注意してください。すでにProクラウドサーバを、SBPIのサンプルなしでインストールしている場合は、再インストールを行うか、インストーラの「変更」オプションを使用してSBPIのサンプルだけを追加できます。

(参考:Proクラウドサーバのインストール)

 

プラグインは、C++またはC#で記述できます。

 

サンプルはVisual Studio 2017を使用して書かれていますが、他のIDEを利用できます。

 

独自のSBPIサービスのプラグインは、ISBPIServicePlugin.h(C++の場合) またはISBPIServicePlugin.cs(C#の場合)に含まれるISBPIServicePluginで定義されたインターフェースを実装する必要があります。

 

プログラム作成時の基本的な処理の流れは以下の通りです:

 

 

インターフェース

関数/クラス

説明

プラグインの作成(C#では不要)

プラグインは次のexport関数を実装する必要があります。:

 

  extern "C" SBPI_SERVICE_API SBPI_SERVICE_PLUGIN CreatePlugin();

 

戻り値として、ISBPIServicePluginインターフェースを実装するクラスへのポインタを戻す必要があります。実装の一例は次の通りです。

 

   SBPI_SERVICE_PLUGIN CreatePlugin()

   {

       return new ExampleServicePlugin;

   }

 

新しく作成された ISBPIServicePlugin は、 ISBPIServicePlugin::Release メソッドが呼ばれた場合に解放してください。

ISBPIServicePlugin インターフェース

プラグインのクラスは、 ISBPIServicePlugin インターフェースのすべてのメソッドを実装する必要があります。

 

 

参照: