for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace AsyncPHP\Doorman\Task;
use AsyncPHP\Doorman\Task;
use Closure;
use Jeremeamia\SuperClosure\SerializableClosure;
class CallbackTask implements Task
{
/**
* @var Closure
*/
protected $closure;
* @param Closure $closure
public function __construct(Closure $closure)
$this->closure = $closure;
}
* @inheritdoc
*
* @return string
public function serialize()
$closure = new SerializableClosure($this->closure);
return serialize($closure);
* @param string $serialized
public function unserialize($serialized)
/** @var SerializableClosure $closure */
$closure = unserialize($serialized);
$this->closure = $closure->getClosure();
* @return array
public function getData()
return array(
"closure" => $this->closure,
);
public function getHandler()
return "AsyncPHP\\Doorman\\Handler\\CallbackHandler";
* @return bool
public function ignoresRules()
return false;
public function stopsSiblings()
public function canRunTask()
return true;