本文整理汇总了PHP中Illuminate\Contracts\Queue\Job类的典型用法代码示例。如果您正苦于以下问题:PHP Job类的具体用法?PHP Job怎么用?PHP Job使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Job类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: fire
public function fire(Job $job, $data)
{
if ($job->attempts() > 2) {
$job->delete();
}
$this->factory->getProject($data['project'])->githubSync()->syncAll();
}
开发者ID:docit,项目名称:github-hook,代码行数:7,代码来源:GithubSyncProject.php
示例2: raiseFailedJobEvent
/**
* Raise the failed queue job event.
*
* @param \Illuminate\Contracts\Queue\Job $job
* @return void
*/
protected function raiseFailedJobEvent(Job $job)
{
$data = json_decode($job->getRawBody(), true);
if ($this->container->bound('events')) {
$this->container['events']->fire('illuminate.queue.failed', array('sync', $job, $data));
}
}
开发者ID:betes-curieuses-design,项目名称:ElieJosiePhotographie,代码行数:13,代码来源:SyncQueue.php
示例3: fire
/**
* Handle the queued job.
*
* @param \Illuminate\Contracts\Queue\Job $job
* @param array $data
* @return void
*/
public function fire(Job $job, array $data)
{
$event = unserialize($data['event']);
$name = method_exists($event, 'broadcastAs') ? $event->broadcastAs() : get_class($event);
$this->broadcaster->broadcast($event->broadcastOn(), $name, $this->getPayloadFromEvent($event));
$job->delete();
}
开发者ID:scrobot,项目名称:Lumen,代码行数:14,代码来源:BroadcastEvent.php
示例4: process
public function process($connection, Job $job, $maxTries = 0, $delay = 0)
{
if ($maxTries > 0 && $job->attempts() > $maxTries) {
return $this->logFailedJob($connection, $job);
}
try {
// First we will fire off the job. Once it is done we will see if it will
// be auto-deleted after processing and if so we will go ahead and run
// the delete method on the job. Otherwise we will just keep moving.
$job->fire();
return ['job' => $job, 'failed' => false];
} catch (Exception $e) {
// If we catch an exception, we will attempt to release the job back onto
// the queue so it is not lost. This will let is be retried at a later
// time by another listener (or the same one). We will do that here.
if (!$job->isDeleted()) {
// Add exponential delay based on the job attempts and the provided delay seconds.
// The delay will default to 30 seconds by default or when delay is set to zero.
// A max delay of 2 hours will be used when exponential delay exceeds 2 hours
// Example of delay in seconds: 30, 60, 90, 180, ... 7200
$delay = $delay ?: 30;
$delay = $job->attempts() > 1 ? pow(2, $job->attempts() - 2) * $delay : 0;
$maxDelay = 60 * 60 * 2;
if ($delay > $maxDelay) {
$delay = $maxDelay;
}
$job->release($delay);
}
throw $e;
}
}
开发者ID:deboorn,项目名称:expbackoffworker,代码行数:31,代码来源:Worker.php
示例5: fire
/**
* @param \Illuminate\Contracts\Queue\Job $job
* @param array $data
* @return mixed
*/
public function fire($job, array $data)
{
$id = $data[0];
$task = $this->serializer->unserialize($data[1]);
$response = call_user_func($task);
$job->delete();
$this->publisher->publish("kyew:task:{$id}", $response);
}
开发者ID:adamnicholson,项目名称:kyew,代码行数:13,代码来源:IlluminateQueueHandler.php
示例6: fire
public function fire(Job $job, $data)
{
$this->codex->log('alert', 'codex.hooks.git.sync.project.command', ['jobName' => $job->getName(), 'jobAttempts' => $job->attempts(), 'project' => $data['project']]);
if ($job->attempts() > 2) {
$job->delete();
}
$this->codex->getProject($data['project'])->gitSyncer()->syncAll();
}
开发者ID:docit,项目名称:git-hook,代码行数:8,代码来源:SyncProject.php
示例7: handleQueuedSending
/**
* Handle a queued push notification message job.
*
* @param \Illuminate\Contracts\Queue\Job $job
* @param DeveloperDynamo\PushNotification\Payload\AbstractPayload $payload
* @param array<DeveloperDynamo\PushNotification\Token> $tokens
* @return void
*/
public function handleQueuedSending($job, $data)
{
//Unserialize data
$payload = unserialize($data['payload']);
$tokens = unserialize($data['tokens']);
//Execute task
$this->send($payload, $tokens);
//Delete job from the queue
$job->delete();
}
开发者ID:developerdynamo,项目名称:laravel-push-notification,代码行数:18,代码来源:PushNotificationBridge.php
示例8: fire
/**
* Run queue on deleting a model.
*
* @param \Illuminate\Contracts\Queue\Job $job
* @param array $data
*
* @return void
*/
public function fire(Job $job, array $data)
{
$database = Arr::get($data, 'database');
$migrator = $this->resolveMigrator($data);
$entity = $this->resolveModelEntity($migrator, $data);
if (is_null($entity)) {
$job->delete();
return;
}
$migrator->runReset($entity, $database);
$job->delete();
}
开发者ID:DavidIWilson,项目名称:site1,代码行数:20,代码来源:DeleteTenant.php
示例9: writeOutput
/**
* Write the status output for the queue walker.
*
* @param \Illuminate\Contracts\Queue\Job $job
* @param bool $failed
* @return void
*/
protected function writeOutput(Job $job, $failed)
{
if ($failed) {
$this->output->writeln('<error>Failed:</error> ' . $job->getName());
} else {
$this->output->writeln('<info>Processed:</info> ' . $job->getName());
}
}
开发者ID:salopot,项目名称:laravel-queue-walker,代码行数:15,代码来源:WalkCommand.php
示例10: raiseFailedJobEvent
/**
* Raise the failed queue job event.
*
* @param string $connection
* @param \Illuminate\Contracts\Queue\Job $job
* @return void
*/
protected function raiseFailedJobEvent($connection, Job $job)
{
if ($this->events) {
$data = json_decode($job->getRawBody(), true);
$this->events->fire(new Events\JobFailed($connection, $job, $data));
}
}
开发者ID:teckwei1993,项目名称:laravel-in-directadmin,代码行数:14,代码来源:Worker.php
示例11: writeOutput
/**
* Write the status output for the queue worker.
*
* @param \Illuminate\Contracts\Queue\Job $job
* @param bool $failed
* @return void
*/
protected function writeOutput(Job $job, $failed)
{
if ($failed) {
$this->output->writeln('<error>[' . Carbon::now()->format('Y-m-d H:i:s') . '] Failed:</error> ' . $job->getName());
} else {
$this->output->writeln('<info>[' . Carbon::now()->format('Y-m-d H:i:s') . '] Processed:</info> ' . $job->getName());
}
}
开发者ID:saj696,项目名称:pipe,代码行数:15,代码来源:WorkCommand.php
示例12: handleFailedJob
/**
* Handle the failed job.
*
* @param \Illuminate\Contracts\Queue\Job $job
* @param \Exception $e
* @return array
*/
protected function handleFailedJob(Job $job, $e)
{
$job->failed($e);
$this->raiseFailedJobEvent($job, $e);
}
开发者ID:bryanashley,项目名称:framework,代码行数:12,代码来源:SyncQueue.php
示例13: fire
/**
* fire.
*
* @author Casper Rasmussen <[email protected]>
*
* @param \Illuminate\Contracts\Queue\Job $job
* @param $queuName
*
* @return void
*/
public function fire(Job $job, $queueName)
{
(new Client())->patch('https://nstack.io/api/queues/monitors/' . $queueName);
$job->delete();
}
开发者ID:nodes-php,项目名称:core,代码行数:15,代码来源:QueueMonitorJob.php
示例14: setSqsJob
public function setSqsJob(Job $job)
{
$this->sqs_job = $job->getSqsJob();
}
开发者ID:kirschbaum,项目名称:laravel-sns-subscription-queues,代码行数:4,代码来源:QueueWorker.php
示例15: handleQueuedMessage
/**
* Handle a queued e-mail message job.
*
* @param \Illuminate\Contracts\Queue\Job $job
* @param array $data
* @return void
*/
public function handleQueuedMessage($job, $data)
{
$this->send($data['view'], $data['data'], $this->getQueuedCallable($data));
$job->delete();
}
开发者ID:Volicon,项目名称:framework,代码行数:12,代码来源:Mailer.php
示例16: raiseAfterJobEvent
/**
* Raise the after queue job event.
*
* @param string $connection
* @param \Illuminate\Contracts\Queue\Job $job
* @return void
*/
protected function raiseAfterJobEvent($connection, Job $job)
{
if ($this->events) {
$data = json_decode($job->getRawBody(), true);
$this->events->fire('illuminate.queue.after', [$connection, $job, $data]);
}
}
开发者ID:edwardricardo,项目名称:zenska,代码行数:14,代码来源:Worker.php
示例17: raiseFailedJobEvent
/**
* Raise the failed queue job event.
*
* @param \Illuminate\Contracts\Queue\Job $job
* @return void
*/
protected function raiseFailedJobEvent(Job $job)
{
$data = json_decode($job->getRawBody(), true);
if ($this->container->bound('events')) {
$this->container['events']->fire(new Events\JobFailed('sync', $job, $data));
}
}
开发者ID:risan,项目名称:framework,代码行数:13,代码来源:SyncQueue.php
示例18: fire
/**
* Handle the queued job.
*
* @param \Illuminate\Contracts\Queue\Job $job
* @param array $data
* @return void
*/
public function fire(Job $job, array $data)
{
call_user_func_array([$this->container->make($data['class']), $data['method']], $data['data']);
$job->delete();
}
开发者ID:visualturk,项目名称:framework,代码行数:12,代码来源:FireQueuedHandler.php
示例19: failJob
/**
* Mark the given job as failed and raise the relevant event.
*
* @param string $connectionName
* @param \Illuminate\Contracts\Queue\Job $job
* @param \Exception $e
* @return void
*/
protected function failJob($connectionName, $job, $e)
{
if ($job->isDeleted()) {
return;
}
try {
// If the job has failed, we will delete it, call the "failed" method and then call
// an event indicating the job has failed so it can be logged if needed. This is
// to allow every developer to better keep monitor of their failed queue jobs.
$job->delete();
$job->failed($e);
} finally {
$this->raiseFailedJobEvent($connectionName, $job, $e);
}
}
开发者ID:bryanashley,项目名称:framework,代码行数:23,代码来源:Worker.php
示例20: handleQueuedMessage
/**
* Handle a queued e-mail message job.
*
* @param \Illuminate\Contracts\Queue\Job $job
* @param array $data
* @return void
*/
public function handleQueuedMessage($job, $data)
{
$this->send($data['recepient'], $data['message'], $data['sender'], $data['message_type']);
$job->delete();
}
开发者ID:adetoola,项目名称:sms,代码行数:12,代码来源:SMS.php
注:本文中的Illuminate\Contracts\Queue\Job类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论