コード例 #1
0
ファイル: Listener.php プロジェクト: phwoolcon/phwoolcon
 /**
  * Listen to the given queue.
  *
  * @param  string $connectionName
  * @param  string $queue
  * @param  int    $delay
  * @param  int    $sleep
  * @param  int    $maxTries
  * @return array
  */
 public function pop($connectionName, $queue = null, $delay = 0, $sleep = 3, $maxTries = 0)
 {
     $connection = Queue::connection($connectionName);
     if ($job = $connection->pop($queue)) {
         return $this->process($job, $maxTries, $delay);
     }
     // Sleep the worker for the specified number of seconds, if no jobs
     sleep($sleep);
     return ['job' => null, 'failed' => false];
 }
コード例 #2
0
ファイル: di.php プロジェクト: phwoolcon/phwoolcon
use Phalcon\Version;
use Phwoolcon\Aliases;
use Phwoolcon\Cache;
use Phwoolcon\Config;
use Phwoolcon\Cookies;
use Phwoolcon\Db;
use Phwoolcon\DiFix;
use Phwoolcon\Events;
use Phwoolcon\I18n;
use Phwoolcon\Log;
use Phwoolcon\Queue;
use Phwoolcon\Router;
use Phwoolcon\Session;
use Phwoolcon\Util\Counter;
use Phwoolcon\View;
$_SERVER['PHWOOLCON_PHALCON_VERSION'] = Version::getId();
Events::register($di);
DiFix::register($di);
Db::register($di);
Cache::register($di);
Log::register($di);
Config::register($di);
Counter::register($di);
Aliases::register($di);
Router::register($di);
I18n::register($di);
Cookies::register($di);
Session::register($di);
View::register($di);
Queue::register($di);
$loader->registerNamespaces(Config::get('app.autoload.namespaces', []), true);
コード例 #3
0
ファイル: QueueTest.php プロジェクト: phwoolcon/phwoolcon
 public function testFailedListener()
 {
     Queue::register($this->di);
     $queue = Queue::connection();
     $workerClass = TestQueueWorker::class;
     $data = ['test' => 'listener'];
     TestQueueWorker::reset();
     $queue->push("{$workerClass}::staticFailureWorker", $data);
     // Failure
     $listener = new Listener();
     $e = null;
     try {
         $listener->pop('', null, 0, 0, 1);
     } catch (Exception $e) {
     }
     $this->assertInstanceOf(Exception::class, $e);
     // Log failure job
     $result = $listener->pop('', null, 0, 0, 1);
     $this->assertTrue(fnGet($result, 'failed'));
 }