001 /*
002 * Apache License
003 * Version 2.0, January 2004
004 * http://www.apache.org/licenses/
005 *
006 * Copyright 2008 by chenillekit.org
007 *
008 * Licensed under the Apache License, Version 2.0 (the "License");
009 * you may not use this file except in compliance with the License.
010 * You may obtain a copy of the License at
011 *
012 * http://www.apache.org/licenses/LICENSE-2.0
013 */
014
015 package org.chenillekit.quartz.services;
016
017 import org.quartz.Scheduler;
018
019 /**
020 * manages the Quartz schedulers.
021 *
022 * @version $Id: QuartzSchedulerManager.java 358 2008-11-25 12:52:26Z homburgs $
023 */
024 public interface QuartzSchedulerManager
025 {
026 /**
027 * get the default scheduler.
028 *
029 * @return the default scheduler
030 */
031 Scheduler getScheduler();
032
033 /**
034 * get a named scheduler.
035 *
036 * @param schedulerId id of the scheduler
037 *
038 * @return a named scheduler
039 */
040 Scheduler getScheduler(String schedulerId);
041
042 /**
043 * shutdown all scheduler.
044 */
045 void shutdown();
046
047 /**
048 * shutdown a named scheduler.
049 *
050 * @param schedulerId id of the scheduler
051 */
052 void shutdown(String schedulerId);
053 }