Code Duplication    Length = 25-25 lines in 2 locations

src/Factory/Factor/CpuFactory.php 1 location

@@ 24-48 (lines=25) @@
21
    private $weight;
22
    private $polynom;
23
24
    public function __construct(array $config)
25
    {
26
        if (
27
            !isset($config['weight']) ||
28
            !isset($config['polynom'])
29
        ) {
30
            throw new LogicException;
31
        }
32
33
        $this->weight = new Weight(new Number($config['weight']));
34
        $polynom = new Polynom;
35
36
        if (isset($config['polynom']['intercept'])) {
37
            $polynom = new Polynom(new Number($config['polynom']['intercept']));
38
        }
39
40
        foreach ($config['polynom']['degrees'] ?? [] as $degree => $coeff) {
41
            $polynom = $polynom->withDegree(
42
                new Integer($degree),
43
                new Number($coeff)
44
            );
45
        }
46
47
        $this->polynom = $polynom;
48
    }
49
50
    public function make(TimeContinuumInterface $clock, Server $server): Cpu
51
    {

src/Factory/Factor/LogFactory.php 1 location

@@ 25-49 (lines=25) @@
22
    private $weight;
23
    private $polynom;
24
25
    public function __construct(array $config)
26
    {
27
        if (
28
            !isset($config['weight']) ||
29
            !isset($config['polynom'])
30
        ) {
31
            throw new LogicException;
32
        }
33
34
        $this->weight = new Weight(new Number($config['weight']));
35
        $polynom = new Polynom;
36
37
        if (isset($config['polynom']['intercept'])) {
38
            $polynom = new Polynom(new Number($config['polynom']['intercept']));
39
        }
40
41
        foreach ($config['polynom']['degrees'] ?? [] as $degree => $coeff) {
42
            $polynom = $polynom->withDegree(
43
                new Integer($degree),
44
                new Number($coeff)
45
            );
46
        }
47
48
        $this->polynom = $polynom;
49
    }
50
51
    public function make(
52
        TimeContinuumInterface $clock,