Passed
Pull Request — master (#17)
by BENOIT
02:04
created

NullStorage   A

Complexity

Total Complexity 6

Size/Duplication

Total Lines 30
Duplicated Lines 0 %

Test Coverage

Coverage 50%

Importance

Changes 0
Metric Value
eloc 6
dl 0
loc 30
rs 10
c 0
b 0
f 0
ccs 2
cts 4
cp 0.5
wmc 6

6 Methods

Rating   Name   Duplication   Size   Complexity  
A storeSubscriptions() 0 3 1
A findSubscriptions() 0 3 1
A retrieveMessagesAfterID() 0 3 1
A storeMessage() 0 3 1
A getLastEventID() 0 3 1
A removeSubscriptions() 0 3 1
1
<?php
2
3
namespace BenTools\MercurePHP\Storage\NullStorage;
4
5
use BenTools\MercurePHP\Model\Message;
6
use BenTools\MercurePHP\Model\Subscription;
7
use BenTools\MercurePHP\Storage\StorageInterface;
8
use React\Promise\PromiseInterface;
9
10
use function React\Promise\resolve;
11
12
final class NullStorage implements StorageInterface
13
{
14
    public function getLastEventID(): PromiseInterface
15
    {
16
        return resolve(null);
17
    }
18 2
19
    public function retrieveMessagesAfterID(string $id, array $subscribedTopics): PromiseInterface
20 2
    {
21
        return resolve([]);
22
    }
23
24
    public function storeMessage(string $topic, Message $message): PromiseInterface
25
    {
26
        return resolve();
27
    }
28
29
    public function storeSubscriptions(array $subscriptions): PromiseInterface
30
    {
31
        return resolve();
32
    }
33
34
    public function removeSubscriptions(iterable $subscriptions): PromiseInterface
35
    {
36
        return resolve();
37
    }
38
39
    public function findSubscriptions(?string $topic = null, ?string $subscriber = null): PromiseInterface
40
    {
41
        return resolve([]);
42
    }
43
}
44