InMemoryPersistenceDefinition   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 31
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 4

Test Coverage

Coverage 70%

Importance

Changes 0
Metric Value
wmc 2
lcom 0
cbo 4
dl 0
loc 31
ccs 7
cts 10
cp 0.7
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A createConfigurator() 0 4 1
A formalize() 0 12 1
1
<?php
2
namespace PSB\Core\Persistence\InMemory;
3
4
5
use PSB\Core\Feature\FeatureSettingsExtensions;
6
use PSB\Core\Persistence\InMemory\Outbox\InMemoryOutboxPersistenceFeature;
7
use PSB\Core\Persistence\PersistenceDefinition;
8
use PSB\Core\Persistence\StorageType;
9
use PSB\Core\Util\Settings;
10
11
class InMemoryPersistenceDefinition extends PersistenceDefinition
12
{
13
    /**
14
     * Creates the PersistenceConfigurator specific to the transport implementation.
15
     *
16
     * @param Settings $settings
17
     *
18
     * @return InMemoryPersistenceConfigurator
19
     */
20 1
    public function createConfigurator(Settings $settings)
21
    {
22 1
        return new InMemoryPersistenceConfigurator($settings);
23
    }
24
25
    /**
26
     * This is where subclasses declare what storage types they support together with
27
     * the initializers for those types.
28
     */
29 1
    public function formalize()
30
    {
31 1
        $this->supports(
32 1
            StorageType::OUTBOX(),
33
            function (Settings $s) {
34
                FeatureSettingsExtensions::enableFeatureByDefault(
35
                    InMemoryOutboxPersistenceFeature::class,
36
                    $s
37
                );
38 1
            }
39
        );
40 1
    }
41
}
42