Completed
Push — cache ( ce1318 )
by Akihito
11s
created

StorageMemcachedCacheProvider   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 32
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 1

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 2
lcom 1
cbo 1
dl 0
loc 32
ccs 9
cts 9
cp 1
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A get() 0 9 1
1
<?php
2
/**
3
 * This file is part of the BEAR.QueryRepository package.
4
 *
5
 * @license http://opensource.org/licenses/MIT MIT
6
 */
7
namespace BEAR\QueryRepository;
8
9
use Doctrine\Common\Cache\MemcachedCache;
10
use Ray\Di\Di\Named;
11
use Ray\Di\ProviderInterface;
12
13
class StorageMemcachedCacheProvider implements ProviderInterface
14
{
15
    /**
16
     * memcached server list
17
     *
18
     * @var array
19
     */
20
    private $servers;
21
22
    /**
23
     * @Named("servers=memcached_servers")
24
     *
25
     * @see http://php.net/manual/en/memcached.addservers.php
26
     */
27 1
    public function __construct(array $servers)
28
    {
29 1
        $this->servers = $servers;
30 1
    }
31
32
    /**
33
     * {@inheritdoc}
34
     */
35 1
    public function get()
36
    {
37 1
        $memcachedCache = new MemcachedCache();
38 1
        $memcache = new \Memcached();
39 1
        $memcache->addServers($this->servers);
40 1
        $memcachedCache->setMemcached($memcache);
41
42 1
        return $memcachedCache;
43
    }
44
}
45