Configuration   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 36
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 0

Importance

Changes 0
Metric Value
wmc 6
lcom 1
cbo 0
dl 0
loc 36
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A getCronConfiguration() 0 16 5
1
<?php
2
namespace LizardMedia\CronScheduler\Model\Cron;
3
4
use Magento\Cron\Model\ConfigInterface;
5
6
/**
7
 * Class Configuration
8
 * @package LizardMedia\CronScheduler\Model\Cron
9
 */
10
class Configuration
11
{
12
    /**
13
     * @var ConfigInterface
14
     */
15
    private $cronConfigurationInterface;
16
17
    /**
18
     * Configuration constructor.
19
     * @param ConfigInterface $config
20
     */
21
    public function __construct(ConfigInterface $config)
22
    {
23
        $this->cronConfigurationInterface = $config;
24
    }
25
26
    /**
27
     * @return array
28
     */
29
    public function getCronConfiguration()
30
    {
31
        $cronConfiguration = [];
32
        $cronJobs = $this->cronConfigurationInterface->getJobs();
33
        foreach ($cronJobs as $group => $jobs) {
34
            foreach ($jobs as $code => $job) {
35
                $job['group'] = $group;
36
                $job['code'] = $code;
37
                if (!isset($job['config_schedule'])) {
38
                    $job['config_schedule'] = (isset($job['schedule'])) ? $job['schedule'] : '';
39
                }
40
                $cronConfiguration[$code] = $job;
41
            }
42
        }
43
        return $cronConfiguration;
44
    }
45
}
46