Completed
Push — master ( 863dbf...157f19 )
by P.R.
09:00
created

MySqlBackend   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 37
Duplicated Lines 0 %

Test Coverage

Coverage 75%

Importance

Changes 0
Metric Value
eloc 5
dl 0
loc 37
ccs 6
cts 8
cp 0.75
rs 10
c 0
b 0
f 0
wmc 4

4 Methods

Rating   Name   Duplication   Size   Complexity  
A createCrudWorker() 0 3 1
A createRoutineWrapperGeneratorWorker() 0 4 1
A createRoutineLoaderWorker() 0 3 1
A createConstantWorker() 0 3 1
1
<?php
2
declare(strict_types=1);
3
4
namespace SetBased\Stratum\MySql\Backend;
5
6
use SetBased\Stratum\Backend\Backend;
7
use SetBased\Stratum\Backend\Config;
8
use SetBased\Stratum\Backend\ConstantWorker;
9
use SetBased\Stratum\Backend\CrudWorker;
10
use SetBased\Stratum\Backend\RoutineLoaderWorker;
11
use SetBased\Stratum\Backend\RoutineWrapperGeneratorWorker;
12
use SetBased\Stratum\Backend\StratumStyle;
13
14
/**
15
 * The PhpStratum's backend for MySQL and MariaDB using mysqli.
16
 */
17
class MySqlBackend extends Backend
18
{
19
  //--------------------------------------------------------------------------------------------------------------------
20
  /**
21
   * @inheritDoc
22
   */
23 1
  public function createConstantWorker(Config $settings, StratumStyle $io): ?ConstantWorker
24
  {
25 1
    return new MySqlConstantWorker($settings, $io);
26
  }
27
28
  //--------------------------------------------------------------------------------------------------------------------
29
  /**
30
   * @inheritDoc
31
   */
32
  public function createCrudWorker(Config $settings, StratumStyle $io): ?CrudWorker
33
  {
34
    return new MySqlCrudWorker($settings, $io);
35
  }
36
37
  //--------------------------------------------------------------------------------------------------------------------
38
  /**
39
   * @inheritDoc
40
   */
41 1
  public function createRoutineLoaderWorker(Config $settings, StratumStyle $io): ?RoutineLoaderWorker
42
  {
43 1
    return new MySqlRoutineLoaderWorker($settings, $io);
44
  }
45
46
  //--------------------------------------------------------------------------------------------------------------------
47
  /**
48
   * @inheritDoc
49
   */
50 1
  public function createRoutineWrapperGeneratorWorker(Config $settings,
51
                                                      StratumStyle $io): ?RoutineWrapperGeneratorWorker
52
  {
53 1
    return new MySqlRoutineWrapperGeneratorWorker($settings, $io);
54
  }
55
56
  //--------------------------------------------------------------------------------------------------------------------
57
}
58
59
//----------------------------------------------------------------------------------------------------------------------
60