Package org.apache.tapestry5.ioc.internal.services.cron

# Class PeriodicExecutorImpl

java.lang.Object
org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl

All Implemented Interfaces:
  `Runnable`, `PeriodicExecutor`

public class PeriodicExecutorImpl extends Object implements PeriodicExecutor, Runnable

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `PeriodicExecutorImpl(ParallelExecutor parallelExecutor, org.slf4j.Logger logger)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `PeriodicJob`
  `addJob(Schedule schedule, String name, Runnable job)`
  Adds a job to be executed.
  `void`
  `init()`
  Initializes this service.
  `void`
  `run()`
  `void`
  `start(RegistryShutdownHub hub)`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### PeriodicExecutorImpl

    public PeriodicExecutorImpl(ParallelExecutor parallelExecutor, org.slf4j.Logger logger)

- ## Method Details

  - ### start

    @PostInjection public void start(RegistryShutdownHub hub)

  - ### init

    public void init()
    Description copied from interface: `PeriodicExecutor`
    Initializes this service. Never call this method direclty. It's intended for internal Tapestry-IoC usage only.
    Specified by:
      `init` in interface `PeriodicExecutor`

  - ### addJob

    public PeriodicJob addJob(Schedule schedule, String name, Runnable job)
    Description copied from interface: `PeriodicExecutor`
    Adds a job to be executed. The job is executed in a thread pool (via `ParallelExecutor.invoke(org.apache.tapestry5.ioc.Invokable)`), as determined by the schedule.
    Specified by:
      `addJob` in interface `PeriodicExecutor`
    Parameters:
      `schedule` - defines when the job will next execute
      `name` - a name used in debugging output related to the job
      `job` - a Runnable object that represents the work to be done
    Returns:
      a PeriodicJob that can be used to query when the job executes, or to cancel its execution

  - ### run

    public void run()
    Specified by:
      `run` in interface `Runnable`