You are here

Drupal8State.php in Rocket.Chat 8.2

File

modules/rocket_chat_api/src/RocketChat/Drupal8State.php
View source
<?php

namespace Drupal\rocket_chat_api\RocketChat;

use Drupal\Core\State\StateInterface;

/**
 * Class Drupal8State
 *
 * @package Drupal\rocket_chat_api\RocketChat
 * connects the RocketChat State with the Drupal State (not an implementation but a proxy for state.
 */
class Drupal8State implements RocketChatStateinterface, StateInterface {

  /**
   * @var \Drupal\Core\State\StateInterface
   */
  private $state;
  public function __construct(StateInterface $state) {
    $this->state = $state;
  }

  /**
   * Returns the stored value for a given key.
   *
   * @param string $key
   *   The key of the data to retrieve.
   * @param mixed $default
   *   The default value to use if the key is not found.
   *
   * @return mixed
   *   The stored value, or NULL if no value exists.
   */
  public function get($key, $default = NULL) {
    return $this->state
      ->get($key, $default);
  }

  /**
   * Returns the stored key/value pairs for a given set of keys.
   *
   * @param array $keys
   *   A list of keys to retrieve.
   *
   * @return array
   *   An associative array of items successfully returned, indexed by key.
   */
  public function getMultiple(array $keys) {
    return $this->state
      ->getMultiple($keys);
  }

  /**
   * Saves a value for a given key.
   *
   * @param string $key
   *   The key of the data to store.
   * @param mixed $value
   *   The data to store.
   */
  public function set($key, $value) {
    return $this->state
      ->set($key, $value);
  }

  /**
   * Saves key/value pairs.
   *
   * @param array $data
   *   An associative array of key/value pairs.
   */
  public function setMultiple(array $data) {
    return $this->state
      ->setMultiple($data);
  }

  /**
   * Deletes an item.
   *
   * @param string $key
   *   The item name to delete.
   */
  public function delete($key) {
    return $this->state
      ->delete($key);
  }

  /**
   * Deletes multiple items.
   *
   * @param array $keys
   *   A list of item names to delete.
   */
  public function deleteMultiple(array $keys) {
    return $this->state
      ->deleteMultiple($keys);
  }

  /**
   * Resets the static cache.
   *
   * This is mainly used in testing environments.
   */
  public function resetCache() {
    return $this->state
      ->resetCache();
  }

}

Classes

Namesort descending Description
Drupal8State Class Drupal8State