ts.util.lifetime
クラス Lifetime

java.lang.Object
  上位を拡張 ts.util.lifetime.Lifetime
直系の既知のサブクラス:
ProcessLifetime, RuntimeLifetime, ThreadLifetime

public class Lifetime
extends java.lang.Object

オブジェクトの生存期間を表すクラス。
Lifeインターフェイスをインプリメントした オブジェクトの生存期間を限る。
例えば、このクラスをスレッドに合わせて派生させた ThreadLifetimeクラスは、指定された スレッドの終了に合わせて、登録されたLife オブジェクトに終了を通知する。
登録されたLifeオブジェクトには、登録直後に wasBorn()メソッドを呼び出し、終了の 通知にはwillDie()メソッドを呼び出す。
登録されたLifeオブジェクトのクラスが EventfulLifeクラスの派生クラスであった場合は、 このオブジェクトのEventfulLife.happens()メソッドを 指定されたタイミングで呼び出すための仕組みを提供する。

バージョン:
$Revision: 1.1.1.1 $, $Date: 2010-10-16 00:03:47 $
作成者:
佐藤隆之.

コンストラクタの概要
Lifetime()
          デフォルトコンストラクタ。
 
メソッドの概要
 void add(Life life)
          Lifeオブジェクトを追加する。
protected  void catchException(java.lang.Exception exc, Life life, java.lang.reflect.Method method)
          Lifeオブジェクトのメソッドを実行して例外が 発生した際に、その例外を受け取る。
protected  java.util.List<Life> createLifeList()
          Lifeオブジェクトを格納するリストを作成する。
protected  java.util.Enumeration<Life> enumeration()
          このオブジェクトに格納されているLife オブジェクトを列挙する。
protected  void finalize()
          このオブジェクトがガーベージ・コレクションによって破棄される際に呼び出さ れるメソッドである。
protected  void kill()
          Lifeオブジェクトの生存期間を終了させる。
protected  void setupPeriodicEvent(PeriodicEventfulLife life)
          引数のPeriodicEventfulLife オブジェクトに対して、周期起動のイベントを設定する。
protected  void setupScheduledEvent(ScheduledEventfulLife life)
          引数のScheduledEventfulLife オブジェクトに対して、日時指定のイベントを設定する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

Lifetime

public Lifetime()
デフォルトコンストラクタ。

メソッドの詳細

createLifeList

protected java.util.List<Life> createLifeList()
Lifeオブジェクトを格納するリストを作成する。

戻り値:
Lifeオブジェクトを格納するリスト。

add

public void add(Life life)
Lifeオブジェクトを追加する。
引数のLifeオブジェクトを登録し、 wasBorn()メソッドを呼び出す。

パラメータ:
life - Lifeオブジェクト。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

setupScheduledEvent

protected void setupScheduledEvent(ScheduledEventfulLife life)
引数のScheduledEventfulLife オブジェクトに対して、日時指定のイベントを設定する。

パラメータ:
life - ScheduledEventfulLifeオブジェクト。

setupPeriodicEvent

protected void setupPeriodicEvent(PeriodicEventfulLife life)
引数のPeriodicEventfulLife オブジェクトに対して、周期起動のイベントを設定する。

パラメータ:
life - PeriodicEventfulLifeオブジェクト。

kill

protected void kill()
Lifeオブジェクトの生存期間を終了させる。
登録されているLifeオブジェクトをこの オブジェクトから削除して、willDie() メソッドを呼び出す。


catchException

protected void catchException(java.lang.Exception exc,
                              Life life,
                              java.lang.reflect.Method method)
Lifeオブジェクトのメソッドを実行して例外が 発生した際に、その例外を受け取る。
例外発生時に何らかの処理を実行したい場合は、このメソッドをオーバーライド する。
このクラスでは、何もしない。

パラメータ:
exc - 発生した例外。
life - 例外をスローしたLife オブジェクト。
method - 例外をスローしたLife オブジェクトのメソッド。

enumeration

protected java.util.Enumeration<Life> enumeration()
このオブジェクトに格納されているLife オブジェクトを列挙する。

戻り値:
Lifeオブジェクトの列挙オブジェクト。

finalize

protected void finalize()
                 throws java.lang.Throwable
このオブジェクトがガーベージ・コレクションによって破棄される際に呼び出さ れるメソッドである。
破棄される前に、kill()メソッドを呼び出している。

オーバーライド:
クラス java.lang.Object 内の finalize
例外:
java.lang.Throwable - このメソッド内で例外やエラーが発生した場合。


Copyright (C) SATOH Takayuki All Rights Reserved.