/** * Creates a scheduler using the specified thread pool and job store. This * scheduler can be retrieved via * {@link DirectSchedulerFactory#getScheduler()} * * @param threadPool * The thread pool for executing jobs * @param jobStore * The type of job store * @throws SchedulerException * if initialization failed */ public void createScheduler(ThreadPool threadPool, JobStore jobStore) throws SchedulerException { createScheduler(DEFAULT_SCHEDULER_NAME, DEFAULT_INSTANCE_ID, threadPool, jobStore); }
/** * <p> * Returns a handle to the Scheduler produced by this factory. * </p> * * <p> * you must call createRemoteScheduler or createScheduler methods before * calling getScheduler() * </p> */ public Scheduler getScheduler() throws SchedulerException { if (!initialized) { throw new SchedulerException( "you must call createRemoteScheduler or createScheduler methods before calling getScheduler()"); } return getScheduler(DEFAULT_SCHEDULER_NAME); }
/** * Creates a proxy to a remote scheduler. This scheduler can be retrieved * via {@link DirectSchedulerFactory#getScheduler()} * * @param rmiHost * The hostname for remote scheduler * @param rmiPort * Port for the remote scheduler. The default RMI port is 1099. * @throws SchedulerException * if the remote scheduler could not be reached. */ public void createRemoteScheduler(String rmiHost, int rmiPort) throws SchedulerException { createRemoteScheduler(DEFAULT_SCHEDULER_NAME, DEFAULT_INSTANCE_ID, rmiHost, rmiPort); }
public QuartzCronScheduler(HealthCheckExecutorThreadPool healthCheckExecutorThreadPool) { try { DirectSchedulerFactory schedulerFactory = DirectSchedulerFactory.getInstance(); ThreadPool threadPool = new QuartzThreadPool(healthCheckExecutorThreadPool); schedulerFactory.createScheduler(HC_SCHEDULER_NAME, "id_" + System.currentTimeMillis(), threadPool, new RAMJobStore()); scheduler = schedulerFactory.getScheduler(HC_SCHEDULER_NAME); scheduler.start(); LOG.debug("Started quartz scheduler {}", scheduler); } catch (SchedulerException e) { throw new IllegalStateException("Could not initialise/start quartz scheduler " + HC_SCHEDULER_NAME, e); } }
private void init() { WinderConfiguration configuration = engine.getConfiguration(); DirectSchedulerFactory factory = DirectSchedulerFactory.getInstance(); int numThreads = configuration.getInt("winder.quartz.numThreads", 50); try { if ("IN_MEMORY_SCHEDULER".equals(quartzType) || (quartzType == null && dataSourceName == null)) { factory.createVolatileScheduler(numThreads); scheduler = factory.getScheduler(); schedulerPluginMap.put("LoggingJobHistoryPlugin", new LoggingJobHistoryPlugin()); factory.createScheduler(clusterName, instanceId, threadPool, executor, jdbcJobStore, schedulerPluginMap, null, 0, idleWaitTime, dbFailureRetryInterval, false, null, numThreads, batchTimeWindow); } else { factory.createScheduler(clusterName, instanceId, threadPool, executor, jdbcJobStore, null, null, 0, idleWaitTime, dbFailureRetryInterval, false, null, numThreads, batchTimeWindow); scheduler = factory.getScheduler(clusterName); if (log.isInfoEnabled()) { log.info("Scheduler manager starting with:" + jdbcUrl);
final DirectSchedulerFactory factory = DirectSchedulerFactory.getInstance(); factory.createScheduler(name, runID, quartzPool, new RAMJobStore()); final Iterator<org.quartz.Scheduler> allSchedulersIter = factory.getAllSchedulers().iterator(); org.quartz.Scheduler s = null; while ( s == null && allSchedulersIter.hasNext() ) {
@Override public void setTenantEngine(IMicroserviceTenantEngine tenantEngine) { super.setTenantEngine(tenantEngine); try { DirectSchedulerFactory.getInstance().createScheduler(tenantEngine.getTenant().getToken(), INSTANCE_ID, new SimpleThreadPool(getNumProcessingThreads(), Thread.NORM_PRIORITY), new RAMJobStore()); } catch (SchedulerException e) { throw new RuntimeException("Unable to create Quartz scheduler for schedule manager.", e); } }
/** * Get scheduler instance for this tenant. * * @return * @throws SiteWhereException */ public Scheduler getScheduler() throws SiteWhereException { try { return DirectSchedulerFactory.getInstance().getScheduler(getTenant().getId()); } catch (SchedulerException e) { throw new SiteWhereException("Unable to get scheduler instance.", e); } }
private static DirectSchedulerFactory instance = new DirectSchedulerFactory(); getLog().info("Quartz scheduler '" + scheduler.getSchedulerName()); getLog().info("Quartz scheduler version: " + qs.getVersion());
/** * @deprecated see correctly spelled method. * @see #createVolatileScheduler(int) */ public void createVolatileSchduler(int maxThreads) throws SchedulerException { createVolatileScheduler(maxThreads); }
@Override public void start() throws Exception { if (!started) { System.setProperty("org.terracotta.quartz.skipUpdateCheck", "true"); DirectSchedulerFactory factory = DirectSchedulerFactory.getInstance(); SimpleThreadPool threadPool = new SimpleThreadPool(this.numThreads, Thread.NORM_PRIORITY); threadPool.setThreadNamePrefix("scheduling-worker"); threadPool.initialize(); final String schedulerName = DEFAULT_SCHEDULER_NAME + ":" + this.name; factory.createScheduler(schedulerName, DEFAULT_INSTANCE_ID + ":" + this.name, threadPool, new RAMJobStore()); this.scheduler = factory.getScheduler(schedulerName); this.scheduler.getListenerManager().addTriggerListener(new TriggerListener()); this.scheduler.start(); started = true; log.info("Quartz started"); } }
@Override public void setTenant(ITenant tenant) { super.setTenant(tenant); try { DirectSchedulerFactory.getInstance().createScheduler(getTenant().getId(), INSTANCE_ID, new SimpleThreadPool(getNumProcessingThreads(), Thread.NORM_PRIORITY), new RAMJobStore()); } catch (SchedulerException e) { throw new RuntimeException("Unable to create Quartz scheduler for schedule manager.", e); } }
/** * Get scheduler instance for this tenant. * * @return * @throws SiteWhereException */ public Scheduler getScheduler() throws SiteWhereException { try { return DirectSchedulerFactory.getInstance().getScheduler(getTenantEngine().getTenant().getToken()); } catch (SchedulerException e) { throw new SiteWhereException("Unable to get scheduler instance.", e); } }
private static DirectSchedulerFactory instance = new DirectSchedulerFactory(); getLog().info("Quartz scheduler '" + scheduler.getSchedulerName()); getLog().info("Quartz scheduler version: " + qs.getVersion());
/** * @deprecated see correctly spelled method. * @see #createVolatileScheduler(int) */ public void createVolatileSchduler(int maxThreads) throws SchedulerException { createVolatileScheduler(maxThreads); }
private static void schedulerSetup(boolean enablePersistence) throws SchedulerException { JobStore js; if (enablePersistence) { CConfiguration conf = injector.getInstance(CConfiguration.class); tableUtil = new ScheduleStoreTableUtil(dsFramework, conf); datasetBasedTimeScheduleStore = new DatasetBasedTimeScheduleStore(factory, tableUtil, conf); js = datasetBasedTimeScheduleStore; } else { js = new RAMJobStore(); } SimpleThreadPool threadPool = new SimpleThreadPool(10, Thread.NORM_PRIORITY); threadPool.initialize(); DirectSchedulerFactory.getInstance().createScheduler(DUMMY_SCHEDULER_NAME, "1", threadPool, js); scheduler = DirectSchedulerFactory.getInstance().getScheduler(DUMMY_SCHEDULER_NAME); scheduler.start(); }
/** * Creates a scheduler using the specified thread pool and job store. This * scheduler can be retrieved via * {@link DirectSchedulerFactory#getScheduler()} * * @param threadPool * The thread pool for executing jobs * @param jobStore * The type of job store * @throws SchedulerException * if initialization failed */ public void createScheduler(ThreadPool threadPool, JobStore jobStore) throws SchedulerException { createScheduler(DEFAULT_SCHEDULER_NAME, DEFAULT_INSTANCE_ID, threadPool, jobStore); }
/** * <p> * Returns a handle to the Scheduler produced by this factory. * </p> * * <p> * you must call createRemoteScheduler or createScheduler methods before * calling getScheduler() * </p> */ public Scheduler getScheduler() throws SchedulerException { if (!initialized) { throw new SchedulerException( "you must call createRemoteScheduler or createScheduler methods before calling getScheduler()"); } return getScheduler(DEFAULT_SCHEDULER_NAME); }