Code Coverage
 
Classes and Traits
Functions and Methods
Lines
Total
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 6
CRAP
0.00% covered (danger)
0.00%
0 / 13
JobWithCronTable
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 6
72
0.00% covered (danger)
0.00%
0 / 13
 __construct
0.00% covered (danger)
0.00%
0 / 1
6
0.00% covered (danger)
0.00%
0 / 4
 middleware
0.00% covered (danger)
0.00%
0 / 1
2
0.00% covered (danger)
0.00%
0 / 1
 getName
0.00% covered (danger)
0.00%
0 / 1
2
0.00% covered (danger)
0.00%
0 / 1
 argument
0.00% covered (danger)
0.00%
0 / 1
6
0.00% covered (danger)
0.00%
0 / 3
 getArgs
0.00% covered (danger)
0.00%
0 / 1
2
0.00% covered (danger)
0.00%
0 / 2
 line
0.00% covered (danger)
0.00%
0 / 1
2
0.00% covered (danger)
0.00%
0 / 2
1<?php
2
3namespace Qmp\Laravel\CommandsLaravel\Jobs;
4
5use Exception;
6use Illuminate\Bus\Queueable;
7use Illuminate\Queue\SerializesModels;
8use Illuminate\Queue\InteractsWithQueue;
9use Illuminate\Contracts\Queue\ShouldQueue;
10use Illuminate\Foundation\Bus\Dispatchable;
11use Illuminate\Support\Facades\Log;
12use Qmp\Laravel\CommandsLaravel\Middleware\Core\Interfaces\IOConnectorInterface;
13use Qmp\Laravel\CommandsLaravel\Middleware\Core\Traits\MiddlewareDataAccess;
14use Qmp\Laravel\CommandsLaravel\Middleware\Core\Traits\ReportException;
15use Qmp\Laravel\CommandsLaravel\Middleware\Library\Job\WithCronTable;
16
17class JobWithCronTable implements ShouldQueue, IOConnectorInterface
18{
19    use Dispatchable,
20        InteractsWithQueue,
21        Queueable,
22        SerializesModels,
23        MiddlewareDataAccess,
24        ReportException;
25
26    /**
27     * 
28     */
29    const NAME_PREFIX = 'queue:work';
30
31    /**
32     * Undocumented variable
33     *
34     * @var array
35     */
36    protected $cronTableMiddleware = [ WithCronTable::class ];
37
38    /**
39     * Undocumented variable
40     *
41     * @var integer
42     */
43    public $tries = 5;
44
45    /**
46     * Undocumented function
47     */
48    public function __construct()
49    {
50        $this->initMiddlewareData();
51
52        if($this->tries <= 1) {
53            throw new Exception('Public $tries must be greater than 1 !');
54        }
55    }
56
57    /**
58     * Undocumented function
59     *
60     * @return array
61     */
62    public function middleware(): array
63    {
64        return  $this->cronTableMiddleware;
65    }
66
67    /**
68     * Undocumented function
69     *
70     * @return string
71     */
72    public function getName()
73    {
74        return self::NAME_PREFIX  . ' ' . $this->connection;
75    }
76
77    /**
78     * Undocumented function
79     *
80     * @param [type] $argument
81     * @return void
82     */
83    public function argument($argument) {
84        if(isset($this->$argument)) {
85            return $this->$argument;
86        }
87
88        return null;
89    }
90
91    /**
92     * Undocumented function
93     *
94     * @return array
95     */
96    public function getArgs(): array
97    {
98        return [
99            'connection' => $this->connection,
100            'job' => class_basename(get_called_class())
101        ];
102    }
103
104    /**
105     * Undocumented function
106     *
107     * @param [type] $message
108     * @return void
109     */
110    public function line($message, $type)
111    {
112        Log::debug($message);
113    }
114}