亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? triggerutils.java

?? Quartz 是個開源的作業調度框架
?? JAVA
?? 第 1 頁 / 共 3 頁
字號:
     * input minute-base of 45 would result in 09:00:00, because the even-hour     * is the next 'base' for 45-minute intervals.     * </p>     *      * <p>     * More examples: <table>     * <tr>     * <th>Input Time</th>     * <th>Minute-Base</th>     * <th>Result Time</th>     * </tr>     * <tr>     * <td>11:16:41</td>     * <td>20</td>     * <td>11:20:00</td>     * </tr>     * <tr>     * <td>11:36:41</td>     * <td>20</td>     * <td>11:40:00</td>     * </tr>     * <tr>     * <td>11:46:41</td>     * <td>20</td>     * <td>12:00:00</td>     * </tr>     * <tr>     * <td>11:26:41</td>     * <td>30</td>     * <td>11:30:00</td>     * </tr>     * <tr>     * <td>11:36:41</td>     * <td>30</td>     * <td>12:00:00</td>     * </tr>     * <td>11:16:41</td>     * <td>17</td>     * <td>11:17:00</td>     * </tr>     * </tr>     * <td>11:17:41</td>     * <td>17</td>     * <td>11:34:00</td>     * </tr>     * </tr>     * <td>11:52:41</td>     * <td>17</td>     * <td>12:00:00</td>     * </tr>     * </tr>     * <td>11:52:41</td>     * <td>5</td>     * <td>11:55:00</td>     * </tr>     * </tr>     * <td>11:57:41</td>     * <td>5</td>     * <td>12:00:00</td>     * </tr>     * </tr>     * <td>11:17:41</td>     * <td>0</td>     * <td>12:00:00</td>     * </tr>     * </tr>     * <td>11:17:41</td>     * <td>1</td>     * <td>11:08:00</td>     * </tr>     * </table>     * </p>     *      * @param date     *          the Date to round, if <code>null</code> the current time will     *          be used     * @param minuteBase     *          the base-minute to set the time on     * @return the new rounded date     *      * @see #getNextGivenSecondDate(Date, int)     */    public static Date getNextGivenMinuteDate(Date date, int minuteBase) {        if (minuteBase < 0 || minuteBase > 59)                throw new IllegalArgumentException(                        "minuteBase must be >=0 and <= 59");        if (date == null) date = new Date();        Calendar c = Calendar.getInstance();        c.setTime(date);        c.setLenient(true);        if (minuteBase == 0) {            c.set(Calendar.HOUR_OF_DAY, c.get(Calendar.HOUR_OF_DAY) + 1);            c.set(Calendar.MINUTE, 0);            c.set(Calendar.SECOND, 0);            c.set(Calendar.MILLISECOND, 0);            return c.getTime();        }        int minute = c.get(Calendar.MINUTE);        int arItr = minute / minuteBase;        int nextMinuteOccurance = minuteBase * (arItr + 1);        if (nextMinuteOccurance < 60) {            c.set(Calendar.MINUTE, nextMinuteOccurance);            c.set(Calendar.SECOND, 0);            c.set(Calendar.MILLISECOND, 0);            return c.getTime();        } else {            c.set(Calendar.HOUR_OF_DAY, c.get(Calendar.HOUR_OF_DAY) + 1);            c.set(Calendar.MINUTE, 0);            c.set(Calendar.SECOND, 0);            c.set(Calendar.MILLISECOND, 0);            return c.getTime();        }    }    /**     * <p>     * Returns a date that is rounded to the next even multiple of the given     * minute.     * </p>     *      * <p>     * The rules for calculating the second are the same as those for     * calculating the minute in the method      * <code>getNextGivenMinuteDate(..)<code>.     * </p>     *     * @param date the Date to round, if <code>null</code> the current time will     * be used     * @param secondBase the base-second to set the time on     * @return the new rounded date     *      * @see #getNextGivenMinuteDate(Date, int)     */    public static Date getNextGivenSecondDate(Date date, int secondBase) {        if (secondBase < 0 || secondBase > 59)                throw new IllegalArgumentException(                        "secondBase must be >=0 and <= 59");        if (date == null) date = new Date();        Calendar c = Calendar.getInstance();        c.setTime(date);        c.setLenient(true);        if (secondBase == 0) {            c.set(Calendar.MINUTE, c.get(Calendar.MINUTE) + 1);            c.set(Calendar.SECOND, 0);            c.set(Calendar.MILLISECOND, 0);            return c.getTime();        }        int second = c.get(Calendar.SECOND);        int arItr = second / secondBase;        int nextSecondOccurance = secondBase * (arItr + 1);        if (nextSecondOccurance < 60) {            c.set(Calendar.SECOND, nextSecondOccurance);            c.set(Calendar.MILLISECOND, 0);            return c.getTime();        } else {            c.set(Calendar.MINUTE, c.get(Calendar.MINUTE) + 1);            c.set(Calendar.SECOND, 0);            c.set(Calendar.MILLISECOND, 0);            return c.getTime();        }    }    /**     * <p>     * Get a <code>Date</code> object that represents the given time, on     * today's date.     * </p>     *      * @param second     *          The value (0-59) to give the seconds field of the date     * @param minute     *          The value (0-59) to give the minutes field of the date     * @param hour     *          The value (0-23) to give the hours field of the date     * @return the new date     */    public static Date getDateOf(int second, int minute, int hour) {        validateSecond(second);        validateMinute(minute);        validateHour(hour);        Date date = new Date();        Calendar c = Calendar.getInstance();        c.setTime(date);        c.setLenient(true);        c.set(Calendar.HOUR_OF_DAY, hour);        c.set(Calendar.MINUTE, minute);        c.set(Calendar.SECOND, second);        c.set(Calendar.MILLISECOND, 0);        return c.getTime();    }    /**     * <p>     * Get a <code>Date</code> object that represents the given time, on the     * given date.     * </p>     *      * @param second     *          The value (0-59) to give the seconds field of the date     * @param minute     *          The value (0-59) to give the minutes field of the date     * @param hour     *          The value (0-23) to give the hours field of the date     * @param dayOfMonth     *          The value (1-31) to give the day of month field of the date     * @param month     *          The value (1-12) to give the month field of the date     * @return the new date     */    public static Date getDateOf(int second, int minute, int hour,            int dayOfMonth, int month) {        validateSecond(second);        validateMinute(minute);        validateHour(hour);        validateDayOfMonth(dayOfMonth);        validateMonth(month);        Date date = new Date();        Calendar c = Calendar.getInstance();        c.setTime(date);        c.set(Calendar.MONTH, month - 1);        c.set(Calendar.DAY_OF_MONTH, dayOfMonth);        c.set(Calendar.HOUR_OF_DAY, hour);        c.set(Calendar.MINUTE, minute);        c.set(Calendar.SECOND, second);        c.set(Calendar.MILLISECOND, 0);        return c.getTime();    }    /**     * <p>     * Get a <code>Date</code> object that represents the given time, on the     * given date.     * </p>     *      * @param second     *          The value (0-59) to give the seconds field of the date     * @param minute     *          The value (0-59) to give the minutes field of the date     * @param hour     *          The value (0-23) to give the hours field of the date     * @param dayOfMonth     *          The value (1-31) to give the day of month field of the date     * @param month     *          The value (1-12) to give the month field of the date     * @param year     *          The value (1970-2099) to give the year field of the date     * @return the new date     */    public static Date getDateOf(int second, int minute, int hour,            int dayOfMonth, int month, int year) {        validateSecond(second);        validateMinute(minute);        validateHour(hour);        validateDayOfMonth(dayOfMonth);        validateMonth(month);        validateYear(year);        Date date = new Date();        Calendar c = Calendar.getInstance();        c.setTime(date);        c.set(Calendar.YEAR, year);        c.set(Calendar.MONTH, month - 1);        c.set(Calendar.DAY_OF_MONTH, dayOfMonth);        c.set(Calendar.HOUR_OF_DAY, hour);        c.set(Calendar.MINUTE, minute);        c.set(Calendar.SECOND, second);        c.set(Calendar.MILLISECOND, 0);        return c.getTime();    }    /**     * Returns a list of Dates that are the next fire times of a      * <code>Trigger</code>.     * The input trigger will be cloned before any work is done, so you need     * not worry about its state being altered by this method.     *      * @param trigg     *          The trigger upon which to do the work     * @param cal     *          The calendar to apply to the trigger's schedule     * @param numTimes     *          The number of next fire times to produce     * @return List of java.util.Date objects     */    public static List computeFireTimes(Trigger trigg, org.quartz.Calendar cal,            int numTimes) {        LinkedList lst = new LinkedList();        Trigger t = (Trigger) trigg.clone();        if (t.getNextFireTime() == null) {            t.computeFirstFireTime(cal);        }        for (int i = 0; i < numTimes; i++) {            Date d = t.getNextFireTime();            if (d != null) {                lst.add(d);                t.triggered(cal);            } else                break;        }        return java.util.Collections.unmodifiableList(lst);    }    /**     * Returns a list of Dates that are the next fire times of a      * <code>Trigger</code>     * that fall within the given date range. The input trigger will be cloned     * before any work is done, so you need not worry about its state being     * altered by this method.     *      * <p>     * NOTE: if this is a trigger that has previously fired within the given     * date range, then firings which have already occured will not be listed     * in the output List.     * </p>     *      * @param trigg     *          The trigger upon which to do the work     * @param cal     *          The calendar to apply to the trigger's schedule     * @param from     *          The starting date at which to find fire times     * @param to     *          The ending date at which to stop finding fire times     * @return List of java.util.Date objects     */    public static List computeFireTimesBetween(Trigger trigg,            org.quartz.Calendar cal, Date from, Date to) {        LinkedList lst = new LinkedList();        Trigger t = (Trigger) trigg.clone();        if (t.getNextFireTime() == null) {            t.setStartTime(from);            t.setEndTime(to);            t.computeFirstFireTime(cal);        }        // TODO: this method could be more efficient by using logic specific        //        to the type of trigger ...        while (true) {            Date d = t.getNextFireTime();            if (d != null) {                if (d.before(from)) {                    t.triggered(cal);                    continue;                }                if (d.after(to)) break;                lst.add(d);                t.triggered(cal);            } else                break;        }        return java.util.Collections.unmodifiableList(lst);    }    /**     * Translate a date & time from a users timezone to the another     * (probably server) timezone to assist in creating a simple trigger with      * the right date & time.     *      * @param date the date to translate     * @param src the original time-zone     * @param dest the destination time-zone     * @return the translated date     */    public static Date translateTime(Date date, TimeZone src, TimeZone dest) {        Date newDate = new Date();        int offset = (                getOffset(date.getTime(), dest) - getOffset(date.getTime(), src)        );        newDate.setTime(date.getTime() - offset);        return newDate;    }        /**     * Gets the offset from UT for the given date in the given timezone,      * taking into account daylight savings.     *      * <p>     * Equivalent of TimeZone.getOffset(date) in JDK 1.4, but Quartz is trying     * to support JDK 1.3.     * </p>     *      * @param date the date (in milliseconds) that is the base for the offset     * @param tz the time-zone to calculate to offset to     * @return the offset     */    public static int getOffset(long date, TimeZone tz) {                if (tz.inDaylightTime(new Date(date))) {            return tz.getRawOffset() + getDSTSavings(tz);        }                return tz.getRawOffset();    }    /**     * <p>     * Equivalent of TimeZone.getDSTSavings() in JDK 1.4, but Quartz is trying     * to support JDK 1.3.     * </p>     *      * @param tz the target time-zone     * @return the amount of saving time in milliseconds     */    public static int getDSTSavings(TimeZone tz) {                if (tz.useDaylightTime()) {            return 3600000;        }        return 0;    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美肥大bbwbbw高潮| 日韩免费高清av| 青娱乐精品视频| 最近中文字幕一区二区三区| 欧美日韩aaaaa| av资源网一区| 国产精品一线二线三线精华| 视频一区欧美精品| 伊人一区二区三区| 亚洲国产精品成人久久综合一区| 欧美精品xxxxbbbb| 色噜噜久久综合| k8久久久一区二区三区 | 色婷婷av一区| 国产一区视频网站| 午夜精品久久久久久不卡8050| 国产精品色婷婷| 久久久久久久久久美女| 91精品国产综合久久精品性色| 91尤物视频在线观看| 成人久久视频在线观看| 精品在线免费视频| 日本在线观看不卡视频| 亚洲午夜电影在线观看| 18欧美乱大交hd1984| 中文字幕av一区二区三区| 久久亚洲综合色| 日韩免费视频一区二区| 91麻豆精品国产91久久久久久| 欧美色手机在线观看| 色哟哟日韩精品| 97se亚洲国产综合自在线 | 欧美综合天天夜夜久久| 不卡大黄网站免费看| 狠狠久久亚洲欧美| 久久精品99国产精品| 日本中文一区二区三区| 麻豆精品一区二区| 日本午夜精品一区二区三区电影| 日韩av一级片| 日日欢夜夜爽一区| 蜜桃久久久久久| 免费精品视频在线| 老司机精品视频一区二区三区| 偷偷要91色婷婷| 日韩av一区二区三区| 蜜桃av一区二区三区| 九九**精品视频免费播放| 久久99精品国产.久久久久久| 久久69国产一区二区蜜臀| 久久精品国产精品青草| 韩国成人精品a∨在线观看| 国内精品免费在线观看| 成人一级黄色片| www.成人在线| 精品视频999| 91精品中文字幕一区二区三区| 欧美一区二区美女| 精品久久国产字幕高潮| 日本一区免费视频| 亚洲欧美电影一区二区| 亚洲成人av电影在线| 蜜桃视频一区二区| 国产成人av电影在线播放| av不卡在线播放| 欧美性大战久久| 日韩欧美的一区| 国产精品久久久久国产精品日日| 亚洲女同一区二区| 视频一区免费在线观看| 国内精品国产三级国产a久久| 成人av资源网站| 在线观看精品一区| 日韩欧美电影在线| 亚洲欧美在线观看| 天天av天天翘天天综合网色鬼国产| 免费观看30秒视频久久| 成人av在线播放网站| 欧美日韩黄视频| 2020国产精品| 亚洲一区二区四区蜜桃| 极品美女销魂一区二区三区| 99精品视频一区二区| 欧美日韩中字一区| 久久精品网站免费观看| 亚洲一区二区av电影| 久久机这里只有精品| 91色|porny| 久久亚洲综合av| 亚洲狠狠丁香婷婷综合久久久| 琪琪久久久久日韩精品| 91影视在线播放| 日韩免费性生活视频播放| 亚洲三级在线免费观看| 日本不卡中文字幕| 99免费精品在线| 久久综合网色—综合色88| 亚洲一级片在线观看| 国产一区91精品张津瑜| 欧美午夜宅男影院| 国产精品久久久久天堂| 久久国产欧美日韩精品| 在线观看中文字幕不卡| 国产精品伦理在线| 精品影视av免费| 56国语精品自产拍在线观看| 亚洲天堂中文字幕| 国产精品自拍av| 在线不卡一区二区| 中文字幕在线一区免费| 国内精品第一页| 日韩一区二区三区av| 一区二区高清免费观看影视大全| 国产精品一区二区久久不卡| 欧美一区二区成人6969| 一区二区三区在线看| 成人av在线影院| www久久久久| 美女看a上一区| 欧美日本国产视频| 亚洲主播在线观看| av亚洲精华国产精华| 国产欧美中文在线| 国产精品乡下勾搭老头1| 日韩精品一区国产麻豆| 日本欧美在线观看| 欧美三级视频在线| 亚洲成国产人片在线观看| 色噜噜久久综合| 亚洲欧美另类久久久精品2019| 成人开心网精品视频| 国产精品沙发午睡系列990531| 国产91丝袜在线18| 国产精品美女视频| 国产91精品精华液一区二区三区 | 五月激情丁香一区二区三区| 欧美伊人精品成人久久综合97| 亚洲天堂福利av| 91色porny在线视频| 亚洲人成在线播放网站岛国| 一本到高清视频免费精品| 亚洲美女屁股眼交| 在线观看国产91| 五月激情综合网| 欧美一级免费大片| 麻豆一区二区三区| 精品国产青草久久久久福利| 精品亚洲成a人| 久久久91精品国产一区二区精品| 国产成人午夜99999| 中文字幕不卡在线| 色婷婷综合久久| 亚洲第四色夜色| 日韩精品一区二区在线| 国产精品888| 国产精品国产自产拍高清av| 91丨porny丨最新| 亚洲va韩国va欧美va精品| 日韩亚洲国产中文字幕欧美| 国产一区二区电影| 日韩毛片高清在线播放| 欧美日韩一卡二卡三卡| 久久精品99久久久| 国产精品久久看| 欧美电影在哪看比较好| 久久99精品国产.久久久久久| 中文字幕中文字幕在线一区| 欧美日韩精品一区二区三区四区 | 国产成a人无v码亚洲福利| ...av二区三区久久精品| 欧美吞精做爰啪啪高潮| 精品一区二区三区免费| 国产精品丝袜一区| 欧美日韩国产123区| 国产在线精品一区二区三区不卡| 国产精品久久福利| 欧美卡1卡2卡| 国产**成人网毛片九色| 一区二区三区四区五区视频在线观看| 91.麻豆视频| 成人午夜视频福利| 午夜免费久久看| 国产精品少妇自拍| 91精品国产免费| 99视频精品在线| 久久精品99国产精品| 亚洲精品乱码久久久久久| 精品国产成人系列| 色94色欧美sute亚洲线路一久 | 91精品91久久久中77777| 久久99久久精品| 亚洲成人手机在线| 欧美国产乱子伦| 制服丝袜亚洲播放| 91网站黄www| 国产福利一区二区三区在线视频| 亚洲成人一区在线| 亚洲日本护士毛茸茸| 久久日一线二线三线suv| 欧美三级电影一区|