Cisco Active Network Abstraction 3.6.7 カスタマイゼーション ユーザ ガイド
Workflow Editor のカスタマイズ
Workflow Editor のカスタマイズ
発行日;2012/02/01 | 英語版ドキュメント(2009/11/06 版) | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 3MB) | フィードバック

目次

Workflow Editor のカスタマイズ

符号化

カスタム タスク

カスタム タスク パネル ファクトリ

Workflow Editor のコールバック クラス

展開のためのパッケージ化

カスタム タスク

カスタム タスク パネル ファクトリ

Workflow Editor のコールバック クラス

展開

Workflow Editor のカスタマイズ

この章では、カスタム タスクおよび Workflow Editor のコールバックで Workflow Engine を拡張する方法について説明します。次の事項について説明します。

「符号化」

「展開のためのパッケージ化」

「展開」

符号化

ここでは次の事項について説明します。

「カスタム タスク」

「カスタム タスク パネル ファクトリ」

「Workflow Editor のコールバック クラス」

カスタム タスク

カスタム タスクの作成手順については、Dralasoft 社のマニュアルを参照してください。

次に、単純なタスク クラスの定義を示します。

package samples;
 
import com.dralasoft.workflow.Key;
import com.dralasoft.workflow.SynchronousTask;
 
public class CustomTask1 extends SynchronousTask {
public CustomTask1(Key _key) {
super(_key);
}
 
public void perform() {
System.err.println("Hello from CustomTask1");
}
}

カスタム タスク パネル ファクトリ

TaskPanelFactory 実装クラスは各カスタム タスク クラスに割り当てることができます。これにより、カスタム クラスのカスタム プロパティ シートを作成できます。このファクトリ クラスは、インターフェイス com.dralasoft.gui.common.ext.TaskPanelFactory を実装する必要があります。そのための簡単な方法は、com.dralasoft.gui.common.ext.DefaultPanelFactory を拡張して、そのメソッドのいくつかを上書きすることです。

Workflow Editor のコールバック クラス

Workflow Editor のコールバックを実装するクラスを作成できます。このクラスは、インターフェイス com.sheer.client.workflowstudio.IWorkflowEditorCallbacks を実装します。このインターフェイスには次のメソッドが含まれます。

/**
* Called before the deploy template action
* @param templateName
* @return true if deploy template action should proceed
*/
public boolean preDeployTemplate(String templateName);
 
/**
* Called after the deploy template action
* @param templateName
*/
public void postDeployTemplate(String templateName);
 
/**
* Called before the delete template action
* @param templateName
* @return true if delete template action should proceed
*/
public boolean preDeleteTemplate(String templateName);
 
/**
* Called after the delete template action
* @param templateName
*/
public void postDeleteTemplate(String templateName);
 
/**
* @param templateName
* @return true if this template should be displayed, false if not
*/
public boolean shouldDisplayTemplate(String templateName);

展開のためのパッケージ化

クラスおよびリソースは、サーバ上に展開するために Java Archive(JAR)ファイルにパッケージ化する必要があります。JAR ファイルには、複数のタスクおよびオプションの Workflow Editor コールバック実装を含めることができます。

各 JAR ファイルには、クラス ファイルの他に extension-config.xml という記述子ファイルを含める必要があります。このファイルには、タスク パレットでのタスクの表示方法、タスクのカスタム パネル ファクトリ、およびオプションの Workflow Editor のコールバック実装を定義する XML ブロックが含まれます。

カスタム タスク

JAR ファイルには、カスタム タスクのクラス ファイルの他にタスク アイコンを含める必要があります。

タスク アイコンは、サイズを 16 × 16 ピクセルにして、サブディレクトリ com/dralasoft/gui/common/images/16x16 内の JAR ファイルに配置する必要があります。

カスタム タスク パネル ファクトリ

タスク パネル ファクトリの完全クラス名を custom-task 要素内の task-panel-factory-class という要素に追加する必要があります。この要素が指定されていない場合は、com.dralasoft.gui.common.ext.DefaultPanelFactory をカスタム タスクに使用します。

Workflow Editor のコールバック クラス

editor-callbacks-class 要素を extension-config 要素に追加すると、Workflow Editor のコールバックを実装するクラスが設定されます。この要素は、JAR ファイルのうち 1 つだけの extension-config.xml ファイルに追加する必要があります(この要素が複数の記述子に存在する場合、任意で 1 つの要素の値が使用されます)。

次の例に示すタスク記述子ファイルの内容は、タスク パネル ファクトリと Workflow Editor のコールバック実装の 2 つのタスク タイプを定義します。

<extension-config>
<editor-callbacks-class>
samples.EditorCallbacksImpl
</editor-callbacks-class>
 
<custom-task>
<class-name>samples.CustomTask1</class-name>
<label>Custom Task 1</label>
<icon>task1.png</icon>
<tooltip>Custom Task 1</tooltip>
<menu-display>true</menu-display>
<toolbar-display>true</toolbar-display>
<task-panel-factory-class>
com.sheer.client.workflowstudio.TestTaskPanelFactory
</task-panel-factory-class>
</custom-task>
 
<custom-task>
<class-name>samples.CustomTask2</class-name>
<label>Custom Task 2</label>
<icon>task2.png</icon>
<tooltip>Custom Task 2</tooltip>
<menu-display>true</menu-display>
<toolbar-display>true</toolbar-display>
</custom-task>
</extension-config>

展開

JAR ファイルを展開するには、次の手順に従います。


ステップ 1 Cisco ANA ゲートウェイで、JAR ファイルを /export/home/sheer/dralasoft_extensions ディレクトリにコピーします。


) 必要に応じて、Cisco ANA ゲートウェイを作成します。


ステップ 2 スクリプト /export/home/sheer/Main/scripts/installDralasoftExtensions.pl を実行します。


) JAR ファイルを追加、JAR ファイルを削除、または既存の JAR ファイルを新しいバージョンに置き換えるときは毎回このスクリプトを実行します。


このスクリプトは、JAR ファイルをインストールおよびアンインストールして、インストールされた JAR ファイルのセットが /export/home/sheer/dralasoft_extensions ディレクトリの内容と同じになるようにします。そのため、ファイルの展開後も .jar 拡張子のファイルを保持しておくことを推奨します。


) このスクリプトは Workflow Engine を再起動するため、エンジン内でワークフローが実行されていないことを確認してください。


ステップ 3 スクリプトの実行が完了したら、Workflow Editor をもう一度実行します。展開した JAR ファイルは自動的にダウンロードされ、新しいタスクがタスク ツールバーに表示されます。