|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.avalon.framework.logger.AbstractLogEnabled
org.apache.avalon.cornerstone.blocks.scheduler.DefaultTimeScheduler
Default implementation of TimeScheduler service.
Field Summary |
Fields inherited from interface org.apache.avalon.cornerstone.services.scheduler.TimeScheduler |
ROLE |
Constructor Summary | |
DefaultTimeScheduler()
|
Method Summary | |
void |
addTrigger(String name,
TimeTrigger trigger,
Target target)
Schedule a time based trigger. |
void |
addTriggerFailureListener(TriggerFailureListener listener)
Add a trigger failure listener |
void |
dispose()
|
protected void |
doRunEntry(TimeScheduledEntry entry)
Helper method delegated to to run in a separate thread. |
Collection |
getEntries()
Return a collection of the triggerable names. |
protected TimeScheduledEntry |
getEntry(String name)
Retrieve entry from set. |
protected Map |
getEntryMap()
|
protected TimeScheduledEntry |
getNextEntry()
Retrieve next valid entry. |
protected PriorityQueue |
getPriorityQueue()
|
protected ThreadManager |
getThreadManager()
|
protected List |
getTriggerFailureListeners()
|
protected boolean |
isRunning()
|
protected void |
notifyFailedTriggers(Throwable t)
|
void |
removeTrigger(String name)
Remove a scheduled trigger by name. |
void |
removeTriggerFailureListener(TriggerFailureListener listener)
Remove a trigger failure listener |
protected boolean |
rescheduleEntry(TimeScheduledEntry timeEntry,
boolean clone)
Reschedule an entry. |
void |
resetTrigger(String name)
Force a trigger time to be recalculated. |
void |
run()
Entry point for thread that monitors entrys and triggers entrys when necessary. |
protected void |
runEntry(TimeScheduledEntry entry)
Run entry in a separate thread and reschedule it. |
void |
service(ServiceManager serviceManager)
Supply of the service manager to the component. |
protected void |
setRunning(boolean running)
|
void |
start()
|
void |
stop()
|
Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled |
enableLogging, getLogger, setupLogger, setupLogger, setupLogger |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public DefaultTimeScheduler()
Method Detail |
protected final ThreadManager getThreadManager()
protected final boolean isRunning()
protected final void setRunning(boolean running)
protected final List getTriggerFailureListeners()
protected final Map getEntryMap()
protected final PriorityQueue getPriorityQueue()
public void service(ServiceManager serviceManager) throws ServiceException
service
in interface Serviceable
serviceManager
- the service manager
ServiceException
public void dispose()
dispose
in interface Disposable
public void start() throws Exception
start
in interface Startable
Exception
public void stop()
stop
in interface Startable
public void run()
run
in interface Runnable
public void addTriggerFailureListener(TriggerFailureListener listener)
addTriggerFailureListener
in interface TimeScheduler
listener
- The listenerpublic void removeTriggerFailureListener(TriggerFailureListener listener)
removeTriggerFailureListener
in interface TimeScheduler
listener
- The listenerpublic void addTrigger(String name, TimeTrigger trigger, Target target)
addTrigger
in interface TimeScheduler
name
- the name of the triggertrigger
- the triggertarget
- the targetpublic void removeTrigger(String name) throws NoSuchElementException
removeTrigger
in interface TimeScheduler
name
- the name of the trigger
NoSuchElementException
- if no trigger exists with that namepublic void resetTrigger(String name) throws NoSuchElementException
resetTrigger
in interface TimeScheduler
name
- the name of the trigger
NoSuchElementException
- if no trigger exists with that namepublic Collection getEntries()
getEntries
in interface MonitorableTimeSchedulerMBean
protected boolean rescheduleEntry(TimeScheduledEntry timeEntry, boolean clone)
timeEntry
- the entryclone
- true if new entry is to be created
protected TimeScheduledEntry getEntry(String name) throws NoSuchElementException
name
- the name of entry
NoSuchElementException
- if no entry is found with that nameprotected void runEntry(TimeScheduledEntry entry)
entry
- the entry to runprotected void doRunEntry(TimeScheduledEntry entry)
entry
- the entry to runprotected TimeScheduledEntry getNextEntry()
protected void notifyFailedTriggers(Throwable t)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |