Example usage for org.springframework.scheduling.concurrent ThreadPoolTaskScheduler ThreadPoolTaskScheduler

List of usage examples for org.springframework.scheduling.concurrent ThreadPoolTaskScheduler ThreadPoolTaskScheduler

Introduction

In this page you can find the example usage for org.springframework.scheduling.concurrent ThreadPoolTaskScheduler ThreadPoolTaskScheduler.

Prototype

ThreadPoolTaskScheduler

Source Link

Usage

From source file:com.emo.ananas.app.App.java

public static void main(String[] args) throws InterruptedException {
    final ThreadPoolTaskScheduler scheduler = new ThreadPoolTaskScheduler();

    Config config = ConfigFactory.load();

    Preconditions.checkArgument(config.hasPath("emailer"), "expected an 'emailer' object in config");
    final Config emailerConfig = config.getConfig("emailer");
    Preconditions.checkArgument(emailerConfig.hasPath("smtp"), "expected emailer.smtp in config");

    EmailSenderConfig emailSenderConfig = new EmailSenderConfig(emailerConfig.getString("smtp"));

    Preconditions.checkArgument(config.hasPath("reports"), "expected reports object in config");
    final Config reportsConfig = config.getConfig("reports");
    Preconditions.checkArgument(reportsConfig.hasPath("actives"),
            "expected reports.actives with array of active declared reports in config");
    final List<String> activeReports = reportsConfig.getStringList("actives");

    final DataSourceFactory factory = new DataSourceFactory(config.getConfig("datasources"));

    for (final String activeReport : activeReports) {
        Preconditions.checkArgument(reportsConfig.hasPath(activeReport), "expected reports." + activeReport
                + " in config, because it is declared in actives report list");
    }//from  w w w  .j a  v  a  2  s . c  o  m

    scheduler.initialize();

    for (final String activeReport : activeReports) {
        final Config reportConfig = reportsConfig.getConfig(activeReport);
        final CronConfig cronConfig = new CronConfig(reportConfig);
        final EmailConfig emailConfig = new EmailConfig(reportConfig);
        final BaseConfig dataSource = new BaseConfig(reportConfig, factory);
        final QueryConfig queryConfig = new QueryConfig(reportConfig, dataSource.dataSource());
        final Report report = new Report(activeReport, scheduler, emailSenderConfig, emailConfig, cronConfig,
                queryConfig);
        report.schedule();
    }

    while (true) {
        Thread.sleep(60000);
    }
}

From source file:integration.CreateSchedulerTest.java

@Test
public void shouldSupportTheNewFormatForTriggersInSpring() throws InterruptedException {
    StubJob task = new StubJob();

    ThreadPoolTaskScheduler scheduler = new ThreadPoolTaskScheduler();
    scheduler.afterPropertiesSet();/*from  w  w  w.  j  a  va2s.  co m*/
    scheduler.schedule(task, new WordyTrigger("every 1 second"));

    Thread.sleep(3000L);

    assertTrue("the task should have been invoked at some point", task.numberOfInvocations > 2);
}

From source file:com.coinblesk.server.config.BeanConfig.java

@Bean
public static TaskScheduler taskScheduler() {
    return new ThreadPoolTaskScheduler();
}

From source file:com.orange.cepheus.cep.Application.java

@Bean
public TaskScheduler taskScheduler() {
    return new ThreadPoolTaskScheduler();
}

From source file:com.xyxy.platform.examples.showcase.demos.schedule.SpringCronJob.java

@PostConstruct
public void start() {
    Validate.notBlank(cronExpression);//from  www .j a va  2 s . co  m

    threadPoolTaskScheduler = new ThreadPoolTaskScheduler();
    threadPoolTaskScheduler.setThreadNamePrefix("SpringCronJob");
    threadPoolTaskScheduler.initialize();

    threadPoolTaskScheduler.schedule(this, new CronTrigger(cronExpression));
}

From source file:io.gravitee.gateway.services.sync.spring.SyncConfiguration.java

@Bean
public TaskScheduler taskScheduler() {
    ThreadPoolTaskScheduler scheduler = new ThreadPoolTaskScheduler();
    scheduler.setThreadNamePrefix("sync-");
    return scheduler;
}

From source file:com.alliander.osgp.acceptancetests.config.SchedulingConfig.java

@Bean
public TaskScheduler taskScheduler() {
    final ThreadPoolTaskScheduler taskScheduler = new ThreadPoolTaskScheduler();
    taskScheduler.setPoolSize(SCHEDULING_TASK_SCHEDULER_POOL_SIZE);
    taskScheduler.setThreadNamePrefix(SCHEDULING_TASK_SCHEDULER_THREAD_NAME_PREFIX);
    taskScheduler.initialize();//from  ww w  .j ava  2 s  . c  o  m
    taskScheduler.schedule(this.scheduledTaskScheduler, this.scheduledTasksCronTrigger());
    return taskScheduler;
}

From source file:com.stratio.streaming.configuration.SchredulerConfiguration.java

@Bean
public TaskScheduler taskScheduler() {
    ThreadPoolTaskScheduler taskScheduler = new ThreadPoolTaskScheduler();
    taskScheduler.initialize();/*from ww w.  ja  v  a 2 s .c  o m*/
    if (configurationContext.isFailOverEnabled()) {
        taskScheduler.scheduleAtFixedRate(failOverTask(), configurationContext.getFailOverPeriod());
    }
    return taskScheduler;
}

From source file:com.cisco.cta.taxii.adapter.ScheduleConfiguration.java

@Bean
public TaskScheduler taskScheduler() throws Exception {
    return new ThreadPoolTaskScheduler();
}

From source file:com.joshlong.esb.springintegration.modules.net.sftp.Main.java

static void run(SFTPSessionFactory sftpSessionFactory, String lp, String rp) throws Throwable {
    // local path
    File local = new File(lp); // obviously this is just for test. Do what you need to do in your own

    // we are testing, after all
    if (local.exists() && (local.list().length > 0)) {
        for (File f : local.listFiles()) {
            if (!f.delete()) {
                logger.debug("couldn't delete " + f.getAbsolutePath());
            }//from w  ww. j  ava  2 s  .c  om
        }
    }

    Resource localDirectory = new FileSystemResource(local);

    // pool
    QueuedSFTPSessionPool queuedSFTPSessionPool = new QueuedSFTPSessionPool(sftpSessionFactory);
    queuedSFTPSessionPool.afterPropertiesSet();

    ThreadPoolTaskScheduler taskScheduler = new ThreadPoolTaskScheduler();
    taskScheduler.setPoolSize(10);
    taskScheduler.setErrorHandler(new ErrorHandler() {
        public void handleError(Throwable t) {
            logger.debug("error! ", t);
        }
    });

    taskScheduler.setWaitForTasksToCompleteOnShutdown(true);
    taskScheduler.initialize();

    // synchronizer
    final SFTPInboundSynchronizer sftpInboundSynchronizer = new SFTPInboundSynchronizer();
    sftpInboundSynchronizer.setLocalDirectory(localDirectory);
    sftpInboundSynchronizer.setRemotePath(rp);
    sftpInboundSynchronizer.setAutoCreatePath(true);
    sftpInboundSynchronizer.setPool(queuedSFTPSessionPool);
    sftpInboundSynchronizer.setShouldDeleteDownloadedRemoteFiles(false);
    sftpInboundSynchronizer.setTaskScheduler(taskScheduler);
    sftpInboundSynchronizer.afterPropertiesSet();
    sftpInboundSynchronizer.start();

    /*
        new Thread(new Runnable() {
            public void run() {
                try {
                    Thread.sleep(60 * 1000); // 1 minute
            
                    sftpInboundSynchronizer.stop();
            
                } catch (InterruptedException e) {
                    // don't care
                }
            }
        }).start();
    */
}