Difference between revisions of "GVTaskConfiguration"

From GreenVulcano Wiki
Jump to: navigation, search
(GVSchedulerBuilder)
(MonthlyCalendarBuilder)
 
(4 intermediate revisions by the same user not shown)
Line 18: Line 18:
 
* Description
 
* Description
 
* [[#GVSchedulerBuilder|GVSchedulerBuilder]]
 
* [[#GVSchedulerBuilder|GVSchedulerBuilder]]
* [[#TaskGroups|TaskGroups]]
+
* TaskGroups: containing more sub-elements [[#TaskGroup|TaskGroup]]
  
 
===GVSchedulerBuilder===
 
===GVSchedulerBuilder===
Line 178: Line 178:
 
This implementation of the Calendar excludes a set of days of the month.
 
This implementation of the Calendar excludes a set of days of the month.
  
MonthlyCalendarBuilder might contain the sub-element Description.
+
MonthlyCalendarBuilder might contain the sub-element [[Description]].
  
  
Line 207: Line 207:
 
This implementation of the Calendar excludes a set of days of the year.
 
This implementation of the Calendar excludes a set of days of the year.
  
AnnualCalendarBuilder might contain the sub-elements:
 
* Description
 
* [[#ExcludedDay|ExcludedDay]]
 
  
 
The following table shows its attributes:
 
The following table shows its attributes:
Line 228: Line 225:
 
The configured Calendars are instantiated in configuration order, so the Calendars with baseCalendarName set MUST be defined AFTER the referenced Calendar.
 
The configured Calendars are instantiated in configuration order, so the Calendars with baseCalendarName set MUST be defined AFTER the referenced Calendar.
 
|}
 
|}
 +
 +
AnnualCalendarBuilder might contain the sub-elements:
 +
* [[Description]]
 +
* [[#ExcludedDay|ExcludedDay]]
  
 
======ExcludedDay======
 
======ExcludedDay======
Line 266: Line 267:
 
| timeZone || optional || Calendar TimeZone.
 
| timeZone || optional || Calendar TimeZone.
 
If not defined is used the TimeZone defined for DateUtils.
 
If not defined is used the TimeZone defined for DateUtils.
 +
|-
 
| baseCalendarName || optional || Sets a new base calendar.
 
| baseCalendarName || optional || Sets a new base calendar.
 
The configured Calendars are instantiated in configuration order, so the Calendars with baseCalendarName setted MUST be defined AFTER the referenced Calendar.
 
The configured Calendars are instantiated in configuration order, so the Calendars with baseCalendarName setted MUST be defined AFTER the referenced Calendar.
 
|}
 
|}
 +
 +
===TaskGroup===
 +
 +
Each TaskGroup element defines a group of Timer Tasks.
 +
 +
The following table shows its attribute:
 +
{|class="gvtable"
 +
! Attribute !! Type !! Description
 +
|-
 +
| name || required || Task name.
 +
|}
 +
 +
Might contain the following sub-elements:
 +
* [[Description]]
 +
* [[ServiceCallerTask]]
 +
* [[RSHTask]]
 +
* [[ShellTask]]
 +
* [[TestTask]]

Latest revision as of 06:36, 11 April 2012

Description

Element configuration for timer Tasks.

GreenVulcano® ESB configuration

GVTaskManagerConfiguration

The GVTaskManagerConfiguration Element is used by: GVCore.

The following table shows its attributes:

Attribute Type Description
type fixed This attribute must assume the value module.
name fixed This attribute must assume the value GVTASKS.

Contains the sub-element:

GVSchedulerBuilder

Quartz scheduler configurer.

The GVSchedulerBuilder sub-elements are:

The following table shows its attributes:

Attribute Type Description
type fixed This attribute must assume the value scheduler-builder.
class fixed This attribute must assume the value it.greenvulcano.scheduler.util.quartz.impl.GVSchedulerBuilder.
maxThreads optional Defines the max number of threads in the scheduler's thread pool.

Default to 5.

RamStore

Scheduler state holder in RAM.

Might contain the sub-element Description.

The following table shows its attributes:

Attribute Type Description
type fixed This attribute must assume the value quartz-store
misfireThreshold optional The the number of milliseconds the scheduler will 'tolerate' a trigger to pass its next-fire-time by, before being considered "misfired".

The default value is 60000 (60 seconds).

JdbcStore

Scheduler state holder in on DataBase. IS CLUSTER-AWARE.

Might contain the sub-element Description.

The following table shows its attributes:

Attribute Type Description
type fixed This attribute must assume the value quartz-store
jdbcConnectionName required JDBC connection name.
driverDelegate required Driver delegates understand the particular 'dialects' of varies database systems.

The attribute admitted values are:

  • org.quartz.impl.jdbcjobstore.StdJDBCDelegate
  • org.quartz.impl.jdbcjobstore.MSSQLDelegate
  • org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
  • org.quartz.impl.jdbcjobstore.WebLogicDelegate
  • org.quartz.impl.jdbcjobstore.oracle.OracleDelegate
  • org.quartz.impl.jdbcjobstore.oracle.WebLogicOracleDelegate
  • org.quartz.impl.jdbcjobstore.oracle.weblogic.WebLogicOracleDelegate
  • org.quartz.impl.jdbcjobstore.CloudscapeDelegate
  • org.quartz.impl.jdbcjobstore.DB2v6Delegate
  • org.quartz.impl.jdbcjobstore.DB2v7Delegate
  • org.quartz.impl.jdbcjobstore.HSQLDBDelegate
  • org.quartz.impl.jdbcjobstore.PointbaseDelegate
tablePrefix required Is a string equal to the prefix given to Quartz's tables that were created in your database.

You can have multiple sets of Quartz's tables within the same database if they use different table prefixes.

misfireThreshold optional Number of milliseconds the scheduler will 'tolerate' a trigger to pass its next-fire-time by, before being considered "misfired".

The default value is 60000 (60 seconds).

clusterCheckinInterval optional Sets the frequency (in milliseconds) at which this instance "checks-in" with the other instances of the cluster. Affects the quickness of detecting failed instances.

The default value is 15000 (15 seconds).

Calendars

Calendars does not define actual fire times, but rather are used to limit a Trigger from firing on its normal schedule if necessary. Most Calendars include all times by default and allow the user to specify times to exclude.

Might contain the following sub-elements:

DailyCalendarBuilder

This implementation of the Calendar excludes (or includes) a specified time range each day.

Each DailyCalendar only allows a single time range to be specified, and that time range may not cross daily boundaries (i.e. you cannot specify a time range from 8PM - 5AM).

If the property invertTimeRange is false (default), the time range defines a range of times in which triggers are not allowed to fire. If invertTimeRange is true, the time range is inverted – that is, all times outside the defined time range are excluded.

DailyCalendarBuilder might contain the sub-element Description.


The following table shows its attributes:

Attribute Type Description
type fixed This attribute must assume the value cron-calendar.
class fixed This attribute must assume the value it.greenvulcano.scheduler.util.quartz.impl.calendar.DailyCalendarBuilder
name required Calendar name.

Used in associations with Triggers and other Calendars.

rangeStartingTime required Range starting time in the format: HH:mm[:ss[:SSS]]
rangeEndingTime required Range ending time in the format: HH:mm[:ss[:SSS]]
invertTimeRange optional If the property invertTimeRange is false (default), the time range defines a range of times in which triggers are not allowed to fire.

If invertTimeRange is true, the time range is inverted – that is, all times outside the defined time range are excluded.

timeZone optional Calendar TimeZone.

If not defined is used the TimeZone defined for DateUtils.

baseCalendarName optional Set a new base calendar.

The configured Calendars are instantiated in configuration order, so the Calendars whith baseCalendarName set MUST be defined AFTER the referenced Calendar.

WeeklyCalendarBuilder

This implementation of the Calendar excludes a set of days of the week.

WeeklyCalendarBuilder might contain the sub-element Description.


The following table shows its attributes:

Attribute Type Description
type fixed This attribute must assume the value cron-calendar.
class fixed This attribute must assume the value it.greenvulcano.scheduler.util.quartz.impl.calendar.WeeklyCalendarBuilder
name required Calendar name.

Used in associations with Triggers and other Calendars.

excludedDays required Defines the list of days excluded. The list size must be lower or equal 7.

The values are mapped to days names starting from 1 to 7 in this order: SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY. Ex: to exclude SUNDAY and SATURDAY set "1,7" Ex: to exclude all days "1,2,3,4,5,6,7"

timeZone optional Calendar TimeZone.

If not defined is used the TimeZone defined for DateUtils.

baseCalendarName optional Sets a new base calendar.

The configured Calendars are instantiated in configuration order, so the Calendars whith baseCalendarName set MUST be defined AFTER the referenced Calendar.

MonthlyCalendarBuilder

This implementation of the Calendar excludes a set of days of the month.

MonthlyCalendarBuilder might contain the sub-element Description.


The following table shows its attributes:

Attribute Type Description
type fixed This attribute must assume the value cron-calendar.
class fixed This attribute must assume the value it.greenvulcano.scheduler.util.quartz.impl.calendar.MonthlyCalendarBuilder.
name required Calendar name.

Used in associations with Triggers and other Calendars.

excludedDays required Defines the list of days excluded. The list size must be lower or equal 31.

The values are mapped to days index starting from 1 to 31. Ex: to exclude 1th and 10th day of the month set "1,10"

timeZone optional Calendar TimeZone.

If not defined is used the TimeZone defined for DateUtils.

baseCalendarName optional Sets a new base calendar.

The configured Calendars are instantiated in configuration order, so the Calendars with baseCalendarName set MUST be defined AFTER the referenced Calendar.

AnnualCalendarBuilder

This implementation of the Calendar excludes a set of days of the year.


The following table shows its attributes:

Attribute Type Description
type fixed This attribute must assume the value cron-calendar.
class fixed This attribute must assume the value it.greenvulcano.scheduler.util.quartz.impl.calendar.AnnualCalendarBuilder
name required Calendar name.

Used in associations with Triggers and other Calendars.

timeZone optional Calendar TimeZone.

If not defined is used the TimeZone defined for DateUtils.

baseCalendarName optional Sets a new base calendar.

The configured Calendars are instantiated in configuration order, so the Calendars with baseCalendarName set MUST be defined AFTER the referenced Calendar.

AnnualCalendarBuilder might contain the sub-elements:

ExcludedDay

Defines an excluded day.

Might contain the sub-element Description.

The following table shows its attributes:

Attribute Type Description
day required Excluded year day.

The format is dd/MM.

CronCalendarBuilder

This implementation of the Calendar excludes the set of times expressed by a given CronExpression. For example, you could use this calendar to exclude all but business hours (8AM - 5PM) every day using the expression "* * 0-7,18-23 ? * *".

Might contain the sub-element Description.

The following table shows its attributes:

Attribute Type Description
type fixed This attribute must assume the value cron-calendar
class fixed This attribute must assume the value it.greenvulcano.scheduler.util.quartz.impl.calendar.CronCalendarBuilder
name required Calendar name.

Used in associations with Triggers and other Calendars.

excludeCronExpression required Defines a cron expression.

Reference: http://www.quartz-scheduler.org/documentation/quartz-1.x/tutorials/crontrigger

timeZone optional Calendar TimeZone.

If not defined is used the TimeZone defined for DateUtils.

baseCalendarName optional Sets a new base calendar.

The configured Calendars are instantiated in configuration order, so the Calendars with baseCalendarName setted MUST be defined AFTER the referenced Calendar.

TaskGroup

Each TaskGroup element defines a group of Timer Tasks.

The following table shows its attribute:

Attribute Type Description
name required Task name.

Might contain the following sub-elements: