createConfigurator()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 0
Metric Value
dl 0
loc 4
ccs 2
cts 2
cp 1
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
crap 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