From c870d879e97d3c8edd872ffc186a6cc836caec59 Mon Sep 17 00:00:00 2001
From: wang--ge
- * Each attribute used to define a calendar-based timeout schedule - * has two overloaded setter methods, one that takes a String and - * one that takes an int. - * The int version is merely a convenience method for setting the - * attribute in the common case that the value is a simple integer value.
- * - *For example,
scheduleExpression.second(10)is semantically equivalent to - *
scheduleExpression.second("10")
- *
- *
- *
- * There are seven attributes that constitute a schedule specification which are
- * listed below. In addition, the timezone attribute may be used
- * to specify a non-default time zone in whose context the schedule
- * specification is to be evaluated.
- * - * The attributes that specify the calendar-based schedule itself are as - * follows: - *
- *
Allowable values: [0,59] - *
- *
Allowable values : [0,59] - *
- *
Allowable values : [0,23] - *
- *
Allowable values: - *
"Last" means the last day of the month - *
-x (where x is in the range [-7, -1]) means x day(s) before the last day of the month - *
"1st","2nd", etc. applied to a day of the week identifies a single occurrence of that day within the month. - *
- *
Allowable values : - *
- *
- *
Allowable values : - *
- *
"0" and "7" both refer to Sunday - *
- *
Allowable values : a four-digit calendar year - * - *
- *
- * - * Each attribute supports values expressed in one of the following forms - *
- *
- * Example: second = "10" - * Example: month = "Sep"- *
- *
- * Example: second = "*" - * Example: dayOfWeek = "*"- * - *
- * Example: second = "10,20,30" - * Example: dayOfWeek = "Mon,Wed,Fri" - * Example: minute = "0-10,30,40"- * - *
x is larger than
- * y in a range "x-y", the range is equivalent
- * to "x-max, min-y", where max is the largest
- * value of the corresponding attribute and min is the smallest.
- * The range "x-x", where both range values are the same,
- * evaluates to the single value x. The day of the week range
- * "0-7" is equivalent to "*".
- * - *
- * Example: second = "1-10" - * Example: dayOfWeek = "Fri-Mon" - * Example: dayOfMonth = "27-3" (Equivalent to "27-Last , 1-3")- * - *
N
- * seconds, minutes, or hours within the minute, hour, or day, respectively.
- * For the expression x/y, the attribute is constrained to
- * every yth value within the set of allowable values beginning
- * at time x. The x value is inclusive. The
- * wild card character (*) can be used in the x
- * position, and is equivalent to 0. The use of increments
- * is only supported within the second, minute,
- * and hour attributes. For the second and
- * minute attributes, x and y must
- * each be in the range [0,59]. For the hour
- * attribute, x and y must each be in the range
- * [0,23].
- * - *
- * Example: minute = "∗/5" (Every five minutes within the hour)- * This is equivalent to: - *
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)- * This is equivalent to:
second = "30,40,50"
- * Note that the set of matching increment values stops once the maximum - * value for that attribute is exceeded. It does not "roll over" past the - * boundary. - *
- *
- * Example : ( minute = "∗/14", hour="1,2")- *
This is equivalent to: (minute = "0,14,28,42,56", hour = "1,2")
- * (Every 14 minutes within the hour, for the hours of 1 and 2 a.m.)
- *
- * The following additional rules apply to the schedule specification attributes: - *
dayOfMonth attribute has a non-wildcard value and
- * the dayOfWeek attribute has a non-wildcard value, then any
- * day matching either the dayOfMonth value or the
- * dayOfWeek value will be considered to apply.
- * "Sun", "Jan",
- * "1st", etc.) are case insensitive.
- * - * Schedule-based timer times are evaluated in the context of the default - * time zone associated with the container in which the application is - * executing. A schedule-based timer may optionally override this default - * and associate itself with a specific time zone. If the schedule-based - * timer is associated with a specific time zone, all its times are - * evaluated in the context of that time zone, regardless of the default - * time zone in which the container is executing. - *
- * None of the ScheduleExpression methods are required to be called. - * The defaults are : - * - *
- * Applications must not rely on the getter methods that return
- * the attributes of a calendar-based timeout schedule to return
- * them in the same syntactic format in which they were passed in to a
- * ScheduleExpression method or supplied to the
- * Schedule annotation, and portable implementations must
- * not assume any particular syntactic format. Implementations are
- * required only to preserve semantic equivalence.
- *
- * @since EJB 3.1
- */
public class ScheduleExpression implements Serializable {
--
2.33.0