Package com.illumon.iris.controller
Class IrisQuerySchedulerMonthly
java.lang.Object
com.illumon.iris.controller.IrisQueryScheduler
com.illumon.iris.controller.IrisQuerySchedulerMonthly
- All Implemented Interfaces:
IrisScheduler
public class IrisQuerySchedulerMonthly extends IrisQueryScheduler implements IrisScheduler
Implementation of scheduler for monthly scheduling. This is intended for queries that will be run on specified
days of the month, possibly in specific months.
-
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 IrisQuerySchedulerMonthly()
IrisQuerySchedulerMonthly(String startTime, String stopTime, String timeZone, boolean schedulingDisabled, boolean overnight, String businessCalendar, boolean firstBusinessDay, boolean lastBusinessDay, boolean[] months, boolean specificDays, boolean[] days, boolean repeatEnabled, String repeatInterval, boolean skipIfUnsuccessful, boolean stopTimeDisabled, int errorRestartCount, 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()
String
getBusinessCalendarString()
boolean[]
getDaysArray()
boolean
getFirstBusinessDay()
boolean
getLastBusinessDay()
boolean[]
getMonthsArray()
String
getScheduleDetailDisplay(String[] strings, Map<Long,PersistentQueryInfo> queryInfos)
boolean
getSpecificDays()
void
populateSchedulerFromStringArray(String[] strings)
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, hasStartTime, hasStopTime, isOvernight, isRepeatEnabled, isStartTimeFirstForDay, isStopTimeDisabled, shouldRestartWhenRunning, 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, hasStopTime, isOvernight, isRepeatEnabled, isStartTimeFirstForDay, setDependentOnQuerySerials, shouldRestartWhenRunning, skipIfUnsuccessful, updateDependencyState, updateDependencyState
-
Constructor Details
-
IrisQuerySchedulerMonthly
public IrisQuerySchedulerMonthly() -
IrisQuerySchedulerMonthly
public IrisQuerySchedulerMonthly(String startTime, String stopTime, String timeZone, boolean schedulingDisabled, boolean overnight, String businessCalendar, boolean firstBusinessDay, boolean lastBusinessDay, boolean[] months, boolean specificDays, boolean[] days, boolean repeatEnabled, String repeatInterval, boolean skipIfUnsuccessful, boolean stopTimeDisabled, int errorRestartCount, String restartDelayMinutes, IrisQueryScheduler.RestartWhenRunning restartWhenRunning)
-
-
Method Details
-
generateStringArrayFromScheduler
- Specified by:
generateStringArrayFromScheduler
in interfaceIrisScheduler
-
populateSchedulerFromStringArray
- Specified by:
populateSchedulerFromStringArray
in interfaceIrisScheduler
-
equals
- Overrides:
equals
in classIrisQueryScheduler
-
getBusinessCalendarString
-
getMonthsArray
public boolean[] getMonthsArray() -
getDaysArray
public boolean[] getDaysArray() -
getFirstBusinessDay
public boolean getFirstBusinessDay() -
getLastBusinessDay
public boolean getLastBusinessDay() -
getSpecificDays
public boolean getSpecificDays() -
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
-
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
-