server/lib/backgroundjob/job.php

50 lines
871 B
PHP
Raw Normal View History

2013-04-20 21:27:46 +00: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-23 21:46:56 +00:00
return $this->lastRun;
2013-04-20 21:27:46 +00:00
}
public function getArgument() {
return $this->argument;
}
2013-04-20 21:27:46 +00:00
}