my_util
クラス Timer

java.lang.Object
  拡張my_util.Timer
すべての実装インタフェース:
Loggable, java.lang.Runnable

public class Timer
extends java.lang.Object
implements java.lang.Runnable, Loggable

Facility に秒精度のタイマ機能を提供するために、アプリケーションが生成し専用のスレッド上で実行します。

タイマを使用する機能の FacilityAgent は TimerUser インタフェースを実装する必要があります。タイムアウトあるいは タイマが破棄されたことを通知するために、Timer クラスは、 TimerComand の resp_queue_name フィールドで示される Message キュー へ TimerCommand を送信します。その際、 TimerCommand はキューの先頭 に挿入されます。

関連項目:
TimerCommand, TimerUser, Facility, Loggable, Log

コンストラクタの概要
Timer(LogConf log_conf)
          コンストラクタ: Thread 上で実行する Timer インスタンスを生成 します。
 
メソッドの概要
 TimerCommand add(long intervals, boolean periodic, TimerCommand cmd)
          タイマ機能を使用する Facility がタイムアウト設定を登録するために 呼び出します。
 TimerCommand cancel(TimerCommand cmd)
          登録したタイムアウト設定を取り消すために Facility が呼び出し ます。
 boolean change_log(LogConf log_conf)
          ログの出力先・文字エンコーディング・取得レベル・ フィールド区切り文字を変更します。
protected  java.lang.String get_log_delimit()
          ログ・フィールド区切り文字を取得します。
protected  java.lang.String get_log_encoding()
          ログ出力文字エンコーディングを取得します。
protected  int get_log_level()
          ログ・レベルを取得します。
protected  java.lang.String get_log_path()
          ログ出力先パスを取得します。
protected  java.lang.String get_log()
          ログ出力先 Log の文字列表現を取得します。
 void halt()
          タイマ機能の終了指示を設定するために呼び出します。
 void log(int log_class, java.lang.String msg)
          ログ・メッセージを出力します。
 void run()
          Runnable インタフェースにより実装することが必要なメソッド。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

Timer

public Timer(LogConf log_conf)

コンストラクタ: Thread 上で実行する Timer インスタンスを生成 します。

パラメータ:
log_conf - ログ出力先の構成情報。 my_util.LogConf を参照のこと
メソッドの詳細

get_log

protected java.lang.String get_log()
ログ出力先 Log の文字列表現を取得します。

戻り値:
Log の文字列表現

get_log_path

protected java.lang.String get_log_path()
ログ出力先パスを取得します。

戻り値:
ログ出力先パス

get_log_encoding

protected java.lang.String get_log_encoding()
ログ出力文字エンコーディングを取得します。

戻り値:
ログ出力文字エンコーディング

get_log_level

protected int get_log_level()
ログ・レベルを取得します。

戻り値:
ログ・レベル

get_log_delimit

protected java.lang.String get_log_delimit()
ログ・フィールド区切り文字を取得します。

戻り値:
ログ・フィールド区切り文字

halt

public void halt()
タイマ機能の終了指示を設定するために呼び出します。 このメソッドを呼び出した後、このインスタンスを実行していた Thread を join() する必要があります。


add

public TimerCommand add(long intervals,
                        boolean periodic,
                        TimerCommand cmd)
タイマ機能を使用する Facility がタイムアウト設定を登録するために 呼び出します。タイムアウトまでのインターバル時間は 1 秒未満で あってはいけません。また、タイムアウト通知のための TimerCommand は null であってはいけません。

パラメータ:
intervals - タイムアウトまでのインターバル時間を秒精度で 指定します (sec)
periodic - true の場合は周期的にタイムアウトし、 false の場合は一度だけタイムアウトします。
cmd - タイムアウト時に Facility の要求キューに送信される TimerCommand
戻り値:
  • 非 null -- タイムアウト設定の登録が成功した場合 で、cmd を返します。
  • null -- タイムアウト設定が不正な場合

cancel

public TimerCommand cancel(TimerCommand cmd)
登録したタイムアウト設定を取り消すために Facility が呼び出し ます。

パラメータ:
cmd - add() メソッドで登録した TimerCommand
戻り値:
  • 非 null -- タイムアウト設定の取り消しが成功した 場合に cmd を返します。
  • null -- 設定の取り消しに失敗した場合

log

public void log(int log_class,
                java.lang.String msg)
ログ・メッセージを出力します。 出力フォーマットは yyyy/mm/dd HH:MM:SS.sss:ERROR:0:msg です。

定義:
インタフェース Loggable 内の log
パラメータ:
log_class - ログ取得レベル
msg - ログ・メッセージ

change_log

public boolean change_log(LogConf log_conf)
                   throws java.lang.Exception
ログの出力先・文字エンコーディング・取得レベル・ フィールド区切り文字を変更します。

定義:
インタフェース Loggable 内の change_log
パラメータ:
log_conf - ログ出力先の構成情報。 my_util.LogConf を参照のこと。
戻り値:
  • true -- ログの切り替えに成功した場合
  • false -- ログの切り替えに失敗した場合
例外:
java.lang.Exception - ログの切り替えに失敗した場合

run

public void run()
Runnable インタフェースにより実装することが必要なメソッド。 このメソッド内で、Timer はタイムアウトの検出と機能への TimerCommand 通知を行う。

定義:
インタフェース java.lang.Runnable 内の run