この章では、ブラックアウト・ウィンドウの作成方法と削除方法について説明します。次のトピックについて説明します。
ブラックアウト・ウィンドウは、ジョブの実行が許可されない期間です。ブラックアウト・ウィンドウは、事前に決められた期間(予定されたメンテナンスのためにデータベースがダウンする場合など)、システムまたは依存サブシステムが使用できなくなる場合に使用します。
ブラックアウト・ウィンドウを作成または追加するには、次に示すoracle.ias.scheduler.Scheduler.addBlackoutWindow()
メソッドを使用します。
public void addBlackoutWindow(java.lang.String windowName, Schedule schedule, long duration) throws DuplicateWindowException, InvalidWindowException, java.rmi.RemoteException
このメソッドでは、表4-1で説明するパラメータを指定します。
表4-1 addBlackoutWindowのパラメータ
パラメータ | 説明 |
---|---|
|
ブラックアウト・ウィンドウの名前。 |
|
ブラックアウト・ウィンドウの開始時間。スケジュールは繰返しスケジュールの場合があります。 |
|
ブラックアウト・ウィンドウの期間(分)。 |
addBlackoutWindow()
メソッドの詳細は、『Oracle Containers for J2EE Job Scheduler API Reference』を参照してください。
例4-1は、「Not in prime time」という名前のブラックアウト・ウィンドウの作成方法を示しています。このウィンドウは午前8時から午前0時まで有効になります。
// set up the schedule, daily starting at 8 a.m. Schedule schedule = new Schedule(); Calendar blackoutWindowStartTime = Calendar.getInstance(); blackoutWindowStartTime.set(Calendar.HOUR_OF_DAY,8); blackoutWindowStartTime.set(Calendar.MINUTE,0); blackoutWindowStartTime.set(Calendar.SECOND,0); // create blackout window scheduler.addBlackoutWindow("Not in prime time", schedule, 960);
ブラックアウト・ウィンドウが有効な時間にジョブが発生する場合、実行は抑止されます。ジョブが再試行期間を有効にして発行されている場合は、ジョブは指定された時間に再試行されます。
図4-1では、ジョブは午前0時に実行されるようにスケジュールされています。この時間は午後11時に始まり、午前2時に終了するブラックアウト・ウィンドウ内に入っています。このジョブの再試行期間が有効な場合、ブラックアウト・ウィンドウが終了する午前2時にジョブは再試行されます。再試行期間が有効になっていない場合、ジョブの実行は抑止され、再試行されません。
ブラックアウト・ウィンドウは、すべてのジョブ・スケジューラ操作の中で最も高い優先順位が設定されています。ジョブの優先順位の詳細は、付録Bを参照してください。