1 package com.atlassian.sal.api.scheduling;
2
3 import java.util.Map;
4
5 /**
6 * A job to be executed by the PluginScheduler.
7 * <p/>
8 * Implementations of this class should not store local data, as a new instance of the job is instantiated for each execution.
9 * <p/>
10 * Implementations of this class should also provide a default constructor with no arguments as not all job engines
11 * support constructor injection.
12 *
13 * @since 2.0
14 */
15 public interface PluginJob
16 {
17 /**
18 * Execute this job
19 *
20 * @param jobDataMap Any data the job needs to execute. Changes to this data will be remembered between executions.
21 */
22 public void execute(Map<String, Object> jobDataMap);
23 }