/* * Copyright 2001-2008 Geert Bevin (gbevin[remove] at uwyn dot com) * Licensed under the Apache License, Version 2.0 (the "License") * $Id: Executor.java 3918 2008-04-14 17:35:35Z gbevin $ */ package com.uwyn.rife.scheduler; import com.uwyn.rife.scheduler.exceptions.SchedulerExecutionException; public abstract class Executor { private Scheduler mScheduler = null; public Scheduler getScheduler() { return mScheduler; } final void startTaskExecution(Task task) throws SchedulerExecutionException { assert task != null; ExecutorThread executor_thread = new ExecutorThread(this, task); Thread thread = new Thread(executor_thread, getHandledTasktype()); thread.start(); } void setScheduler(Scheduler scheduler) { mScheduler = scheduler; } protected long getRescheduleDelay() { return 1000; } public abstract boolean executeTask(Task task); public abstract String getHandledTasktype(); }