Completed
Push — spike ( 20d8a1...1c889c )
by Akihito
06:40
created

StorageMemcachedCacheProvider   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 32
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 1

Test Coverage

Coverage 0%

Importance

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

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
    public function __construct(array $servers)
28
    {
29
        $this->servers = $servers;
30
    }
31
32
    /**
33
     * {@inheritdoc}
34
     */
35
    public function get()
36
    {
37
        $memcachedCache = new MemcachedCache();
38
        $memcache = new \Memcached();
39
        $memcache->addServers($this->servers);
40
        $memcachedCache->setMemcached($memcache);
41
42
        return $memcachedCache;
43
    }
44
}
45