Java 类javax.ejb.ScheduleExpression 实例源码

项目:oscm    文件:TimerServiceBean.java   
void createTimerWithPeriod(TimerService timerService, TimerType timerType,
        long timerOffset, Period period) {
    if (isTimerCreated(timerType, timerService)) {
        return;
    }
    TimerConfig config = new TimerConfig();
    config.setInfo(timerType);
    Date startDate = getDateForNextTimerExpiration(period, timerOffset);
    ScheduleExpression schedleExpression = getExpressionForPeriod(period,
            startDate);
    Timer timer = timerService.createCalendarTimer(schedleExpression,
            config);
    Date nextStart = timer.getNextTimeout();
    SimpleDateFormat sdf = new SimpleDateFormat();
    logger.logInfo(Log4jLogger.SYSTEM_LOG,
            LogMessageIdentifier.INFO_TIMER_CREATED,
            String.valueOf(timerType), sdf.format(nextStart));
}
项目:oscm    文件:TimerServiceBean.java   
ScheduleExpression getExpressionForPeriod(Period period, Date startDate) {
    Calendar cal = Calendar.getInstance();
    cal.setTime(startDate);
    ScheduleExpression schedleExpression = new ScheduleExpression();
    schedleExpression.start(startDate);
    if (period == Period.DAY) {
        schedleExpression.second(cal.get(Calendar.SECOND));
        schedleExpression.minute(cal.get(Calendar.MINUTE));
        schedleExpression.hour(cal.get(Calendar.HOUR_OF_DAY));
    } else if (period == Period.MONTH) {
        schedleExpression.second(cal.get(Calendar.SECOND));
        schedleExpression.minute(cal.get(Calendar.MINUTE));
        schedleExpression.hour(cal.get(Calendar.HOUR_OF_DAY));
        schedleExpression.dayOfMonth(cal.get(Calendar.DAY_OF_MONTH));
    }
    return schedleExpression;
}
项目:oscm    文件:TimerServiceBean2Test.java   
@Test
public void initTimers_interval() throws Exception {
    // given
    TimerServiceStub timeServiceStub = mock(TimerServiceStub.class);
    when(ctx.getTimerService()).thenReturn(timeServiceStub);
    TimerConfig timerConfig = new TimerConfig();
    timerConfig.setInfo(TimerType.BILLING_INVOCATION);
    doReturn(new TimerStub(null, timerConfig)).when(timeServiceStub)
            .createCalendarTimer(any(ScheduleExpression.class),
                    any(TimerConfig.class));

    // when
    tm.initTimers();

    // then
    verify(timeServiceStub, times(4)).createTimer(any(Date.class),
            eq(10000L), any(TimerType.class));
}
项目:oscm    文件:TimerServiceBean2Test.java   
@Test
public void getExpressionForPeriod_dayPeriod_midnight() {
    // given
    Calendar cal = Calendar.getInstance();
    cal.add(Calendar.DAY_OF_YEAR, 1);
    cal.set(Calendar.HOUR_OF_DAY, 0);
    cal.set(Calendar.MINUTE, 0);
    cal.set(Calendar.SECOND, 0);
    cal.set(Calendar.MILLISECOND, 0);
    Date startDate = cal.getTime();
    // when
    ScheduleExpression result = tm.getExpressionForPeriod(Period.DAY,
            startDate);
    // then
    assertEquals(startDate.getTime(), result.getStart().getTime());
    assertEquals("0", result.getSecond());
    assertEquals("0", result.getMinute());
    assertEquals("0", result.getHour());
}
项目:oscm    文件:TimerServiceBean2Test.java   
@SuppressWarnings({ "deprecation" })
@Test
public void getExpressionForPeriod_monthPeriod() {
    // given
    Date startDate = new Date(System.currentTimeMillis() + 10000);
    // when
    ScheduleExpression result = tm.getExpressionForPeriod(Period.MONTH,
            startDate);
    // then
    assertEquals(startDate.getTime(), result.getStart().getTime());
    assertEquals(String.valueOf(startDate.getSeconds()), result.getSecond());
    assertEquals(String.valueOf(startDate.getMinutes()), result.getMinute());
    assertEquals(String.valueOf(startDate.getHours()), result.getHour());
    assertEquals(String.valueOf(startDate.getDate()),
            result.getDayOfMonth());
}
项目:oscm    文件:TimerServiceBean2Test.java   
@SuppressWarnings({ "deprecation" })
@Test
public void getExpressionForPeriod_monthPeriod_midnightOfFirstDay() {
    // given
    Calendar cal = Calendar.getInstance();
    cal.set(Calendar.DAY_OF_MONTH, 0);
    cal.set(Calendar.HOUR_OF_DAY, 0);
    cal.set(Calendar.MINUTE, 0);
    cal.set(Calendar.SECOND, 0);
    cal.set(Calendar.MILLISECOND, 0);
    Date startDate = cal.getTime();
    // when
    ScheduleExpression result = tm.getExpressionForPeriod(Period.MONTH,
            startDate);
    // then
    assertEquals(startDate.getTime(), result.getStart().getTime());
    assertEquals("0", result.getSecond());
    assertEquals("0", result.getMinute());
    assertEquals("0", result.getHour());
    assertEquals(String.valueOf(startDate.getDate()),
            result.getDayOfMonth());
}
项目:iws    文件:MailSynchronizer.java   
/**
 * <p>Starts the The Timer Scheduler to handle Mail Synchronization.</p>
 */
@PostConstruct
public void startup() {
    LOG.info("Starting IWS Mail Synchronize Bean.");

    // Registering the Timer Service. This will ensure that the Scheduler
    // is invoked at frequent intervals.
    final TimerConfig timerConfig = new TimerConfig();
    timerConfig.setInfo("IWS Mail Synchronize");
    timerConfig.setPersistent(false);
    final ScheduleExpression expression = new ScheduleExpression();
    final String[] time = settings.getMailSynchronizeTime().split(":", 2);
    expression.hour(time[0]).minute(time[1]);
    timerService.createCalendarTimer(expression, timerConfig);
    LOG.info("First synchronize run scheduled to begin at {}", expression);
}
项目:bookery    文件:BatchJobService.java   
public BatchJobConfiguration fireUpTimer(BatchJobConfiguration jobConfig) {
    if (jobConfig.isActive()) {
        logger.debug("Configured batch job " + jobConfig.getType().getDisplayName());
        TimerConfig timerConf = new TimerConfig(jobConfig, false);
        String[] splittedCronJob = jobConfig.getCronJobExpression().split(" ");
        ScheduleExpression schedExp = new ScheduleExpression();
        schedExp.second(splittedCronJob[0]);
        schedExp.minute(splittedCronJob[1]);
        schedExp.hour(splittedCronJob[2]);
        schedExp.dayOfMonth(splittedCronJob[3]);
        schedExp.month(splittedCronJob[4]);
        schedExp.year(splittedCronJob[5]);
        schedExp.dayOfWeek(splittedCronJob[6]);
        Timer timer = timerService.createCalendarTimer(schedExp, timerConf);
        jobConfig.setNextTimeout(timer.getNextTimeout());
        jobConfig = batchJobConfigurationDAO.update(jobConfig);
    }
    return jobConfig;
}
项目:development    文件:TimerServiceBean.java   
void createTimerWithPeriod(TimerService timerService, TimerType timerType,
        long timerOffset, Period period) {
    if (isTimerCreated(timerType, timerService)) {
        return;
    }
    TimerConfig config = new TimerConfig();
    config.setInfo(timerType);
    Date startDate = getDateForNextTimerExpiration(period, timerOffset);
    ScheduleExpression schedleExpression = getExpressionForPeriod(period,
            startDate);
    Timer timer = timerService.createCalendarTimer(schedleExpression,
            config);
    Date nextStart = timer.getNextTimeout();
    SimpleDateFormat sdf = new SimpleDateFormat();
    logger.logInfo(Log4jLogger.SYSTEM_LOG,
            LogMessageIdentifier.INFO_TIMER_CREATED,
            String.valueOf(timerType), sdf.format(nextStart));
}
项目:development    文件:TimerServiceBean.java   
ScheduleExpression getExpressionForPeriod(Period period, Date startDate) {
    Calendar cal = Calendar.getInstance();
    cal.setTime(startDate);
    ScheduleExpression schedleExpression = new ScheduleExpression();
    schedleExpression.start(startDate);
    if (period == Period.DAY) {
        schedleExpression.second(cal.get(Calendar.SECOND));
        schedleExpression.minute(cal.get(Calendar.MINUTE));
        schedleExpression.hour(cal.get(Calendar.HOUR_OF_DAY));
    } else if (period == Period.MONTH) {
        schedleExpression.second(cal.get(Calendar.SECOND));
        schedleExpression.minute(cal.get(Calendar.MINUTE));
        schedleExpression.hour(cal.get(Calendar.HOUR_OF_DAY));
        schedleExpression.dayOfMonth(cal.get(Calendar.DAY_OF_MONTH));
    }
    return schedleExpression;
}
项目:development    文件:TimerServiceBean2Test.java   
@Test
public void initTimers_interval() throws Exception {
    // given
    TimerServiceStub timeServiceStub = mock(TimerServiceStub.class);
    when(ctx.getTimerService()).thenReturn(timeServiceStub);
    TimerConfig timerConfig = new TimerConfig();
    timerConfig.setInfo(TimerType.BILLING_INVOCATION);
    doReturn(new TimerStub(null, timerConfig)).when(timeServiceStub)
            .createCalendarTimer(any(ScheduleExpression.class),
                    any(TimerConfig.class));

    // when
    tm.initTimers();

    // then
    verify(timeServiceStub, times(4)).createTimer(any(Date.class),
            eq(10000L), any(TimerType.class));
}
项目:development    文件:TimerServiceBean2Test.java   
@Test
public void getExpressionForPeriod_dayPeriod_midnight() {
    // given
    Calendar cal = Calendar.getInstance();
    cal.add(Calendar.DAY_OF_YEAR, 1);
    cal.set(Calendar.HOUR_OF_DAY, 0);
    cal.set(Calendar.MINUTE, 0);
    cal.set(Calendar.SECOND, 0);
    cal.set(Calendar.MILLISECOND, 0);
    Date startDate = cal.getTime();
    // when
    ScheduleExpression result = tm.getExpressionForPeriod(Period.DAY,
            startDate);
    // then
    assertEquals(startDate.getTime(), result.getStart().getTime());
    assertEquals("0", result.getSecond());
    assertEquals("0", result.getMinute());
    assertEquals("0", result.getHour());
}
项目:development    文件:TimerServiceBean2Test.java   
@SuppressWarnings({ "deprecation" })
@Test
public void getExpressionForPeriod_monthPeriod() {
    // given
    Date startDate = new Date(System.currentTimeMillis() + 10000);
    // when
    ScheduleExpression result = tm.getExpressionForPeriod(Period.MONTH,
            startDate);
    // then
    assertEquals(startDate.getTime(), result.getStart().getTime());
    assertEquals(String.valueOf(startDate.getSeconds()), result.getSecond());
    assertEquals(String.valueOf(startDate.getMinutes()), result.getMinute());
    assertEquals(String.valueOf(startDate.getHours()), result.getHour());
    assertEquals(String.valueOf(startDate.getDate()),
            result.getDayOfMonth());
}
项目:development    文件:TimerServiceBean2Test.java   
@SuppressWarnings({ "deprecation" })
@Test
public void getExpressionForPeriod_monthPeriod_midnightOfFirstDay() {
    // given
    Calendar cal = Calendar.getInstance();
    cal.set(Calendar.DAY_OF_MONTH, 0);
    cal.set(Calendar.HOUR_OF_DAY, 0);
    cal.set(Calendar.MINUTE, 0);
    cal.set(Calendar.SECOND, 0);
    cal.set(Calendar.MILLISECOND, 0);
    Date startDate = cal.getTime();
    // when
    ScheduleExpression result = tm.getExpressionForPeriod(Period.MONTH,
            startDate);
    // then
    assertEquals(startDate.getTime(), result.getStart().getTime());
    assertEquals("0", result.getSecond());
    assertEquals("0", result.getMinute());
    assertEquals("0", result.getHour());
    assertEquals(String.valueOf(startDate.getDate()),
            result.getDayOfMonth());
}
项目:darceo    文件:MsConfiguration.java   
/**
 * Reads the schedule definition from the given configuration subset. Handles the hour, minute, day of week, day of
 * month, and month values.
 * 
 * @param config
 *            configuration subset
 * @return configured schedule object to be used with a timer
 */
private ScheduleExpression readSchedule(Configuration config) {
    ScheduleExpression expression = new ScheduleExpression();
    if (config.containsKey(SCHEDULE_HOUR)) {
        expression.hour(config.getString(SCHEDULE_HOUR));
    }
    if (config.containsKey(SCHEDULE_MINUTE)) {
        expression.minute(config.getString(SCHEDULE_MINUTE));
    }
    if (config.containsKey(SCHEDULE_DAY_OF_WEEK)) {
        expression.dayOfWeek(config.getString(SCHEDULE_DAY_OF_WEEK));
    }
    if (config.containsKey(SCHEDULE_DAY_OF_MONTH)) {
        expression.dayOfMonth(config.getString(SCHEDULE_DAY_OF_MONTH));
    }
    if (config.containsKey(SCHEDULE_MONTH)) {
        expression.month(config.getString(SCHEDULE_MONTH));
    }
    return expression;
}
项目:darceo    文件:ZuConfiguration.java   
/**
 * Reads the schedule definition from the given configuration subset. Handles the hour, minute, day of week, day of
 * month, and month values.
 * 
 * @param config
 *            configuration subset
 * @return configured schedule object to be used with a timer
 */
private ScheduleExpression readSchedule(Configuration config) {
    ScheduleExpression expression = new ScheduleExpression();
    if (config.containsKey(SCHEDULE_HOUR)) {
        expression.hour(config.getString(SCHEDULE_HOUR));
    }
    if (config.containsKey(SCHEDULE_MINUTE)) {
        expression.minute(config.getString(SCHEDULE_MINUTE));
    }
    if (config.containsKey(SCHEDULE_DAY_OF_WEEK)) {
        expression.dayOfWeek(config.getString(SCHEDULE_DAY_OF_WEEK));
    }
    if (config.containsKey(SCHEDULE_DAY_OF_MONTH)) {
        expression.dayOfMonth(config.getString(SCHEDULE_DAY_OF_MONTH));
    }
    if (config.containsKey(SCHEDULE_MONTH)) {
        expression.month(config.getString(SCHEDULE_MONTH));
    }
    return expression;
}
项目:darceo    文件:MdzConfiguration.java   
/**
 * Reads the schedule definition from the given configuration subset. Handles the hour, minute, day of week, day of
 * month, and month values.
 * 
 * @param config
 *            configuration subset
 * @return configured schedule object to be used with a timer
 */
private ScheduleExpression readSchedule(Configuration config) {
    ScheduleExpression expression = new ScheduleExpression();
    if (config.containsKey(SCHEDULE_HOUR)) {
        expression.hour(config.getString(SCHEDULE_HOUR));
    }
    if (config.containsKey(SCHEDULE_MINUTE)) {
        expression.minute(config.getString(SCHEDULE_MINUTE));
    }
    if (config.containsKey(SCHEDULE_DAY_OF_WEEK)) {
        expression.dayOfWeek(config.getString(SCHEDULE_DAY_OF_WEEK));
    }
    if (config.containsKey(SCHEDULE_DAY_OF_MONTH)) {
        expression.dayOfMonth(config.getString(SCHEDULE_DAY_OF_MONTH));
    }
    if (config.containsKey(SCHEDULE_MONTH)) {
        expression.month(config.getString(SCHEDULE_MONTH));
    }
    return expression;
}
项目:actionbazaar    文件:BidderAccountController.java   
/**
 * Processes the first step which is entry of the login information.
 * @return step2
 */
public String processFirstStep() {
    if(!email.equals(confirmEmail)) {
        String emailMustMatch = bundle.getString(ResourceBundleKeys.step1_emailMustMatch.getKey());
        FacesContext.getCurrentInstance().addMessage(emailConfirmComp.getClientId(),
                new FacesMessage(FacesMessage.SEVERITY_ERROR,emailMustMatch,emailMustMatch));
        // TODO check the database to see if we already have a user with the same name



        return null;

    }
    ScheduleExpression se = new ScheduleExpression();
    se.month(2).dayOfMonth(14).year(2012).hour(11).minute(30);

                flyerBean.scheduleFlyer(se,new Email());
    step1 = true;
    return NAVIGATION_STEP_2;
}
项目:actionbazaar    文件:BidderAccountController.java   
/**
 * Processes the first step which is entry of the login information.
 * @return step2
 */
public String processFirstStep() {
    if(!email.equals(confirmEmail)) {
        String emailMustMatch = bundle.getString(ResourceBundleKeys.step1_emailMustMatch.getKey());
        FacesContext.getCurrentInstance().addMessage(emailConfirmComp.getClientId(),
                new FacesMessage(FacesMessage.SEVERITY_ERROR,emailMustMatch,emailMustMatch));
        // TODO check the database to see if we already have a user with the same name



        return null;

    }
    ScheduleExpression se = new ScheduleExpression();
    se.month(2).dayOfMonth(14).year(2012).hour(11).minute(30);

                flyerBean.scheduleFlyer(se,new Email());
    step1 = true;
    return NAVIGATION_STEP_2;
}
项目:sinkit-core    文件:IoCWithCustomProtostreamGenerator.java   
@PostConstruct
private void initialize() {
    log.info("IoCWithCustomProtostreamGenerator initialize...");

    new File(GENERATED_PROTOFILES_DIRECTORY).mkdirs();

    if (SINKIT_ALL_IOC_PROTOSTREAM_GENERATOR_D_H_M_S != null) {
        timerService.createCalendarTimer(new ScheduleExpression()
                        .dayOfWeek(SINKIT_ALL_IOC_PROTOSTREAM_GENERATOR_D_H_M_S[0])
                        .hour(SINKIT_ALL_IOC_PROTOSTREAM_GENERATOR_D_H_M_S[1])
                        .minute(SINKIT_ALL_IOC_PROTOSTREAM_GENERATOR_D_H_M_S[2])
                        .second(SINKIT_ALL_IOC_PROTOSTREAM_GENERATOR_D_H_M_S[3])
                , new TimerConfig(ALL_IOC_TAG, false));
        log.info("IoCWithCustomProtostreamGenerator: All IoC Protostream Generator");
    }
    if (SINKIT_ALL_CUSTOM_PROTOSTREAM_GENERATOR_D_H_M_S != null) {
        timerService.createCalendarTimer(new ScheduleExpression()
                        .dayOfWeek(SINKIT_ALL_CUSTOM_PROTOSTREAM_GENERATOR_D_H_M_S[0])
                        .hour(SINKIT_ALL_CUSTOM_PROTOSTREAM_GENERATOR_D_H_M_S[1])
                        .minute(SINKIT_ALL_CUSTOM_PROTOSTREAM_GENERATOR_D_H_M_S[2])
                        .second(SINKIT_ALL_CUSTOM_PROTOSTREAM_GENERATOR_D_H_M_S[3])
                , new TimerConfig(ALL_CUSTOM_TAG, false));
        log.info("IoCWithCustomProtostreamGenerator: All Custom Protostream Generator");
    }
}
项目:sinkit-core    文件:CustomlistProtostreamGenerator.java   
@PostConstruct
private void initialize() {

    new File(GENERATED_PROTOFILES_DIRECTORY).mkdirs();

    if (SINKIT_CUSTOMLIST_PROTOSTREAM_GENERATOR_D_H_M_S != null) {
        timerService.createCalendarTimer(new ScheduleExpression()
                        .dayOfWeek(SINKIT_CUSTOMLIST_PROTOSTREAM_GENERATOR_D_H_M_S[0])
                        .hour(SINKIT_CUSTOMLIST_PROTOSTREAM_GENERATOR_D_H_M_S[1])
                        .minute(SINKIT_CUSTOMLIST_PROTOSTREAM_GENERATOR_D_H_M_S[2])
                        .second(SINKIT_CUSTOMLIST_PROTOSTREAM_GENERATOR_D_H_M_S[3])
                , new TimerConfig("CustomlistProtostreamGenerator", false));
    } else {
        log.info("CustomlistProtostreamGenerator timer not activated.");
    }
}
项目:cron-utils    文件:CronTest.java   
@Test
public void testAsScheduleExpression(){
    final CronDefinition cronDefinition = TestCronDefinitionsFactory.quartzNoDoWAndDoMRestrictionBothSameTime();
    final CronParser cronParser = new CronParser(cronDefinition);
    final Cron cron = cronParser.parse("0 * * 1 * MON *");
    ScheduleExpression expression = cron.asScheduleExpression();

    assertNotNull(expression);
    assertEquals(cron.retrieve(CronFieldName.SECOND).getExpression().asString(), expression.getSecond());
    assertEquals(cron.retrieve(CronFieldName.MINUTE).getExpression().asString(), expression.getMinute());
    assertEquals(cron.retrieve(CronFieldName.HOUR).getExpression().asString(), expression.getHour());
    assertEquals(cron.retrieve(CronFieldName.DAY_OF_MONTH).getExpression().asString(), expression.getDayOfMonth());
    assertEquals(cron.retrieve(CronFieldName.MONTH).getExpression().asString(), expression.getMonth());
    assertEquals(cron.retrieve(CronFieldName.DAY_OF_WEEK).getExpression().asString(), expression.getDayOfWeek());
    assertEquals(cron.retrieve(CronFieldName.YEAR).getExpression().asString(), expression.getYear());
}
项目:tomee    文件:EjbTimerServiceImpl.java   
@Override
public Timer createTimer(final Object primaryKey, final Method timeoutMethod, final ScheduleExpression scheduleExpression, final TimerConfig timerConfig) {
    if (scheduleExpression == null) {
        throw new IllegalArgumentException("scheduleExpression is null");
    }
    //TODO add more schedule expression validation logic ?
    checkState();
    try {
        final TimerData timerData = timerStore.createCalendarTimer(this,
            (String) deployment.getDeploymentID(),
            primaryKey,
            timeoutMethod,
            scheduleExpression,
            timerConfig,
            false);
        initializeNewTimer(timerData);
        return timerData.getTimer();
    } catch (final TimerStoreException e) {
        throw new EJBException(e);
    }
}
项目:tomee    文件:EJBCronTriggerTest.java   
@Test(timeout = 1000)
public void testIncrementsA() throws ParseException {
    final ScheduleExpression expr = new ScheduleExpression().year(2008).month(1).dayOfMonth(20)
        .hour("6/3").minute(30).start(new Date(0));
    final EJBCronTrigger trigger = new EJBCronTrigger(expr);

    // Should fire on Sunday, January 20th, first at 6:30
    Calendar calendar = new GregorianCalendar(2008, 0, 20);
    Date startTime = new Date(calendar.getTimeInMillis() - 1000);
    calendar.set(Calendar.HOUR_OF_DAY, 6);
    calendar.set(Calendar.MINUTE, 30);
    assertEquals(calendar.getTime(), trigger.getFireTimeAfter(startTime));

    // Next on 9:30
    startTime = new Date(calendar.getTimeInMillis());
    calendar.set(Calendar.HOUR_OF_DAY, 9);
    assertEquals(calendar.getTime(), trigger.getFireTimeAfter(startTime));

    // Won't be fired after the 20th so it should return null
    calendar = new GregorianCalendar(2008, 0, 21);
    startTime = new Date(calendar.getTimeInMillis());
    assertNull(trigger.getFireTimeAfter(startTime));
}
项目:Mastering-Java-EE-Development-with-WildFly    文件:SchedulerTestCase.java   
@Test
public void testManualConfiguration() {
    Timer timer = schedulerBean.setTimer("10", new Date());
    ScheduleExpression scheduleExpression = timer.getSchedule();
    scheduleExpression.hour(10);
    scheduleExpression.start(new Date());
    assertEquals("The timer will start today at the 10", "10", scheduleExpression.getHour());
    assertEquals("The timer will start each Wednesday too", "Wed", scheduleExpression.getDayOfWeek());
}
项目:oscm    文件:TimerServiceStub.java   
@Override
public Timer createCalendarTimer(ScheduleExpression arg0)
        throws IllegalArgumentException, IllegalStateException,
        EJBException {

    return null;
}
项目:oscm    文件:TimerServiceStub.java   
@Override
public Timer createCalendarTimer(ScheduleExpression arg0, TimerConfig arg1)
        throws IllegalArgumentException, IllegalStateException,
        EJBException {
    TimerStub timer = new TimerStub(arg0, arg1);
    timers.add(timer);
    return timer;
}
项目:oscm    文件:TimerStub.java   
public TimerStub(ScheduleExpression scheduleExpression, TimerConfig config) {
    this.scheduleExpression = scheduleExpression;
    Calendar cal = Calendar.getInstance();
    cal.add(Calendar.DAY_OF_YEAR, 1);
    this.execDate = cal.getTime();
    this.info = config.getInfo();
}
项目:oscm    文件:TimerServiceBean2Test.java   
@SuppressWarnings({ "deprecation" })
@Test
public void getExpressionForPeriod_dayPeriod() {
    // given
    Date startDate = new Date(System.currentTimeMillis() + 10000);
    // when
    ScheduleExpression result = tm.getExpressionForPeriod(Period.DAY,
            startDate);
    // then
    assertEquals(startDate.getTime(), result.getStart().getTime());
    assertEquals(String.valueOf(startDate.getSeconds()), result.getSecond());
    assertEquals(String.valueOf(startDate.getMinutes()), result.getMinute());
    assertEquals(String.valueOf(startDate.getHours()), result.getHour());
}
项目:iws    文件:StateBean.java   
/**
 * To ensure that the system State is always consistent, we have two things
 * that must be accomplished. First thing is to load the former state and
 * ensure that the system is working using this as base.<br />
 *   Second part is to have a timer service (cron job), which will once per
 * day run and perform certain cleanup actions.<br />
 *   This method is run once the Bean is initialized and will perform two
 * things, first it will initialize the Timer Service, so it can run at
 * frequent Intervals, secondly, it will initialize the Sessions.<br />
 *   Heavier maintenance operations like cleaning up accounts is left for
 * the Timed Service to handle, since it may otherwise put the server under
 * unnecessary pressure during the initial Startup Phase.
 */
@PostConstruct
public void startup() {
    LOG.info("Starting IWS Initialization.");

    // First, we need to initialize our dependencies
    activeSessions = ActiveSessions.getInstance(settings);
    accessDao = new AccessJpaDao(entityManager, settings);
    exchangeDao = new ExchangeJpaDao(entityManager, settings);
    service = new AccountService(settings, accessDao, notifications);

    // Second, we're registering the Timer Service. This will ensure that the
    // Bean is invoked daily at 2 in the morning.
    final TimerConfig timerConfig = new TimerConfig();
    timerConfig.setInfo("IWS State Cleaner");
    timerConfig.setPersistent(false);
    final ScheduleExpression expression = new ScheduleExpression();
    final String[] time = settings.getRunCleanTime().split(":", 2);
    expression.hour(time[0]).minute(time[1]);
    timerService.createCalendarTimer(expression, timerConfig);
    LOG.info("First cleanup run scheduled to begin at {}", expression);

    if (settings.resetSessionsAtStartup()) {
        // Now, remove all deprecated Sessions from the Server. These Sessions
        // may or may not work correctly, since IW4 with JSF is combining the
        // Sessions with a Windows Id, and upon restart - the Windows Id is
        // renewed. Even if it isn't renewed, JSF will not recognize it
        final int deprecated = accessDao.deprecateAllActiveSessions();
        LOG.info("Deprecated {} Stale Sessions.", deprecated);
    } else {
        loadActiveTokens();
    }

    // That's it - we're done :-)
    LOG.info("IWS Initialization Completed.");
}
项目:ee-scheduler    文件:ProgrammaticPersistentScheduler.java   
private ScheduleExpression createScheduleExpression() {
    // Get schedule parameters from the configuration service
    ScheduleParameters scheduleParameters = configurationService.readScheduleParameters();

    // build and return the ScheduleExpression as required by the TimerService
    ScheduleExpression schedule = new ScheduleExpression()
            .second(scheduleParameters.getSecond())
            .minute(scheduleParameters.getMinute())
            .hour(scheduleParameters.getHour());
    return schedule;
}
项目:cws    文件:StartupBean.java   
@PostConstruct
public void startup() {
    log.info("Check if Database is up-to-date.");
    if (checkDatabase()) {

        log.info("Initialize the Settings.");
        initializeSettings();

        log.info("Initializing the CWS Sanitizer Service.");

        // If requested, then simply start the sanitize as a background job
        // now. The job will process small blocks of code and save these.
        if (settings.getSanityStartup()) {
            runSanitizing();
        }

        // Registering the Timer Service. This will ensure that the Scheduler
        // is invoked at frequent intervals.
        final TimerConfig timerConfig = new TimerConfig();
        timerConfig.setInfo("CWS Sanitizer");

        // Once started, the next run should always occur as planned, regardless
        // of restarts, as it is not guaranteed that the sanitizing is performed
        // at startup.
        timerConfig.setPersistent(true);

        // Starting the Timer Service every hour.
        final ScheduleExpression expression = new ScheduleExpression();
        expression.hour("*");
        timerService.createCalendarTimer(expression, timerConfig);
    }
}
项目:development    文件:TimerServiceStub.java   
@Override
public Timer createCalendarTimer(ScheduleExpression arg0)
        throws IllegalArgumentException, IllegalStateException,
        EJBException {

    return null;
}
项目:development    文件:TimerServiceStub.java   
@Override
public Timer createCalendarTimer(ScheduleExpression arg0, TimerConfig arg1)
        throws IllegalArgumentException, IllegalStateException,
        EJBException {
    TimerStub timer = new TimerStub(arg0, arg1);
    timers.add(timer);
    return timer;
}
项目:development    文件:TimerStub.java   
public TimerStub(ScheduleExpression scheduleExpression, TimerConfig config) {
    this.scheduleExpression = scheduleExpression;
    Calendar cal = Calendar.getInstance();
    cal.add(Calendar.DAY_OF_YEAR, 1);
    this.execDate = cal.getTime();
    this.info = config.getInfo();
}
项目:development    文件:TimerServiceBean2Test.java   
@SuppressWarnings({ "deprecation" })
@Test
public void getExpressionForPeriod_dayPeriod() {
    // given
    Date startDate = new Date(System.currentTimeMillis() + 10000);
    // when
    ScheduleExpression result = tm.getExpressionForPeriod(Period.DAY,
            startDate);
    // then
    assertEquals(startDate.getTime(), result.getStart().getTime());
    assertEquals(String.valueOf(startDate.getSeconds()), result.getSecond());
    assertEquals(String.valueOf(startDate.getMinutes()), result.getMinute());
    assertEquals(String.valueOf(startDate.getHours()), result.getHour());
}
项目:darceo    文件:MdzConfigurationBrowserBean.java   
/**
 * Converts the given schedule expression to a cron-like string.
 * 
 * @param exp
 *            expression to convert
 * @return cron-like string representing the given expression
 */
private String toString(ScheduleExpression exp) {
    if (exp == null) {
        return "";
    }

    StringBuilder builder = new StringBuilder();
    builder.append(exp.getMinute()).append(' ');
    builder.append(exp.getHour()).append(' ');
    builder.append(exp.getDayOfMonth()).append(' ');
    builder.append(exp.getMonth()).append(' ');
    builder.append(exp.getDayOfWeek());

    return builder.toString();
}
项目:gangehi    文件:ReminderService.java   
@PostConstruct
public void setTimer() {

    // TODO: move the configuration to the properties table
    ScheduleExpression schedule = new ScheduleExpression();
    schedule.second("4");
    schedule.minute("*");
    schedule.hour("*");
    // schedule.hour("8, 13, 16");
    schedule.dayOfWeek("Mon-Fri");
    TimerConfig timerConfig = new TimerConfig();
    timerConfig.setPersistent(false);
    timerService.createCalendarTimer(schedule, timerConfig);
}
项目:sinkit-core    文件:IocProtostreamGenerator.java   
@PostConstruct
private void initialize() {
    if (SINKIT_IOC_PROTOSTREAM_GENERATOR_D_H_M_S != null) {
        timerService.createCalendarTimer(new ScheduleExpression()
                        .dayOfWeek(SINKIT_IOC_PROTOSTREAM_GENERATOR_D_H_M_S[0])
                        .hour(SINKIT_IOC_PROTOSTREAM_GENERATOR_D_H_M_S[1])
                        .minute(SINKIT_IOC_PROTOSTREAM_GENERATOR_D_H_M_S[2])
                        .second(SINKIT_IOC_PROTOSTREAM_GENERATOR_D_H_M_S[3])
                , new TimerConfig("IOCListProtostreamGenerator", false));
    } else {
        log.info("IOCListProtostreamGenerator timer not activated.");
    }
}
项目:sinkit-core    文件:WhitelistProtostreamGenerator.java   
@PostConstruct
private void initialize() {
    if (SINKIT_WHITELIST_PROTOSTREAM_GENERATOR_D_H_M_S != null) {
        timerService.createCalendarTimer(new ScheduleExpression()
                        .dayOfWeek(SINKIT_WHITELIST_PROTOSTREAM_GENERATOR_D_H_M_S[0])
                        .hour(SINKIT_WHITELIST_PROTOSTREAM_GENERATOR_D_H_M_S[1])
                        .minute(SINKIT_WHITELIST_PROTOSTREAM_GENERATOR_D_H_M_S[2])
                        .second(SINKIT_WHITELIST_PROTOSTREAM_GENERATOR_D_H_M_S[3])
                , new TimerConfig("WhitelistProtostreamGenerator", false));
    } else {
        log.info("WhitelistProtostreamGenerator timer not activated.");
    }
}