00001 <?php
00002 
00003 
00004 
00005 class ReschedulerBase implements IRescheduler {
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013         public function reschedule($task, $status) {
00014                 $ret = false;
00015                 $schedules = $this->get_schedules();
00016                 $runs = ($status->is_ok()) ? $task->runs_success : $task->runs_error;
00017                 $delta = Arr::get_item($schedules, $runs, -1);
00018                 if ($delta > 0) {
00019                         $ret = time() + $delta;         
00020                 }
00021                 return $ret;            
00022         }               
00023         
00024 
00025 
00026 
00027 
00028 
00029 
00030 
00031         protected function get_schedules() {
00032                 return array();
00033         }
00034 }