CacheMapper::getFactoryClassName()   C
last analyzed

Complexity

Conditions 9
Paths 8

Size

Total Lines 22
Code Lines 16

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 15
CRAP Score 9

Importance

Changes 0
Metric Value
dl 0
loc 22
ccs 15
cts 15
cp 1
rs 6.412
c 0
b 0
f 0
cc 9
eloc 16
nc 8
nop 1
crap 9
1
<?php
2
declare(strict_types=1);
3
4
namespace WShafer\PSR11FlySystem\Cache;
5
6
use WShafer\PSR11FlySystem\MapperAbstract;
7
8
class CacheMapper extends MapperAbstract
9
{
10 8
    public function getFactoryClassName(string $type)
11
    {
12 8
        if (class_exists($type) && $type != 'memcached') {
13 1
            return $type;
14
        }
15
16
        switch ($type) {
17 7
            case 'adaptor':
18 6
            case 'adapter':
19 2
                return AdaptorCacheFactory::class;
20 5
            case 'psr6':
21 1
                return Psr6CacheFactory::class;
22 4
            case 'memory':
23 1
                return MemoryCacheFactory::class;
24 3
            case 'predis':
25 1
                return PredisCacheFactory::class;
26 2
            case 'memcached':
27 1
                return MemcachedCacheFactory::class;
28
        }
29
30 1
        return null;
31
    }
32
}
33