Package com.illumon.iris.controller
Class IrisQuerySchedulerContinuous
java.lang.Object
com.illumon.iris.controller.IrisQueryScheduler
com.illumon.iris.controller.IrisQuerySchedulerContinuous
- All Implemented Interfaces:
IrisScheduler
public class IrisQuerySchedulerContinuous extends IrisQueryScheduler implements IrisScheduler
-
Nested Class Summary
Nested classes/interfaces inherited from class com.illumon.iris.controller.IrisQueryScheduler
IrisQueryScheduler.RestartWhenRunning
-
Field Summary
Fields inherited from class com.illumon.iris.controller.IrisQueryScheduler
DISABLED_PARSE_STRING, overnight, RESTART_COUNT_UNLIMITED, timeZone
Fields inherited from interface com.illumon.iris.controller.IrisScheduler
DELIMITER_TOKEN, SCHEDULER_TYPE_TOKEN
-
Constructor Summary
Constructors Constructor Description IrisQuerySchedulerContinuous()
IrisQuerySchedulerContinuous(String startTime, String stopTime, String timeZone, boolean schedulingDisabled, boolean overnight, boolean repeatEnabled, String repeatInterval, boolean skipIfUnsuccessful, boolean stopTimeDisabled, int errorRestartCount, boolean dailyRestart, String restartDelayMinutes, IrisQueryScheduler.RestartWhenRunning restartWhenRunning)
-
Method Summary
Modifier and Type Method Description boolean
equals(Object object)
void
generateSchedulerTimes(Long lookPastTime, Map<Long,PersistentQueryInfo> queryInfos)
Generate the next start/stop time values for this query.String[]
generateStringArrayFromScheduler()
boolean
getDailyRestart()
String
getScheduleDetailDisplay(String[] strings, Map<Long,PersistentQueryInfo> queryInfos)
boolean
hasStartTime()
Return true if the scheduling has a determinable start time.boolean
hasStopTime()
Return true if the scheduling has a determinable stop time.void
populateSchedulerFromStringArray(String[] strings)
boolean
shouldRestartWhenRunning()
Indicates whether a query should be restarted by the scheduler when running.void
validate(Map<Long,PersistentQueryInfo> allConfigurations)
Validate the scheduling.Methods inherited from class com.illumon.iris.controller.IrisQueryScheduler
getRepeatInterval, getRestartDelayMinutes, getRestartErrorCount, getRestartWhenRunning, getRestartWhenRunningValues, getSchedulingDisabled, getStartTime, getStartTimeDisplay, getStartTimeInMillis, getStartTimeOfDay, getStopTime, getStopTimeDisplay, getStopTimeInMillis, getStopTimeOfDay, getTimeZoneDisplay, getTimeZoneString, isOvernight, isRepeatEnabled, isStartTimeFirstForDay, isStopTimeDisabled, skipIfUnsuccessful
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.illumon.iris.controller.IrisScheduler
areConditionsMet, getDependentOnQuerySerials, getExpirationTimeMillis, getRepeatInterval, getRestartDelayMinutes, getRestartErrorCount, getRunOnFailure, getSchedulingDisabled, getStartTimeDisplay, getStartTimeInMillis, getStartTimeOfDay, getStopTimeDisplay, getStopTimeInMillis, getStopTimeOfDay, getTemporaryQueueName, getTimeZoneDisplay, getTimeZoneString, isOvernight, isRepeatEnabled, isStartTimeFirstForDay, setDependentOnQuerySerials, skipIfUnsuccessful, updateDependencyState, updateDependencyState
-
Constructor Details
-
IrisQuerySchedulerContinuous
public IrisQuerySchedulerContinuous(String startTime, String stopTime, String timeZone, boolean schedulingDisabled, boolean overnight, boolean repeatEnabled, String repeatInterval, boolean skipIfUnsuccessful, boolean stopTimeDisabled, int errorRestartCount, boolean dailyRestart, String restartDelayMinutes, IrisQueryScheduler.RestartWhenRunning restartWhenRunning) -
IrisQuerySchedulerContinuous
public IrisQuerySchedulerContinuous()
-
-
Method Details
-
generateStringArrayFromScheduler
- Specified by:
generateStringArrayFromScheduler
in interfaceIrisScheduler
-
populateSchedulerFromStringArray
- Specified by:
populateSchedulerFromStringArray
in interfaceIrisScheduler
-
equals
- Overrides:
equals
in classIrisQueryScheduler
-
generateSchedulerTimes
Description copied from interface:IrisScheduler
Generate the next start/stop time values for this query. Generated values of -1 will be used to indicate no start or stop time. After calling this, calling getStartTimeInMillis will return the generated start time and calling getStopTimeInMillis will return the generated stop time.- Specified by:
generateSchedulerTimes
in interfaceIrisScheduler
- Parameters:
lookPastTime
- the time in millis past which the scheduling engine looks for the next start time, or null if none is desiredqueryInfos
- the controller's query information Map
-
getScheduleDetailDisplay
public String getScheduleDetailDisplay(String[] strings, Map<Long,PersistentQueryInfo> queryInfos)- Specified by:
getScheduleDetailDisplay
in interfaceIrisScheduler
-
getDailyRestart
public boolean getDailyRestart() -
hasStopTime
public boolean hasStopTime()Description copied from interface:IrisScheduler
Return true if the scheduling has a determinable stop time.- Specified by:
hasStopTime
in interfaceIrisScheduler
- Overrides:
hasStopTime
in classIrisQueryScheduler
- Returns:
- true if the scheduling has a determinable stop time, false otherwise
-
hasStartTime
public boolean hasStartTime()Description copied from class:IrisQueryScheduler
Return true if the scheduling has a determinable start time.- Overrides:
hasStartTime
in classIrisQueryScheduler
- Returns:
- true if the scheduling has a determinable start time, false otherwise
-
shouldRestartWhenRunning
public boolean shouldRestartWhenRunning()Description copied from interface:IrisScheduler
Indicates whether a query should be restarted by the scheduler when running.- For a dependent query, indicates whether the query should start immediately if the dependency condition is true and the query is not in a terminal state
- For a continually scheduled query, it indicates that a scheduled restart should cause the running query to be stopped (always true)
- For daily and monthly scheduled queries, it indicates whether a query that's scheduled to start at a specified time should be restarted, even if it's already running (e.g. started manually out of scheduled run-time)
- Specified by:
shouldRestartWhenRunning
in interfaceIrisScheduler
- Overrides:
shouldRestartWhenRunning
in classIrisQueryScheduler
- Returns:
- true if the query should be restarted when its dependent-on condition is met
-
validate
Description copied from interface:IrisScheduler
Validate the scheduling.- Specified by:
validate
in interfaceIrisScheduler
- Overrides:
validate
in classIrisQueryScheduler
- Parameters:
allConfigurations
- a map of all current query configurations which can be used for additional validation
-