class KeyValueExpirableFactory

Defines the key/value store factory.

Hierarchy

Expanded class hierarchy of KeyValueExpirableFactory

1 string reference to 'KeyValueExpirableFactory'
core.services.yml in drupal/core/core.services.yml
drupal/core/core.services.yml
1 service uses KeyValueExpirableFactory

File

drupal/core/lib/Drupal/Core/KeyValueStore/KeyValueExpirableFactory.php, line 15
Contains Drupal\Core\KeyValueStore\KeyValueExpirableFactory.

Namespace

Drupal\Core\KeyValueStore
View source
class KeyValueExpirableFactory extends KeyValueFactory {

  /**
   * Constructs a new expirable key/value store for a given collection name.
   *
   * @param string $collection
   *   The name of the collection holding key and value pairs.
   *
   * @return \Drupal\Core\KeyValueStore\KeyValueStoreExpirableInterface
   *   An expirable key/value store implementation for the given $collection.
   */
  public function get($collection) {
    global $conf;
    if (!isset($this->stores[$collection])) {
      if (isset($conf['keyvalue_expirable_service_' . $collection])) {
        $service_name = $conf['keyvalue_expirable_service_' . $collection];
      }
      elseif (isset($conf['keyvalue_expirable_default'])) {
        $service_name = $conf['keyvalue_expirable_default'];
      }
      else {
        $service_name = 'keyvalue.expirable.database';
      }
      $this->stores[$collection] = $this->container
        ->get($service_name)
        ->get($collection);
    }
    return $this->stores[$collection];
  }

}

Members

Namesort descending Modifiers Type Description Overrides
KeyValueExpirableFactory::get public function Constructs a new expirable key/value store for a given collection name. Overrides KeyValueFactory::get
KeyValueFactory::$container protected property var \Symfony\Component\DependencyInjection\ContainerInterface
KeyValueFactory::$stores protected property Instantiated stores, keyed by collection name.
KeyValueFactory::__construct function