Class: VirtualApp

VirtualApp

仮想アプリケーション

Constructor

src/simulator/simulator-VirtualApp.js, line 2

new VirtualApp(userNameopt, sequenceopt, timesopt, thinkTimeopt)

Parameters:
  • userName String <optional> "dafault"
    ログに出力するユーザ名
  • sequence Array <optional> SQL3個のオン処理
    取引の処理シーケンスを格納した配列
  • times Number <optional> 2 回
    繰返し回数
  • thinkTime Number <optional> 300 ms
    繰返し時の次回処理開始までの平均時間(ミリ秒)

Methods

src/simulator/simulator-VirtualApp.js, line 326

(static) VirtualApp#_finish(system, logIDopt, logMesseageopt, forceTimeopt) → {Object|undefined}

イベント終了時処理(ログ出力と、繰り返し判定)
Parameters:
  • system Object
    VirtualSystem
  • logID String <optional> "N_000"
    ログID(ログメッセージの先頭文字)
  • logMesseage String <optional> ""
    ログメッセージ
  • forceTime Number <optional>
    強制終了時刻を指定する(ミシュレーション停止後のeTat強制出力用)
Returns:
  • Object | undefined
    再スケジュールするときthis、再スケジュールしないときundefined
src/simulator/simulator-VirtualApp.js, line 277

(static) VirtualApp#abend(system, holdedResource, logIDopt, logMesseageopt, isHoldingopt, abendTimeopt) → {Array}

アベンド処理(holdしている可能性のあるリソースを解放し、イベントシーケンスを強制終了する)
Parameters:
  • system Object
    VirtualSystem
  • holdedResource Object
    アベンドさせたVirtualResource
  • logID String <optional> "E_600"
    ログID
  • logMesseage String <optional> ""
    ログメッセージ
  • isHolding Boolean <optional> true
    リソース(holdedResource)をholdしているか否か
  • abendTime Number <optional> sytem.getTime()
    abend時刻
Returns:
  • Array
    再スケジュールするイベント(仮想アプリケーションorリソース)の配列、登録処理完了時はthisを含まない
src/simulator/simulator-VirtualApp.js, line 242

(static) VirtualApp#addHistory(status, time) → {Object}

ログにステータス変更履歴を追記する
Parameters:
  • status String
    ログに追記する状態遷移の理由文字列
  • time Number
    状態遷移時刻(ミリ秒)
Returns:
  • Object
    仮想アプリケーション(this)
src/simulator/simulator-VirtualApp.js, line 157

(static) VirtualApp#getAmount() → {Number}

リソース使用量を返却する
Parameters:
  • resource| 指定なしのとき1.0を返却する Object <optional>
    リソース
Returns:
  • Number
    リソース使用量
src/simulator/simulator-VirtualApp.js, line 145

(static) VirtualApp#getTime() → {Number}

イベント時刻を返却する
Returns:
  • Number
    イベント時刻(UNIX時刻:ミリ秒)
src/simulator/simulator-VirtualApp.js, line 72

(static) VirtualApp#logger(logLv, isLog, time, vApp, resource, text, highText)

シミュレータのログを出力する
Parameters:
  • logLv Number
    ログレベル(isLog <= logLvのときログ出力する)
    (0:なし, 1:エラー時のみ, 2:+ETAT, 3:+push/pop, 4:+HOLD/FREE)
  • isLog boolean
    ログ出力レベル
  • time Number
    日時を表す数値(ミリ秒)
  • vApp Object
    仮想アプリ
  • resource Object
    リソース
  • text String
    ログテキスト
  • highText String
    強調表示テキスト
src/simulator/simulator-VirtualApp.js, line 169

(static) VirtualApp#next(system) → {Array}

次の状態に遷移する、シーケンス終了時TATログを出力する
Parameters:
  • system Object
    VirtualSystem
Returns:
  • Array
    再スケジュールするイベント(仮想アプリケーションorリソース)の配列、登録処理完了時はthisを含まない
src/simulator/simulator-VirtualApp.js, line 224

(static) VirtualApp#setSequenceTime(time, status) → {Object}

Freeに伴い、次の状態に遷移する
Parameters:
  • time Number
    | 変更しない} イベント時刻(UNIX時刻:ミリ秒)
  • status String
    ログに追記する時刻設定理由文字列
Returns:
  • Object
    仮想アプリケーション(this)
src/simulator/simulator-VirtualApp.js, line 128

(static) VirtualApp#start(startTime) → {Object}

取引を開始する
Parameters:
  • startTime Number
    開始時刻(UNIX時刻:ミリ秒)
Returns:
  • Object
    仮想アプリケーション(this)