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

## org.opengion.hayabusa.taglib
クラス ScheduleTag

    java.lang.Object
      javax.servlet.jsp.tagext.TagSupport
          javax.servlet.jsp.tagext.BodyTagSupport
              org.opengion.hayabusa.taglib.CommonTagSupport
                  org.opengion.hayabusa.taglib.ScheduleTag

すべての実装されたインタフェース:
  Serializable, BodyTag, IterationTag, JspTag, Tag, TryCatchFinally

    public class ScheduleTag

extends CommonTagSupport

アプリケーション共有のタイマー機能を用いて、繰り返しスケジュールを設定するタグです。 タイマースケジュールは、帳票デーモンや、再編成処理、定期的バッチ処理など、エンジン上の スレッドで動作するスケジュールを登録します。 スケジュールすべきクラスは、HybsTimerTask を拡張（extends）しておく必要があります。

関連項目:
  直列化された形式
機能階層
  その他部品
形式サンプル:

       ●形式：<og:schedule timerTask="･･･" name="･･･" command="[SET|VIEW|REMOVE|CANCEL]" ･･･ />
       ●body：あり

       ●使用例
            帳票デーモンスケジュール登録
            period は、ｍｓ単位で指定する必要があるため、１０００倍しています。
            <og:schedule
                command     = "{@CMD}"
                scope       = "request"
                timerTask   = "org.opengion.hayabusa.report.ReportDaemon"
                name        = "{@NAME}"
                comment     = "Start-up By {@USER.INFO}"
                singleton   = "true"
                delay       = "0"
                period      = "{@PERIOD}000"
                fixedDelay  = "true"
                keys        = "SYSTEM_ID,DMN_GRP"
                vals        = "{@SYSTEM_ID},{@DMN_GRP}"
            />

            <og:schedule
               command          "コマンド(SET,VIEW,REMOVE,CANCEL)をセットします(初期値:SET)。"
               timerTask        "処理を実行するクラス名(HybsTimerTask のサブクラス)を指定します。(必須)"
               name             "名称（ユニークキー）を設定します。(必須)"
               comment          "タイマータスクの説明を設定します。"
               singleton        "Name属性が同一のタスクを２重登録出来ないよう(true/false)にします(初期値:true[出来ない])。"
               delay            "ミリ秒単位の遅延時間を設定します(初期値:0)。"
               period           "ミリ秒単位の繰り返し間隔を設定します(初期値:60000)。"
               fixedDelay       "固定遅延実行（true)/固定頻度実行(false)を設定します(初期値:true)。"
               keys             "HybsTimerTask に渡す為のキー情報、CSV形式で複数指定します。"
               vals             "HybsTimerTask に渡す為の値を、CSV形式で複数指定します。"
               startTime        "24時間制(YYMMDD)の開始時刻を設定します(初期値:000000)。"
               stopTime         "24時間制(YYMMDD)の終了時刻を設定します(初期値:000000)。"
               tableId          "(通常は使いません)結果をDBTableModelに書き込んで、sessionに登録するときのキーを指定します。"
               scope            "キャッシュする場合のスコープ(local,request,page,session,applicaton)を指定します(初期値:local)。"
            > ... Body ...
            </og:schedule >

バージョン
  4.0
作成者
  Kazuhiko Hasegawa
導入されたバージョン:
  JDK5.0,

フィールドの概要
`static String` | `CMD_CANCEL` command 引数に渡す事の出来る コマンド キャンセル "CANCEL"
`static String` | `CMD_REMOVE` command 引数に渡す事の出来る コマンド リムーブ "REMOVE"
`static String` | `CMD_SET` command 引数に渡す事の出来る コマンド セット "SET"
`static String` | `CMD_VIEW` command 引数に渡す事の出来る コマンド ビュー "VIEW"

クラス javax.servlet.jsp.tagext.BodyTagSupport から継承されたフィールド
`bodyContent`

クラス javax.servlet.jsp.tagext.TagSupport から継承されたフィールド
`id, pageContext`

インタフェース javax.servlet.jsp.tagext.BodyTag から継承されたフィールド
`EVAL_BODY_BUFFERED, EVAL_BODY_TAG`

インタフェース javax.servlet.jsp.tagext.IterationTag から継承されたフィールド
`EVAL_BODY_AGAIN`

インタフェース javax.servlet.jsp.tagext.Tag から継承されたフィールド
`EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE`

コンストラクタの概要
`ScheduleTag()`

メソッドの概要
`protected boolean` | `commandExec(String command)` コマンドを実行します。
`int` | `doAfterBody()` Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。
`int` | `doEndTag()` Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
`int` | `doStartTag()` Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
`protected void` | `release2()` タグリブオブジェクトをリリースします。
`void` | `setCommand(String cmd)` 【TAG】コマンド(SET,VIEW,REMOVE,CANCEL)をセットします(初期値:SET)。
`void` | `setComment(String cmt)` 【TAG】タイマータスクの説明を設定します。
`void` | `setDelay(String val)` 【TAG】ミリ秒単位の遅延時間を設定します(初期値:0)。
`void` | `setFixedDelay(String flag)` 【TAG】固定遅延実行（true)/固定頻度実行(false)を設定します(初期値:true)。
`void` | `setKeys(String key)` 【TAG】HybsTimerTask に渡す為のキー情報、CSV形式で複数指定します。
`void` | `setName(String nm)` 【TAG】名称（ユニークキー）を設定します。
`void` | `setPeriod(String val)` 【TAG】ミリ秒単位の繰り返し間隔を設定します(初期値:60000)。
`void` | `setScope(String scp)` 【TAG】キャッシュする場合のスコープ(local,request,page,session,applicaton)を指定します(初期値:local)。
`void` | `setSingleton(String flag)` 【TAG】Name属性が同一のタスクを２重登録出来ないよう(true/false)にします(初期値:true[出来ない])。
`void` | `setStartTime(String st)` 【TAG】24時間制(YYMMDD)の開始時刻を設定します(初期値:000000)。
`void` | `setStopTime(String st)` 【TAG】24時間制(YYMMDD)の終了時刻を設定します(初期値:000000)。
`void` | `setTableId(String id)` 【TAG】(通常は使いません)結果をDBTableModelに書き込んで、sessionに登録するときのキーを指定します。
`void` | `setTimerTask(String val)` 【TAG】処理を実行するクラス名(HybsTimerTask のサブクラス)を指定します。
`void` | `setUniqKey(String flag)` 【TAG】固定遅延実行（true)/固定頻度実行(false)を設定します(初期値:true)。
`void` | `setVals(String val)` 【TAG】HybsTimerTask に渡す為の値を、CSV形式で複数指定します。
`String` | `toString()` このオブジェクトの文字列表現を返します。

クラス org.opengion.hayabusa.taglib.CommonTagSupport から継承されたメソッド
`add, add, addEventColumnSQL, check, check, commitTableObject, debugPrint, doCatch, doFinally, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getDataCondition, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getLabel, getLabelInterface, getLanguage, getLongLabel, getMsglbl, getObject, getParameterNames, getParameterRows, getRequest, getRequestAttribute, getRequestCacheData, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getResource, getScope, getSessionAttribute, getTagName, getUser, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, setContextAttribute, setCookie, setDebug, setLanguage, setLbl, setMsglbl, setNoTransitionRequest, setObject, setParameterRows, setRequestAttribute, setRequestCacheData, setSessionAttribute, setUserInfo, setUseValue, startQueryTransaction, sys, sysBool, sysInt, useMainTrans, useQuotCheck, useXssCheck`

クラス javax.servlet.jsp.tagext.BodyTagSupport から継承されたメソッド
`doInitBody, getBodyContent, getPreviousOut, release, setBodyContent`

クラス javax.servlet.jsp.tagext.TagSupport から継承されたメソッド
`findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue`

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

インタフェース javax.servlet.jsp.tagext.Tag から継承されたメソッド
`getParent, setPageContext, setParent`

フィールドの詳細

### CMD_SET

    public static final String CMD_SET

  command 引数に渡す事の出来る コマンド セット "SET"

  関連項目:
    定数フィールド値

### CMD_VIEW

    public static final String CMD_VIEW

  command 引数に渡す事の出来る コマンド ビュー "VIEW"

  関連項目:
    定数フィールド値

### CMD_REMOVE

    public static final String CMD_REMOVE

  command 引数に渡す事の出来る コマンド リムーブ "REMOVE"

  関連項目:
    定数フィールド値

### CMD_CANCEL

    public static final String CMD_CANCEL

  command 引数に渡す事の出来る コマンド キャンセル "CANCEL"

  関連項目:
    定数フィールド値

コンストラクタの詳細

### ScheduleTag

    public ScheduleTag()

メソッドの詳細

### doStartTag

    public int doStartTag()

  Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。

  定義:
    インタフェース `Tag` 内の `doStartTag`
  オーバーライド:
    クラス `CommonTagSupport` 内の `doStartTag`
  戻り値:
    int
  変更履歴:

    3.2.2.0 (2003/05/31) HybsTimerTask に対して、設定値を渡せるように変更。

### doAfterBody

    public int doAfterBody()

  Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。

  定義:
    インタフェース `IterationTag` 内の `doAfterBody`
  オーバーライド:
    クラス `CommonTagSupport` 内の `doAfterBody`
  戻り値:
    int
  変更履歴:

    3.2.2.0 (2003/05/31) HybsTimerTask に対して、設定値を渡せるように変更。

### doEndTag

    public int doEndTag()

  Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。

  定義:
    インタフェース `Tag` 内の `doEndTag`
  オーバーライド:
    クラス `CommonTagSupport` 内の `doEndTag`
  戻り値:
    int
  変更履歴:

    3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。
    3.6.0.8 (2004/11/19) DBTableModel をセーブする時に、トランザクションチェックを行います。

### release2

    protected void release2()

  タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。

  オーバーライド:
    クラス `CommonTagSupport` 内の `release2`
  変更履歴:

    3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。
    3.2.2.0 (2003/05/31) HybsTimerTask に対して、設定値を渡せるように変更。
    3.5.2.0 (2003/10/20) 結果を DBTableModel として、scope 属性に登録する。

### commandExec

    protected boolean commandExec(String command)

  コマンドを実行します。 コマンドは,HTMLから（SET/VIEW/REMOVE/CANCEL)指定されますので,setCommand()メソッドで 登録します。 コマンドを登録すると同時に,実行も行ないます。

  パラメータ:
    `command` - コマンド（public static final 宣言されている文字列)
  戻り値:
    正常かどうか（true:正常/false:異常）
  関連項目:
    コマンド定数
  変更履歴:

    3.5.2.0 (2003/10/20) viewAttribute()メソッドを、全てで実行します。
    3.6.0.8 (2004/11/19) 正常に登録できたかどうかを、返します。
    4.0.0.0 (2007/10/18) メッセージリソース統合( setMsg() > setLbl )

### setCommand

    public void setCommand(String cmd)

  【TAG】コマンド(SET,VIEW,REMOVE,CANCEL)をセットします(初期値:SET)。

  パラメータ:
    `cmd` - コマンド（public static final 宣言されている文字列)
  関連項目:
    コマンド定数
  TagLib:

    コマンドは,HTMLから（get/post)指定されますので,CMD_xxx で設定される フィールド定数値のいづれかを、指定できます。 何も設定されない、または、null の場合は、"SET" が初期値にセットされます。

### setTimerTask

    public void setTimerTask(String val)

  【TAG】処理を実行するクラス名(HybsTimerTask のサブクラス)を指定します。

  パラメータ:
    `val` - クラス名
  TagLib:

    処理を実行する HybsTimerTask のクラス名を指定します。

### setName

    public void setName(String nm)

  【TAG】名称（ユニークキー）を設定します。

  パラメータ:
    `nm` - タイマータスクの名称
  TagLib:

    タイマータスクの名称（ユニークキー）を設定します。

### setComment

    public void setComment(String cmt)

  【TAG】タイマータスクの説明を設定します。

  パラメータ:
    `cmt` - タイマータスクの説明
  TagLib:

    タイマータスクの説明を設定します。

### setDelay

    public void setDelay(String val)

  【TAG】ミリ秒単位の遅延時間を設定します(初期値:0)。

  パラメータ:
    `val` - 遅延時間(ms)
  TagLib:

    タスクが実行される前のミリ秒単位の遅延を設定します。（初期値 0）

### setPeriod

    public void setPeriod(String val)

  【TAG】ミリ秒単位の繰り返し間隔を設定します(初期値:60000)。

  パラメータ:
    `val` - 繰り返し間隔(ms)
  TagLib:

    連続するタスク実行のミリ秒単位の時間を設定します。(初期値 60000 mS)

### setFixedDelay

    public void setFixedDelay(String flag)

  【TAG】固定遅延実行（true)/固定頻度実行(false)を設定します(初期値:true)。

  パラメータ:
    `flag` - 固定遅延実行（true)/固定頻度実行(false) （初期値 true）
  TagLib:

    固定遅延実行では、前の実行の実際の実行時間を基準にしてそれぞれの実行がスケジュールされます。 何らかの理由で実行が遅延した場合 そのあとの実行も遅延されます。 最終的に、実行の頻度は通常、指定した期間の対応する頻度よりも若干遅くなります 固定頻度実行では、最初の実行のスケジュールされた実行時間を基準にしてそれぞれの実行が スケジュールされます。何らかの理由で実行が遅延した場合、「遅れを取り戻す」ために 2 つ以上の実行が連続して行われます。最終的に実行の頻度は、指定した期間の対応する頻度と 同じになります

### setUniqKey

    public void setUniqKey(String flag)

  【TAG】固定遅延実行（true)/固定頻度実行(false)を設定します(初期値:true)。

  パラメータ:
    `flag` - 固定遅延実行（true)/固定頻度実行(false) （初期値 true）
  TagLib:

    固定遅延実行では、前の実行の実際の実行時間を基準にしてそれぞれの実行がスケジュールされます。 何らかの理由で実行が遅延した場合 そのあとの実行も遅延されます。 最終的に、実行の頻度は通常、指定した期間の対応する頻度よりも若干遅くなります 固定頻度実行では、最初の実行のスケジュールされた実行時間を基準にしてそれぞれの実行が スケジュールされます。何らかの理由で実行が遅延した場合、「遅れを取り戻す」ために 2 つ以上の実行が連続して行われます。最終的に実行の頻度は、指定した期間の対応する頻度と 同じになります

### setSingleton

    public void setSingleton(String flag)

  【TAG】Name属性が同一のタスクを２重登録出来ないよう(true/false)にします(初期値:true[出来ない])。

  パラメータ:
    `flag` - Name属性が同一のタスクを２重登録出来ないようにする。（初期値 true）
  TagLib:

    同一種類のタスクを複数同時立上げしたくない場合に、利用します。 一般に、タイマータスクそのものが、繰り返し実行されますので、 初期値は、２重登録禁止にしています。

### setKeys

    public void setKeys(String key)

  【TAG】HybsTimerTask に渡す為のキー情報、CSV形式で複数指定します。

  パラメータ:
    `key` - キー情報(CSV形式)
  TagLib:

    HybsTimerTask に渡す為の、キー情報をカンマ区切りで複数指定できます。 vals 属性には、キーに対応する値を、設定してください。 分解方法は、CSV変数を先に分解してから、getRequestParameter で値を取得します。 こうしないとデータ自身にカンマを持っている場合に分解をミスる為です。

  変更履歴:

    3.2.2.0 (2003/05/31) 新規追加
    3.5.6.2 (2004/07/05) CommonTagSupport#getCSVParameter を使用

### setVals

    public void setVals(String val)

  【TAG】HybsTimerTask に渡す為の値を、CSV形式で複数指定します。

  パラメータ:
    `val` - 値(CSV形式)
  TagLib:

    キーに設定した値を、カンマ区切り文字で複数して出来ます。 指定順序は、キーと同じにしておいて下さい。 分解方法は、CSV変数を先に分解してから、getRequestParameter で値を取得します。 こうしないとデータ自身にカンマを持っている場合に分解をミスる為です。

  変更履歴:

    3.2.2.0 (2003/05/31) 新規追加
    3.5.6.2 (2004/07/05) CommonTagSupport#getCSVParameter を使用

### setStartTime

    public void setStartTime(String st)

  【TAG】24時間制(YYMMDD)の開始時刻を設定します(初期値:000000)。

  パラメータ:
    `st` - 開始時刻
  TagLib:

    指定時刻範囲内での実行のみ許可するように開始時刻を設定します。 これは、タイマーで指定した間隔ごとにチェックを入れるので、チェック時間が 長い場合は、正確に開始時刻から始まるというものではありません。 初期値は、"000000" です。

  変更履歴:

    3.2.2.0 (2003/05/31) 新規追加

### setStopTime

    public void setStopTime(String st)

  【TAG】24時間制(YYMMDD)の終了時刻を設定します(初期値:000000)。

  パラメータ:
    `st` - 終了時刻
  TagLib:

    指定時刻範囲内での実行のみ許可するように終了時刻を設定します。 これは、タイマーで指定した間隔ごとにチェックを入れるので、チェック時間が 長い場合は、正確に終了時刻で終了するというものではありません。 （終了時刻を越えてからの新規実行はありません。） 初期値は、"000000" です。

  変更履歴:

    3.2.2.0 (2003/05/31) 新規追加

### setTableId

    public void setTableId(String id)

  【TAG】(通常は使いません)結果をDBTableModelに書き込んで、sessionに登録するときのキーを指定します。

  パラメータ:
    `id` - sessionに登録する時の ID
  TagLib:

    初期値は、HybsSystem.TBL_MDL_KEY です。

  変更履歴:

    3.5.2.0 (2003/10/20) 新規作成

### setScope

    public void setScope(String scp)

  【TAG】キャッシュする場合のスコープ(local,request,page,session,applicaton)を指定します(初期値:local)。

  オーバーライド:
    クラス `CommonTagSupport` 内の `setScope`
  パラメータ:
    `scp` - String スコープ
  TagLib:

    "local","request","page","session","applicaton" が指定できます。 "local" は、過去のバージョンとの互換性を保つ為の特殊な値です。 初期値は、"local" です。

  変更履歴:

    3.5.2.0 (2003/10/20) 新規作成

### toString

    public String toString()

  このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。

  オーバーライド:
    クラス `CommonTagSupport` 内の `toString`
  戻り値:
    このクラスの文字列表現

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

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.