2013-04-21 01:27:46 +04:00
|
|
|
<?php
|
|
|
|
/**
|
|
|
|
* Copyright (c) 2013 Robin Appelman <icewind@owncloud.com>
|
|
|
|
* This file is licensed under the Affero General Public License version 3 or
|
|
|
|
* later.
|
|
|
|
* See the COPYING-README file.
|
|
|
|
*/
|
|
|
|
|
|
|
|
namespace OC\BackgroundJob;
|
|
|
|
|
|
|
|
abstract class Job {
|
|
|
|
protected $id;
|
|
|
|
protected $lastRun;
|
|
|
|
protected $argument;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param JobList $jobList
|
|
|
|
*/
|
|
|
|
public function execute($jobList) {
|
|
|
|
$jobList->setLastRun($this);
|
|
|
|
$this->run($this->argument);
|
|
|
|
}
|
|
|
|
|
|
|
|
abstract protected function run($argument);
|
|
|
|
|
|
|
|
public function setId($id) {
|
|
|
|
$this->id = $id;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function setLastRun($lastRun) {
|
|
|
|
$this->lastRun = $lastRun;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function setArgument($argument) {
|
|
|
|
$this->argument = $argument;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getId() {
|
|
|
|
return $this->id;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getLastRun() {
|
2013-04-24 01:46:56 +04:00
|
|
|
return $this->lastRun;
|
2013-04-21 01:27:46 +04:00
|
|
|
}
|
|
|
|
}
|