@@ 22-51 (lines=30) @@ | ||
19 | /** |
|
20 | * @author Tobias Nyholm <[email protected]> |
|
21 | */ |
|
22 | final class DoctrineMemcachedFactory extends AbstractDoctrineAdapterFactory |
|
23 | { |
|
24 | /** |
|
25 | * {@inheritdoc} |
|
26 | */ |
|
27 | public function getAdapter(array $config) |
|
28 | { |
|
29 | $memcached = new Memcached(); |
|
30 | $memcached->addServer($config['host'], $config['port']); |
|
31 | ||
32 | $client = new MemcachedCache(); |
|
33 | $client->setMemcached($memcached); |
|
34 | ||
35 | return new DoctrineCachePool($client); |
|
36 | } |
|
37 | ||
38 | /** |
|
39 | * {@inheritdoc} |
|
40 | */ |
|
41 | protected static function configureOptionResolver(OptionsResolver $resolver) |
|
42 | { |
|
43 | $resolver->setDefaults([ |
|
44 | 'host' => '127.0.0.1', |
|
45 | 'port' => '11211', |
|
46 | ]); |
|
47 | ||
48 | $resolver->setAllowedTypes('host', ['string']); |
|
49 | $resolver->setAllowedTypes('port', ['string', 'int']); |
|
50 | } |
|
51 | } |
|
52 |
@@ 22-51 (lines=30) @@ | ||
19 | /** |
|
20 | * @author Tobias Nyholm <[email protected]> |
|
21 | */ |
|
22 | final class DoctrineMemcacheFactory extends AbstractDoctrineAdapterFactory |
|
23 | { |
|
24 | /** |
|
25 | * {@inheritdoc} |
|
26 | */ |
|
27 | public function getAdapter(array $config) |
|
28 | { |
|
29 | $memcache = new Memcache(); |
|
30 | $memcache->connect($config['host'], $config['port']); |
|
31 | ||
32 | $client = new MemcacheCache(); |
|
33 | $client->setMemcache($memcache); |
|
34 | ||
35 | return new DoctrineCachePool($client); |
|
36 | } |
|
37 | ||
38 | /** |
|
39 | * {@inheritdoc} |
|
40 | */ |
|
41 | protected static function configureOptionResolver(OptionsResolver $resolver) |
|
42 | { |
|
43 | $resolver->setDefaults([ |
|
44 | 'host' => '127.0.0.1', |
|
45 | 'port' => '11211', |
|
46 | ]); |
|
47 | ||
48 | $resolver->setAllowedTypes('host', ['string']); |
|
49 | $resolver->setAllowedTypes('port', ['string', 'int']); |
|
50 | } |
|
51 | } |
|
52 |
@@ 21-50 (lines=30) @@ | ||
18 | /** |
|
19 | * @author Tobias Nyholm <[email protected]> |
|
20 | */ |
|
21 | final class DoctrineRedisFactory extends AbstractDoctrineAdapterFactory |
|
22 | { |
|
23 | /** |
|
24 | * {@inheritdoc} |
|
25 | */ |
|
26 | public function getAdapter(array $config) |
|
27 | { |
|
28 | $redis = new \Redis(); |
|
29 | $redis->connect($config['host'], $config['port']); |
|
30 | ||
31 | $client = new RedisCache(); |
|
32 | $client->setRedis($redis); |
|
33 | ||
34 | return new DoctrineCachePool($client); |
|
35 | } |
|
36 | ||
37 | /** |
|
38 | * {@inheritdoc} |
|
39 | */ |
|
40 | protected static function configureOptionResolver(OptionsResolver $resolver) |
|
41 | { |
|
42 | $resolver->setDefaults([ |
|
43 | 'host' => '127.0.0.1', |
|
44 | 'port' => '6379', |
|
45 | ]); |
|
46 | ||
47 | $resolver->setAllowedTypes('host', ['string']); |
|
48 | $resolver->setAllowedTypes('port', ['string', 'int']); |
|
49 | } |
|
50 | } |
|
51 |