Passed
Push — master ( 41f9d0...b01606 )
by Pascal
05:20 queued 02:32
created

TemporaryDirectories   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 24
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 7
c 1
b 0
f 0
dl 0
loc 24
rs 10
wmc 4

3 Methods

Rating   Name   Duplication   Size   Complexity  
A manager() 0 7 2
A deleteAll() 0 3 1
A create() 0 3 1
1
<?php
2
3
namespace ProtoneMedia\LaravelFFMpeg\Filesystem;
4
5
use Neutron\TemporaryFilesystem\Manager;
6
7
class TemporaryDirectories
8
{
9
    public static $manager;
10
11
    private static function manager(): Manager
12
    {
13
        if (!static::$manager) {
14
            static::$manager = Manager::create();
15
        }
16
17
        return static::$manager;
18
    }
19
20
    public static function create(): string
21
    {
22
        return static::manager()->createTemporaryDirectory();
23
    }
24
25
    /**
26
     * Loop through all directories and delete them.
27
     */
28
    public static function deleteAll(): void
29
    {
30
        static::manager()->clean();
31
    }
32
}
33