Class MetaCron
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.flow.control.flowrestart.trigger.AbstractTrigger
-
- adams.flow.control.flowrestart.trigger.MetaCron
-
- All Implemented Interfaces:
Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,SizeOfHandler
,Serializable
public class MetaCron extends AbstractTrigger
Executes the base trigger according to the specified schedule.- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
MetaCron.CronJob
Encapsulates a job to run.
-
Field Summary
Fields Modifier and Type Field Description static String
KEY_OWNER
the key for the owner in the JobExecutionContent.protected Flow
m_Flow
the flow this trigger is for.protected CronSchedule
m_Schedule
the cron schedule.protected org.quartz.Scheduler
m_Scheduler
the scheduler.protected AbstractTrigger
m_Trigger
the base trigger.-
Fields inherited from class adams.flow.control.flowrestart.trigger.AbstractTrigger
m_TriggerHandler
-
Fields inherited from class adams.core.option.AbstractOptionHandler
m_OptionManager
-
Fields inherited from class adams.core.logging.LoggingObject
m_Logger, m_LoggingIsEnabled, m_LoggingLevel
-
-
Constructor Summary
Constructors Constructor Description MetaCron()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
defineOptions()
Adds options to the internal list of options.protected String
doStart(Flow flow)
Starts the trigger.Flow
getFlow()
Returns the flow this trigger is for.String
getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.CronSchedule
getSchedule()
Returns the execution schedule.AbstractTrigger
getTrigger()
Returns the base trigger.String
globalInfo()
Returns a string describing the object.String
scheduleTipText()
Returns the tip text for this property.void
setSchedule(CronSchedule value)
Sets the execution schedule.void
setTrigger(AbstractTrigger value)
Sets the base trigger.String
stop()
Stops the trigger.String
triggerTipText()
Returns the tip text for this property.-
Methods inherited from class adams.flow.control.flowrestart.trigger.AbstractTrigger
check, getTriggerHandler, setTriggerHandler, start
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, destroy, finishInit, getDefaultLoggingLevel, getOptionManager, initialize, loggingLevelTipText, newOptionManager, reset, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
configureLogger, getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel
-
-
-
-
Field Detail
-
KEY_OWNER
public static final String KEY_OWNER
the key for the owner in the JobExecutionContent.- See Also:
- Constant Field Values
-
m_Schedule
protected CronSchedule m_Schedule
the cron schedule.
-
m_Scheduler
protected org.quartz.Scheduler m_Scheduler
the scheduler.
-
m_Flow
protected transient Flow m_Flow
the flow this trigger is for.
-
m_Trigger
protected AbstractTrigger m_Trigger
the base trigger.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceGlobalInfoSupporter
- Specified by:
globalInfo
in classAbstractOptionHandler
- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceOptionHandler
- Overrides:
defineOptions
in classAbstractOptionHandler
-
setSchedule
public void setSchedule(CronSchedule value)
Sets the execution schedule.- Parameters:
value
- the schedule
-
getSchedule
public CronSchedule getSchedule()
Returns the execution schedule.- Returns:
- the schedule
-
scheduleTipText
public String scheduleTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setTrigger
public void setTrigger(AbstractTrigger value)
Sets the base trigger.- Parameters:
value
- the trigger
-
getTrigger
public AbstractTrigger getTrigger()
Returns the base trigger.- Returns:
- the trigger
-
triggerTipText
public String triggerTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
getFlow
public Flow getFlow()
Returns the flow this trigger is for.- Returns:
- the flow, null if none yet set
-
getQuickInfo
public String getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.- Specified by:
getQuickInfo
in interfaceQuickInfoSupporter
- Overrides:
getQuickInfo
in classAbstractTrigger
- Returns:
- null if no info available, otherwise short string
-
doStart
protected String doStart(Flow flow)
Starts the trigger.- Specified by:
doStart
in classAbstractTrigger
- Parameters:
flow
- the flow to handle- Returns:
- null if successfully started, otherwise error message
-
stop
public String stop()
Stops the trigger.- Specified by:
stop
in classAbstractTrigger
- Returns:
- null if successfully stopped, otherwise error message
-
-