Calendarios
Un calendario es un mecanismo utilizado para excluir bloques de tiempo independientemente de la especificación temporal. que fue suministrado. Por ejemplo, si un trabajo está programado para ejecutarse una vez al día, es posible aumentar esta especificación con un calendario para indicar que debe ejecutarse solo una vez al día en días laborables. Se dispone de más información www.quartz-scheduler.org/documentation/quartz-2. 3. 0/tutorials/tutorial-lesson-04.html#TutorialLesson4-Calendars[aquí].
Si no se proporciona un calendario como parte de la JobSpecification, entonces se utiliza el calendario predeterminado.
Para definir un calendario predeterminado, el archivo de configuración debe contener ipf.persistent-scheduler.quartz.calendars.default
y ipf.persistent-scheduler.quartz.calendars como en el ejemplo a continuación.
Si no se ha configurado un calendario predeterminado, entonces el scheduler no utilizará calendarios y el cron expression será honrado sin exclusiones.
ipf.persistent-scheduler.quartz.calendars.default = "DefaultCalendar"
ipf.persistent-scheduler {
quartz {
calendars {
DefaultCalendar {
type = Annual
description = "Default calendar"
exclude-dates = ["12-25", "01-01"]
}
}
}
}
Tipos de Calendario
Quartz Los calendarios pueden ser de los siguientes tipos:
| Nombre del tipo de calendario | Descripción | Ejemplo |
|---|---|---|
|
Excluya bloques de tiempo de un día con una zona horaria. Utilice |
excluir {
start-time = "03:00"
end-time = "05:00"
}
zona horaria = UTC
|
|
Excluya días de un mes |
|
|
Excluya los días de la semana de una semana. Los días están indexados desde 1 y comienzan el domingo, es decir, domingo = 1, lunes = 2, etc. |
|
|
Excluya por un custom cron expression |
|
|
Excluir fechas explícitas (útil para fiestas móviles como la Semana Santa o los días festivos bancarios del Reino Unido) en ISO 8601 |
|
|
Excluya las fechas del calendario de cada año en |
|
| Un trabajo solo puede utilizar un calendario. |