Completed
Push — master ( c0e612...954278 )
by Jasper
04:23
created

ClearStaticCache::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 1

Importance

Changes 0
Metric Value
eloc 2
dl 0
loc 5
ccs 3
cts 3
cp 1
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
crap 1
1
<?php
2
3
namespace Swis\Laravel\StaticRequestCache\Commands;
4
5
use Illuminate\Console\Command;
6
use Illuminate\Filesystem\Filesystem;
7
8
class ClearStaticCache extends Command
9
{
10
    /**
11
     * The name and signature of the console command.
12
     *
13
     * @var string
14
     */
15
    protected $signature = 'static-html-cache:clear';
16
17
    /**
18
     * The console command description.
19
     *
20
     * @var string
21
     */
22
    protected $description = 'Clear static html-response caches';
23
24
    /**
25
     * @var Filesystem
26
     */
27
    private $files;
28
29
    /**
30
     * Create a new command instance.
31
     *
32
     * @param Filesystem $files
33
     */
34 7
    public function __construct(Filesystem $files)
35
    {
36 7
        $this->files = $files;
37
38 7
        parent::__construct();
39 7
    }
40
41
    /**
42
     * Execute the console command.
43
     */
44 7
    public function handle()
45
    {
46 7
        $this->clearStorageDirectory(config('static-html-cache.cache_path_prefix'));
47
48 7
        $this->info('Static caches cleared!');
49 7
    }
50
51
    /**
52
     * @param string $path
53
     */
54 7
    private function clearStorageDirectory(string $path)
55
    {
56 7
        $path = public_path($path);
57 7
        $this->comment("Clearing `{$path}`…");
58
59 7
        if ($this->files->isDirectory($path)) {
60 7
            $this->files->deleteDirectory($path, true);
61
        }
62 7
    }
63
}
64