java.lang.Object
org.media.mn8.util.cron.TimeScheduler
- All Implemented Interfaces:
- java.lang.Runnable
- public class TimeScheduler
- extends java.lang.Object
- implements java.lang.Runnable
TimeScheduler, waiting for the crons and runs the Entries.
|
Method Summary |
void |
addTrigger(java.lang.String name,
Trigger trigger,
java.lang.String target)
Schedule a time based trigger. |
void |
addTrigger(java.lang.String name,
Trigger trigger,
java.lang.String target,
org.media.mn8.concepts.SeriesConcept params)
|
private void |
addTrigger(java.lang.String name,
Trigger trigger,
java.lang.String target,
org.media.mn8.concepts.SeriesConcept params,
boolean isMethod)
|
CronScheduledEntry |
getEntry(java.lang.String name)
Retrieve entry from set. |
private CronScheduledEntry |
getNextEntry()
|
void |
removeTrigger(java.lang.String name)
Remove a scheduled trigger by name. |
private boolean |
rescheduleEntry(CronScheduledEntry timeEntry,
boolean clone)
Reschedule an entry. |
void |
resetTrigger(java.lang.String name)
Force a trigger time to be recalculated. |
void |
run()
This method will be called by whoever wishes to run your class
implementing Runnable. |
private void |
runEntry(CronScheduledEntry entry)
|
void |
start()
|
void |
stop()
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
m_running
private boolean m_running
m_entries
private java.util.Hashtable m_entries
m_priorityQueue
private SynchronizedHeap m_priorityQueue
TimeScheduler
public TimeScheduler()
addTrigger
public void addTrigger(java.lang.String name,
Trigger trigger,
java.lang.String target)
throws java.lang.Exception
- Schedule a time based trigger.
Note that if a trigger already has same name then it is removed.
addTrigger
public void addTrigger(java.lang.String name,
Trigger trigger,
java.lang.String target,
org.media.mn8.concepts.SeriesConcept params)
throws java.lang.Exception
addTrigger
private void addTrigger(java.lang.String name,
Trigger trigger,
java.lang.String target,
org.media.mn8.concepts.SeriesConcept params,
boolean isMethod)
throws java.lang.Exception
removeTrigger
public void removeTrigger(java.lang.String name)
throws java.util.NoSuchElementException
- Remove a scheduled trigger by name.
resetTrigger
public void resetTrigger(java.lang.String name)
throws java.util.NoSuchElementException
- Force a trigger time to be recalculated.
rescheduleEntry
private boolean rescheduleEntry(CronScheduledEntry timeEntry,
boolean clone)
- Reschedule an entry.
if clone is true then invalidate old version and create a new entry to
insert into queue.
getEntry
public CronScheduledEntry getEntry(java.lang.String name)
throws java.util.NoSuchElementException
- Retrieve entry from set.
runEntry
private void runEntry(CronScheduledEntry entry)
start
public void start()
throws java.lang.Exception
stop
public void stop()
run
public void run()
- Description copied from interface:
java.lang.Runnable
- This method will be called by whoever wishes to run your class
implementing Runnable. Note that there are no restrictions on what
you are allowed to do in the run method, except that you cannot
throw a checked exception.
- Specified by:
run in interface java.lang.Runnable
getNextEntry
private CronScheduledEntry getNextEntry()