/** * @param Ustream_Daemon_Daemon $daemon * * @return Ustream_Daemon_Task */ public function createTaskFor(Ustream_Daemon_Daemon $daemon) { return new Ustream_Daemon_CallbackTask(function () use($daemon) { $logger = new Ustream_Daemon_Logger($daemon); $logger->info(sprintf('Single instance')); }); }
/** * @param Ustream_Daemon_Daemon $daemon * @param int $instanceId * @param int $instanceCount * * @return Ustream_Daemon_Task */ public function create(Ustream_Daemon_Daemon $daemon, $instanceId, $instanceCount) { return new Ustream_Daemon_CallbackTask(function () use($instanceId, $instanceCount, $daemon) { $logger = new Ustream_Daemon_Logger($daemon); $logger->info(sprintf('Instance %d/%d', $instanceId, $instanceCount)); }); }
/** * @static * @return \Ustream_Daemon_CallbackTask */ public static function createTask() { return new \Ustream_Daemon_CallbackTask(function () { \Ustream_Daemon_Logger::getInstance()->info('common-entry-point'); }); }
/** * @param Ustream_Daemon_MultiInstanceTaskFactory $taskFactory * * @throws InvalidArgumentException * * @return Ustream_Daemon_Starter */ public function buildMultiInstance(Ustream_Daemon_MultiInstanceTaskFactory $taskFactory) { $this->validate(); $opts = getopt("i:n:"); if (!isset($opts['i']) || !is_numeric($opts['i']) || !isset($opts['n']) || !is_numeric($opts['n'])) { echo "Arguments: -i <0..n-1> -n <n>\nWhere n is the number of queue processors running\n"; exit; } $this->config->multipleInstances = true; $this->config->instanceNumber = (int) $opts['i']; $daemon = new Ustream_Daemon_PreconfiguredTaskDelegator($this->id, $this->config); Ustream_Daemon_Logger::setInstance(new Ustream_Daemon_Logger($daemon)); $daemon->setTask($taskFactory->create($daemon, (int) $opts['i'], (int) $opts['n'])); return $daemon; }
/** * @static * @return Ustream_Daemon_CallbackTask */ public static function nullTask() { return new Ustream_Daemon_CallbackTask(function () { Ustream_Daemon_Logger::getInstance()->debug('null'); }); }
/** * @static * * @return void */ public static function resetInstance() { self::$instance = null; }