3 namespace Drupal\Core\KeyValueStore;
6 * Defines a default key/value store implementation.
8 class MemoryStorage extends StorageBase {
11 * The actual storage of key-value pairs.
20 public function has($key) {
21 return array_key_exists($key, $this->data);
27 public function get($key, $default = NULL) {
28 return array_key_exists($key, $this->data) ? $this->data[$key] : $default;
34 public function getMultiple(array $keys) {
35 return array_intersect_key($this->data, array_flip($keys));
41 public function getAll() {
48 public function set($key, $value) {
49 $this->data[$key] = $value;
55 public function setIfNotExists($key, $value) {
56 if (!isset($this->data[$key])) {
57 $this->data[$key] = $value;
66 public function setMultiple(array $data) {
67 $this->data = $data + $this->data;
73 public function rename($key, $new_key) {
74 $this->data[$new_key] = $this->data[$key];
75 unset($this->data[$key]);
81 public function delete($key) {
82 unset($this->data[$key]);
88 public function deleteMultiple(array $keys) {
89 foreach ($keys as $key) {
90 unset($this->data[$key]);
97 public function deleteAll() {