GenerateRewriteMaps   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 35
Duplicated Lines 0 %

Test Coverage

Coverage 50%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 13
dl 0
loc 35
ccs 9
cts 18
cp 0.5
rs 10
c 1
b 0
f 0
wmc 4

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 8 1
A execute() 0 10 3
1
<?php
2
declare(strict_types=1);
3
4
namespace IntegerNet\RewriteMap\Cron;
5
6
use IntegerNet\RewriteMap\Model\RewriteMapsSavingService;
7
use Magento\Framework\App\Config\ScopeConfigInterface;
8
use Magento\Framework\Exception\FileSystemException;
9
use Magento\Framework\Exception\InputException;
10
use Psr\Log\LoggerInterface;
11
12
class GenerateRewriteMaps
13
{
14
    /**
15
     * @var RewriteMapsSavingService
16
     */
17
    private $rewriteMapsSavingService;
18
    /**
19
     * @var LoggerInterface
20
     */
21
    private $logger;
22
    /**
23
     * @var ScopeConfigInterface
24
     */
25
    private $scopeConfig;
26
27 2
    public function __construct(
28
        RewriteMapsSavingService $rewriteMapsSavingService,
29
        LoggerInterface $logger,
30
        ScopeConfigInterface $scopeConfig
31
    ) {
32 2
        $this->rewriteMapsSavingService = $rewriteMapsSavingService;
33 2
        $this->logger = $logger;
34 2
        $this->scopeConfig = $scopeConfig;
35 2
    }
36
37 2
    public function execute()
38
    {
39 2
        if (!$this->scopeConfig->getValue('catalog/seo/rewrite_maps_generation_enabled')) {
40 1
            return;
41
        }
42
43
        try {
44 1
            $this->rewriteMapsSavingService->saveRewriteMapsForAllStores();
45
        } catch (InputException | FileSystemException $exception) {
46
            $this->logger->error('There was an error while generating the rewrite maps', ['exception' => $exception]);
47
        }
48 1
    }
49
}
50