Completed
Push — master ( f2a430...034d44 )
by Freek
02:48 queued 48s
created

DirectoryCleanupCommand::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
c 1
b 0
f 1
dl 0
loc 6
rs 9.4285
cc 1
eloc 3
nc 1
nop 1
1
<?php
2
3
namespace Spatie\DirectoryCleanup;
4
5
use Illuminate\Console\Command;
6
7
class DirectoryCleanupCommand extends Command
8
{
9
    /**
10
     * The console command name.
11
     *
12
     * @var string
13
     */
14
    protected $signature = 'clean:directories';
15
    /**
16
     * The console command description.
17
     *
18
     * @var string
19
     */
20
    protected $description = 'Clean up directories.';
21
22
    public function handle()
23
    {
24
        $this->comment('Cleaning directories...');
25
26
        $directories = collect(config('laravel-directory-cleanup.directories'));
27
28
        collect($directories)->each(function ($config, $directory) {
29
30
            $this->deleteFilesIfOlderThanMinutes($directory, $config['deleteAllOlderThanMinutes']);
31
32
        });
33
34
        $this->comment('All done!');
35
    }
36
37
    protected function deleteFilesIfOlderThanMinutes(string $directory, int $minutes)
38
    {
39
        $deletedFiles = app(DirectoryCleaner::class)
40
            ->setDirectory($directory)
41
            ->deleteFilesOlderThanMinutes($minutes);
42
43
        $this->info("Deleted {$deletedFiles->count()} file(s) from {$directory}.");
44
    }
45
}
46