概要 | パッケージ | クラス | 使用 | 階層ツリー | 非推奨 API | 索引 | ヘルプ
| Nautica Workflow
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## jp.co.argo21.nautica.workflow.ta
クラス AbstractToolAgent

    java.lang.Object
      jp.co.argo21.nautica.workflow.ta.AbstractToolAgent

すべての実装インタフェース:
  ToolAgent

直系の既知のサブクラス:
  MailToolAgent, ScriptingToolAgent, SystemCommandToolAgent

public abstract class AbstractToolAgent
extends java.lang.Object
implements ToolAgent

ツールエージェントの抽象クラス。 ツールエージェントハンドル（＝実行ID）の取得、 アプリケーション実行テーブルへのレコード追加、 キューへの実行情報の送信、 プロセスの管理 を行う。

導入されたバージョン:
  Nautica Workflow 0.9
バージョン:
  $Revision: 1.2 $

フィールドの概要
`protected org.apache.log4j.Logger` | `log`
`protected java.lang.String` | `passwd` パスワード
`protected int` | `retryCount`
`protected java.lang.String` | `session` セッションID
`static java.lang.String` | `TOOLAGENT_PATH` ツールエージェントパス
`protected MessageTransporter` | `tp`
`protected java.lang.String` | `userId` ユーザID

コンストラクタの概要
`AbstractToolAgent()` ツールエージェントオブジェクトを生成する。

メソッドの概要
`protected abstract void` | `checkApplicationDefined(java.lang.String appName)` アプリケーションが定義されているかどうかチェックする。
`protected java.lang.String` | `connect()` ワークフローエンジンと接続する。
`protected void` | `disconnect(java.lang.String session)` ワークフローエンジンから切断する。
`protected abstract AppExecutionInfo` | `getExecInfo(java.lang.String appName, java.lang.String wid, int handler, Attribute[] attrList)` キューに送信するアプリケーション実行情報を取得する。
`protected abstract java.lang.String` | `getQueueName()` アプリケーション実行情報を送信するキュー名を取得する。
`protected abstract java.lang.String` | `getToolAgentClassName()` アプリケーションを起動するツールエージェントのクラス名を取得する。
`int` | `invokeApplication(java.lang.String appName, java.lang.String wid, Attribute[] attrList)` アプリケーションの起動を行う。
`int` | `requestAppStatus(int toolAgentHandle, java.lang.String wid)` アプリケーションの実行状態を取得する。
`protected void` | `retryApplication(AppExecutionInfo info)` アプリケーションを再実行する。
`protected void` | `setRetryCount(int count)` アプリケーションの試行回数を設定する。

クラス java.lang.Object から継承したメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

インタフェース jp.co.argo21.nautica.workflow.wfmc.ToolAgent から継承したメソッド
`terminateApplication`

フィールドの詳細

### TOOLAGENT_PATH

    public static final java.lang.String TOOLAGENT_PATH

  ツールエージェントパス

### log

    protected org.apache.log4j.Logger log

### tp

    protected MessageTransporter tp

### retryCount

    protected int retryCount

### userId

    protected java.lang.String userId

  ユーザID

### passwd

    protected java.lang.String passwd

  パスワード

### session

    protected java.lang.String session

  セッションID

コンストラクタの詳細

### AbstractToolAgent

    public AbstractToolAgent()

  ツールエージェントオブジェクトを生成する。

メソッドの詳細

### getToolAgentClassName

    protected abstract java.lang.String getToolAgentClassName()

  アプリケーションを起動するツールエージェントのクラス名を取得する。

  戻り値:
    アプリケーションを起動するツールエージェントのクラス名

### getQueueName

    protected abstract java.lang.String getQueueName()

  アプリケーション実行情報を送信するキュー名を取得する。 ツールエージェント毎にキューが必要で、そのキューに名前をつけなくてはならない。 このキュー名はツールエージェント固有の文字列である。 基本的にはツールエージェント名を使用する。 各ツールエージェントで重複しないように注意すること。

  戻り値:
    キュー名

### getExecInfo

    protected abstract AppExecutionInfo getExecInfo(java.lang.String appName,
                                                    java.lang.String wid,
                                                    int handler,
                                                    Attribute[] attrList)

  キューに送信するアプリケーション実行情報を取得する。 アプリケーション実行クラスでは、この情報を基にして、 アプリケーションを実行する。

  パラメータ:
    `appName` - 定義に指定したアプリケーション名
    `wid` - 作業項目ID
    `handler` - ツールエージェントハンドラ
    `attrList` - 属性一覧
  戻り値:
    アプリケーション実行情報

### checkApplicationDefined

    protected abstract void checkApplicationDefined(java.lang.String appName)
                                             throws ApplicationNotDefinedException

  アプリケーションが定義されているかどうかチェックする。 アプリケーションが定義されていない場合、例外が発生する。

  パラメータ:
    `appName` - アプリケーション名
  例外:
    `ApplicationNotDefinedException` - アプリケーションが定義されていない場合

### invokeApplication

    public int invokeApplication(java.lang.String appName,
                                 java.lang.String wid,
                                 Attribute[] attrList)
                          throws ApplicationNotStartedException,
                                 ApplicationNotDefinedException,
                                 ApplicationBusyException

  アプリケーションの起動を行う。 制限事項として、本ワークフローシステム運用基盤では、 引数にモードは含まないものとする。

  定義:
    インタフェース `ToolAgent` 内の `invokeApplication`
  パラメータ:
    `appName` - 定義に指定したアプリケーション名
    `wid` - 作業項目ID
    `attrList` - 属性一覧
  戻り値:
    ツールエージェントハンドラ
  例外:
    `ApplicationNotStartedException` - アプリケーションが開始できなかった場合
    `ApplicationNotDefinedException` - アプリケーションが定義されていない場合
    `ApplicationBusyException` - アプリケーションがビジーで要求を受けられない場合

### retryApplication

    protected void retryApplication(AppExecutionInfo info)
                             throws ApplicationNotStartedException

  アプリケーションを再実行する。 アプリケーション実行情報をキューに登録することにより、 アプリケーションを再実行する。

  パラメータ:
    `info` - アプリケーション実行情報
  例外:
    `ApplicationNotStartedException` - アプリケーションが開始できなかった場合

### setRetryCount

    protected void setRetryCount(int count)

  アプリケーションの試行回数を設定する。

  パラメータ:
    `count` - アプリケーションの試行回数

### requestAppStatus

    public int requestAppStatus(int toolAgentHandle,
                                java.lang.String wid)
                         throws ApplicationBusyException,
                                InvalidToolAgentException,
                                InvalidWorkItemException

  アプリケーションの実行状態を取得する。 実行状態は、以下のものを用意する。
  - 0：正常終了
  - 1：異常終了
  - 2：未開始
  - 3：停止中
  - 6：実行中
  - 9：識別不可
  制限事項として、本ワークフローシステム運用基盤では、 属性については、ツールエージェント、またはアプリケーションから 更新されると想定し、引数には含まないこととする。

  定義:
    インタフェース `ToolAgent` 内の `requestAppStatus`
  パラメータ:
    `toolAgentHandle` - ツールエージェントハンドル
    `wid` - 作業項目ID
  戻り値:
    実行状態
  例外:
    `ApplicationBusyException` - アプリケーションがビジーで要求を受けられない場合
    `InvalidToolAgentException` - 有効でないツールエージェントハンドルを指定した場合
    `InvalidWorkItemException` - 有効でない作業項目IDを指定した場合

### connect

    protected java.lang.String connect()
                                throws ConnectionFailedException

  ワークフローエンジンと接続する。 ワークフローエンジンに接続していなければ、接続する。 既に接続している場合は、一旦切断して、再接続する。

  戻り値:
    セッションID
  例外:
    `ConnectionFailedException` - ワークフローエンジンとの接続に失敗した場合
  関連項目:
    `connect()`

### disconnect

    protected void disconnect(java.lang.String session)

  ワークフローエンジンから切断する。

  パラメータ:
    `session` -
  関連項目:
    `disconnect(java.lang.String)`

概要 | パッケージ | クラス | 使用 | 階層ツリー | 非推奨 API | 索引 | ヘルプ
| 株式会社アルゴ２１
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

Copyright 2005 株式会社アルゴ２１