package example; import java.util.TimerTask; import java.util.logging.Logger; import java.util.logging.Level; import javax.resource.spi.work.Work; import javax.resource.spi.work.WorkManager; import javax.resource.spi.work.WorkException; /** * Implements the timer task. This task just launches the work task. */ public class WorkScheduleTimerTask extends TimerTask { private static final Logger log = Logger.getLogger(TimerTask.class.getName()); private WorkManager _workManager; private Work _work; /** * Creates the timer task. */ WorkScheduleTimerTask(WorkManager workManager, Work work) { _workManager = workManager; _work = work; } /** * The method called to execute the task, like Runnable */ public void run() { log.fine("timer starting"); try { _workManager.scheduleWork(_work); } catch (WorkException e) { log.log(Level.WARNING, e.toString(), e); } } }