for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/*
* This file is part of the Magallanes package.
*
* (c) Andrés Montañez <[email protected]>
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Mage\Task;
use Mage\Runtime\Runtime;
/**
* Abstract base class for Magallanes Tasks
* @author Andrés Montañez <[email protected]>
abstract class AbstractTask
{
* @var array Task custom options
protected $options = [];
* @var Runtime
protected $runtime;
* Get the Name/Code of the Task
* @return string
abstract public function getName();
* Get a short Description of the Task
abstract public function getDescription();
* Executes the Command
* @return bool
abstract public function execute();
* Set additional Options for the Task
* @param array $options Options
* @return AbstractTask
public function setOptions($options = [])
if (!is_array($options)) {
$options = [];
}
$this->options = array_merge($this->getDefaults(), $options);
return $this;
* Set the Runtime instance
* @param Runtime $runtime
public function setRuntime(Runtime $runtime)
$this->runtime = $runtime;
* Return Default options
* @return array
public function getDefaults()
return [];