クラス ScheduleExpression
- java.lang.ObjectSE
-
- jakarta.ejb.ScheduleExpression
- 実装されたすべてのインターフェース:
SerializableSE
public class ScheduleExpression extends ObjectSE implements SerializableSE
Enterprise Bean タイマーのカレンダーベースのタイムアウト式。
カレンダーベースのタイムアウトスケジュールの定義に使用される各属性には、2 つのオーバーロードされた setter メソッドがあります。1 つは文字列を受け取り、もう 1 つは整数を受け取ります。int バージョンは、値が単純な整数値である一般的な場合に属性を設定するための便利なメソッドにすぎません。
以下に例を示します。
scheduleExpression.second(10)
意味的にはscheduleExpression.second("10")
以下にリストするスケジュール仕様を構成する 7 つの属性があります。さらに、timezone
属性を使用して、スケジュール仕様が評価されるコンテキストのデフォルト以外のタイムゾーンを指定することもできます。カレンダーベースのスケジュール自体を指定する属性は次のとおりです。
- 秒: 1 分以内に 1 秒以上
許容値: [0,59]
- 分: 1 時間以内に 1 分以上
許容値: [0,59]
- 時間: 1 日のうち 1 時間以上
許容値: [0,23]
- dayOfMonth : 月内の 1 日以上
許容値:
- [1,31]
- [-7, -1]
- " 最終 "
- {"1st", "2nd", "3rd", "4th", "5th", "Last"} {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"}
「最終」は月の最終日を意味します
-x(x は [-7、-1] の範囲内)は、月の最終日の x 日前を意味します
曜日に "1st"、"2nd" などを適用すると、その月のその日の 1 回の出現を識別します。
- 月: 1 年以内の 1 か月以上
許容値:
- [1,12]
- {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", Dec"}
- 曜日: 1 週間に 1 日以上
許容値:
- [0,7]
- {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"}
"0" と "7" はどちらも日曜日を指します
- 年: 特定の暦年
許容値: 4 桁の暦年
各属性は、次のいずれかの形式で表された値をサポートします
- 単一値。これにより、属性が可能な値の 1 つだけに制約されます。
Example: second = "10" Example: month = "Sep"
- ワイルドカード。"*" は、特定の属性に許可されるすべての値を表します。
Example: second = "*" Example: dayOfWeek = "*"
- リスト。これにより、属性が 2 つ以上の許容値または範囲に制限され、文字列内の区切り文字としてコンマが使用されます。リスト内の各項目は、単一の値または範囲である必要があります。リストアイテムは、リスト、ワイルドカード、増分にすることはできません。重複する値は無視されます。
Example: second = "10,20,30" Example: dayOfWeek = "Mon,Wed,Fri" Example: minute = "0-10,30,40"
- 範囲。これにより、属性が値の包括的な範囲に制限され、範囲の両端がダッシュで区切られます。範囲の両側は単一の属性値である必要があります。範囲のメンバーは、リスト、ワイルドカード、範囲、増分にすることはできません。
x
が"x-y"
の範囲でy
よりも大きい場合、範囲は"x-max, min-y"
と同等です。ここで、max
は対応する属性の最大値であり、min
は最小値です。両方の範囲値が同じである範囲"x-x"
は、単一の値x
に評価されます。曜日の範囲"0-7"
は、"*"
と同等です。Example: second = "1-10" Example: dayOfWeek = "Fri-Mon" Example: dayOfMonth = "27-3" (Equivalent to "27-Last , 1-3")
- インクリメント。スラッシュは、開始点と間隔に基づいて属性を制約し、それぞれ分、時間、日の範囲内の
N
秒、分、または時間ごとに指定するために使用されます。式x/y
の場合、属性は、時刻x
から始まる許容値のセット内のすべてのy
番目の値に制約されます。x
値は包括的です。ワイルドカード文字(*
)はx
の位置で使用でき、0
と同等です。インクリメントの使用は、second
、minute
、hour
属性内でのみサポートされています。second
およびminute
属性の場合、x
およびy
はそれぞれ[0,59]
の範囲内にある必要があります。hour
属性の場合、x
とy
はそれぞれ[0,23]
の範囲内にある必要があります。Example: minute = "∗/5" (Every five minutes within the hour)
これは:minute = "0,5,10,15,20,25,30,35,40,45,50,55"
Example: second = "30/10" (Every 10 seconds within the minute, starting at second 30)
これは:second = "30,40,50"
その属性の最大値を超えると、一致する増分値のセットが停止することに注意してください。境界を越えて「ロールオーバー」することはありません。
Example : ( minute = "∗/14", hour="1,2")
これは:
(minute = "0,14,28,42,56", hour = "1,2")
(午前 1 時と午前 2 時の間、1 時間以内に 14 分ごと。)
次の追加ルールがスケジュール仕様属性に適用されます。
dayOfMonth
属性に非ワイルドカード値があり、dayOfWeek
属性に非ワイルドカード値がある場合、dayOfMonth
値またはdayOfWeek
値のいずれかに一致する日が適用されると見なされます。- 文字列定数と数値を除いて、空白は無視されます。
- すべての文字列定数(
"Sun"
、"Jan"
、"1st"
など)では大文字と小文字は区別されません。
スケジュールベースのタイマー時間は、アプリケーションが実行されているコンテナーに関連付けられているデフォルトのタイムゾーンのコンテキストで評価されます。スケジュールベースのタイマーは、オプションでこのデフォルトを上書きし、特定のタイムゾーンに関連付けることができます。スケジュールベースのタイマーが特定のタイムゾーンに関連付けられている場合、コンテナーが実行されているデフォルトのタイムゾーンに関係なく、そのすべての時間はそのタイムゾーンのコンテキストで評価されます。
ScheduleExpression メソッドを呼び出す必要はありません。デフォルトは次のとおりです。
- 秒: "0"
- 分: "0"
- 時間: "0"
- dayOfMonth: "*"
- 月: "*"
- 曜日: "*"
- 年: "*"
- タイムゾーン: デフォルトの JVM タイムゾーン
- 開始: タイマー作成時
- 終了: 終了日なし
アプリケーションは、カレンダーベースのタイムアウトスケジュールの属性を返す getter メソッドに依存して、
ScheduleExpression
メソッドに渡された、またはSchedule
アノテーションに提供されたのと同じ構文形式で返す必要があります。また、移植可能な実装では、特定の構文形式。実装は、セマンティックの同等性を維持するためにのみ必要です。- 導入:
- EJB 3.1
- 関連事項:
- 直列化された形式
コンストラクターのサマリー
コンストラクター コンストラクター 説明 ScheduleExpression()
デフォルト値でスケジュールを作成します。
メソッドのサマリー
メソッドの詳細
second
public ScheduleExpression second(StringSE s)
2 番目の属性を設定します。- パラメーター:
s
-String
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
second
public ScheduleExpression second(int s)
2 番目の属性を設定します。- パラメーター:
s
- 値が単純な整数値の場合、int
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
getSecond
public StringSE getSecond()
2 番目の属性の値を返します。- 戻り値:
- 秒
minute
public ScheduleExpression minute(StringSE m)
分属性を設定します。- パラメーター:
m
-String
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
minute
public ScheduleExpression minute(int m)
分属性を設定します。- パラメーター:
m
- 値が単純な整数値の場合、int
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
getMinute
public StringSE getMinute()
分属性の値を返します。- 戻り値:
- 分
hour
public ScheduleExpression hour(StringSE h)
時間属性を設定します。- パラメーター:
h
-String
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
hour
public ScheduleExpression hour(int h)
時間属性を設定します。- パラメーター:
h
- 値が単純な整数値の場合、int
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
getHour
public StringSE getHour()
時間属性の値を返します。- 戻り値:
- 時間
dayOfMonth
public ScheduleExpression dayOfMonth(StringSE d)
日属性を設定します。- パラメーター:
d
-String
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
dayOfMonth
public ScheduleExpression dayOfMonth(int d)
日属性を設定します。- パラメーター:
d
- 値が単純な整数値の場合、int
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
getDayOfMonth
public StringSE getDayOfMonth()
日属性の値を返します。- 戻り値:
- 月の日
month
public ScheduleExpression month(StringSE m)
月属性を設定します。- パラメーター:
m
-String
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
month
public ScheduleExpression month(int m)
月属性を設定します。- パラメーター:
m
- 値が単純な整数値の場合、int
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
getMonth
public StringSE getMonth()
月属性の値を返します。- 戻り値:
- 月
dayOfWeek
public ScheduleExpression dayOfWeek(StringSE d)
曜日属性を設定します。- パラメーター:
d
-String
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
dayOfWeek
public ScheduleExpression dayOfWeek(int d)
曜日属性を設定します。- パラメーター:
d
- 値が単純な整数値の場合、int
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
getDayOfWeek
public StringSE getDayOfWeek()
曜日属性の値を返します。- 戻り値:
- 曜日
year
public ScheduleExpression year(StringSE y)
年属性を設定します。- パラメーター:
y
-String
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
year
public ScheduleExpression year(int y)
年属性を設定します。- パラメーター:
y
- 値が単純な整数値の場合、int
としての属性値- 戻り値:
ScheduleExpression
オブジェクト。
getYear
public StringSE getYear()
年属性の値を返します。- 戻り値:
- 年
timezone
public ScheduleExpression timezone(StringSE timezoneID)
タイムゾーンを設定します。- パラメーター:
timezoneID
- ID 文字列として指定されたタイムゾーン- 戻り値:
ScheduleExpression
オブジェクト。
getTimezone
public StringSE getTimezone()
設定されている場合は、タイムゾーンを返します。それ以外の場合は null。- 戻り値:
- タイムゾーン
start
public ScheduleExpression start(DateSE s)
開始日を設定します。- パラメーター:
s
- 開始日- 戻り値:
ScheduleExpression
オブジェクト。
getStart
public DateSE getStart()
設定されている場合は、開始日を返します。それ以外の場合は null。- 戻り値:
- 開始日
end
public ScheduleExpression end(DateSE e)
終了日を設定します。- パラメーター:
e
- 終了日- 戻り値:
ScheduleExpression
オブジェクト。
getEnd
public DateSE getEnd()
設定されている場合は、終了日を返します。それ以外の場合は null。- 戻り値:
- 終了日