5 * Contains \Drupal\memcache\MemcacheBackendFactory.
8 namespace Drupal\memcache;
10 use Drupal\Core\Lock\LockBackendInterface;
11 use Drupal\Core\Cache\CacheTagsChecksumInterface;
14 * Class DatabaseBackendFactory.
16 class MemcacheBackendFactory {
19 * The lock backend that should be used.
21 * @var \Drupal\Core\Lock\LockBackendInterface
26 * The settings object.
28 * @var \Drupal\memcache\DrupalMemcacheConfig
33 * The memcache factory object.
35 * @var \Drupal\memcache\DrupalMemcacheFactory
37 protected $memcacheFactory;
40 * The cache tags checksum provider.
42 * @var \Drupal\Core\Cache\CacheTagsChecksumInterface
44 protected $checksumProvider;
47 * Constructs the DatabaseBackendFactory object.
49 * @param \Drupal\Core\Lock\LockBackendInterface $lock
50 * @param \Drupal\memcache\DrupalMemcacheConfig $settings
51 * @param \Drupal\memcache\DrupalMemcacheFactory $memcache_factory
53 function __construct(LockBackendInterface $lock, DrupalMemcacheConfig $settings, DrupalMemcacheFactory $memcache_factory, CacheTagsChecksumInterface $checksum_provider) {
55 $this->settings = $settings;
56 $this->memcacheFactory = $memcache_factory;
57 $this->checksumProvider = $checksum_provider;
61 * Gets MemcacheBackend for the specified cache bin.
64 * The cache bin for which the object is created.
66 * @return \Drupal\memcache\MemcacheBackend
67 * The cache backend object for the specified cache bin.
69 public function get($bin) {
70 return new MemcacheBackend(
72 $this->memcacheFactory->get($bin),
75 $this->checksumProvider