Completed
Push — master ( cc89ae...0c9118 )
by recca
04:22
created

UploadManager   A

Complexity

Total Complexity 8

Size/Duplication

Total Lines 80
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 8

Test Coverage

Coverage 86.67%

Importance

Changes 4
Bugs 1 Features 0
Metric Value
wmc 8
lcom 1
cbo 8
dl 0
loc 80
ccs 13
cts 15
cp 0.8667
rs 10
c 4
b 1
f 0

6 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 6 3
A getDefaultDriver() 0 4 1
A createFineUploaderDriver() 0 4 1
A createDropzoneDriver() 0 4 1
A createFileapiDriver() 0 4 1
A createPluploadDriver() 0 4 1
1
<?php
2
3
namespace Recca0120\Upload;
4
5
use Illuminate\Http\Request;
6
use Illuminate\Support\Manager;
7
8
class UploadManager extends Manager
9
{
10
    /**
11
     * $request.
12
     *
13
     * @var \Illuminate\Http\Request
14
     */
15
    protected $request;
16
17
    /**
18
     * $files.
19
     *
20
     * @var \Recca0120\Upload\Filesystem
21
     */
22
    protected $files;
23
24
    /**
25
     * __construct.
26
     *
27
     * @param \Illuminate\Contracts\Foundation\Application $app
28
     * @param \Illuminate\Http\Request $request
29
     * @param \Recca0120\Upload\Filesystem $files
30
     */
31 4
    public function __construct($app, Request $request = null, Filesystem $files = null)
32
    {
33 4
        parent::__construct($app);
34 4
        $this->request = $request ?: Request::capture();
35 4
        $this->files = $files ?: new Filesystem();
36 4
    }
37
38
    /**
39
     * default driver.
40
     *
41
     * @return string
42
     */
43 1
    public function getDefaultDriver()
44
    {
45 1
        return 'fileapi';
46
    }
47
48
    /**
49
     * create fine uploader driver.
50
     *
51
     * @return Receiver
52
     */
53
    protected function createDropzoneDriver()
54
    {
55
        return new Receiver(new Dropzone($this->app['config']['upload'], $this->request, $this->files));
56
    }
57
58
    /**
59
     * create fileapi driver.
60
     *
61
     * @return Receiver
62
     */
63 1
    protected function createFileapiDriver()
64
    {
65 1
        return new Receiver(new FileAPI($this->app['config']['upload'], $this->request, $this->files));
66
    }
67
68
    /**
69
     * create fine uploader driver.
70
     *
71
     * @return Receiver
72
     */
73 1
    protected function createFineUploaderDriver()
74
    {
75 1
        return new Receiver(new FineUploader($this->app['config']['upload'], $this->request, $this->files));
76
    }
77
78
    /**
79
     * create plupload driver.
80
     *
81
     * @return Receiver
82
     */
83 1
    protected function createPluploadDriver()
84
    {
85 1
        return new Receiver(new Plupload($this->app['config']['upload'], $this->request, $this->files));
86
    }
87
}
88