ImageProcessingJob::__construct()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 5
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 3
nc 1
nop 2
1
<?php
2
3
namespace HustleWorks\ChuteLaravel\Jobs;
4
5
use HustleWorks\Chute\DTO\ImageConfiguration;
6
use HustleWorks\ChuteLaravel\Services\ImageProcessorService;
7
use Illuminate\Bus\Queueable;
8
use Illuminate\Queue\SerializesModels;
9
use Illuminate\Queue\InteractsWithQueue;
10
use Illuminate\Contracts\Queue\ShouldQueue;
11
use Illuminate\Foundation\Bus\Dispatchable;
12
13
class ImageProcessingJob implements ShouldQueue
14
{
15
    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
16
17
    /**
18
     * @var array
19
     */
20
    private $data;
21
22
    /**
23
     * @var ImageConfiguration
24
     */
25
    private $config;
26
27
    /**
28
     * Create a new job instance.
29
     *
30
     * @param array              $data
31
     * @param ImageConfiguration $config
32
     */
33
    public function __construct(array $data, ImageConfiguration $config)
34
    {
35
        $this->data   = $data;
36
        $this->config = $config;
37
    }
38
39
    /**
40
     * Execute the job.
41
     *
42
     * @return void
43
     */
44
    public function handle()
45
    {
46
        (new ImageProcessorService)->handle($this->data['image'], $this->config);
47
    }
48
}
49