Interface IJob

All Superinterfaces:
org.springframework.context.ApplicationContextAware, org.springframework.beans.factory.Aware, IConfigurable, IConfigurationAware, INamedObject, IScopeProvider
All Known Implementing Classes:
CheckReloadJob, CleanupDatabaseJob, CleanupFileSystemJob, DatabaseJob, ExecuteQueryJob, IbisActionJob, Job, JobDef, LoadDatabaseSchedulesJob, RecoverAdaptersJob, SendMessageJob

@FrankDocGroup(JOB) public interface IJob extends IConfigurable
  • Method Details

    • execute

      void execute() throws JobExecutionException, TimeoutException
      Actual implementation of the IJob. Is wrapped around a Locker and exceptions will be managed automatically.
      Throws:
      TimeoutException - when the TransactionTimeout has been reached
      JobExecutionException - when the implementation fails to execute
    • setInterval

      void setInterval(long interval)
      Triggers the Job at the specified number of milliseconds. Keep cronExpression empty in order to use interval. Value 0 may be used to run once at startup of the application. A value of 0 in combination with function 'sendMessage' will set dependencyTimeout on the IbisLocalSender to -1 to keep waiting indefinitely instead of 60 seconds for the adapter to start.
    • getInterval

      long getInterval()
    • setCronExpression

      void setCronExpression(String cronExpression)
      CRON expression that determines the frequency of execution. Can not be used in combination with Interval.
    • getCronExpression

      String getCronExpression()
    • getJobDetail

      org.quartz.JobDetail getJobDetail()
    • getName

      String getName()
      The name of the Job, used in combination with JobGroup to create a unique key.
      Specified by:
      getName in interface IConfigurationAware
      Specified by:
      getName in interface INamedObject
    • getJobGroup

      String getJobGroup()
      The group of the Job, used in combination with Name to create a unique key.
    • isConfigured

      boolean isConfigured()
      Only register (and trigger) Jobs that have been successfully configured.
    • getMessageKeeper

      MessageKeeper getMessageKeeper()
    • setLocker

      void setLocker(Locker locker)
      Optional element to avoid parallel execution of the Job, by multiple threads or servers. The Job is NOT executed when the lock cannot be obtained! In case another thread, potentially on another server, holds the lock and does not release it in a timely manner, it will not trigger the job.
    • getLocker

      Locker getLocker()
    • executeJob

      void executeJob()
      Called from ConfiguredJob which should trigger this job definition.