12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- /**
- * Dummy implementation of Storage interface with empty methods.
- */
- class DummyLocalStorage {
- /**
- * Empty function
- */
- getItem() { }
-
- /**
- * Empty function
- */
- setItem() { }
-
- /**
- * Empty function
- */
- removeItem() { }
- }
-
- /**
- * Wrapper class for browser's local storage object.
- */
- class JitsiLocalStorage extends DummyLocalStorage {
- /**
- * @constructor
- * @param {Storage} storage browser's local storage object.
- */
- constructor(storage) {
- super();
- this.storage = storage || new DummyLocalStorage();
- }
-
- /**
- * Returns that passed key's value.
- * @param {string} keyName the name of the key you want to retrieve
- * the value of.
- * @returns {String|null} the value of the key. If the key does not exist,
- * null is returned.
- */
- getItem(keyName) {
- return this.storage.getItem(keyName);
- }
-
- /**
- * Adds a key to the storage, or update key's value if it already exists.
- * @param {string} keyName the name of the key you want to create/update.
- * @param {string} keyValue the value you want to give the key you are
- * creating/updating.
- */
- setItem(keyName, keyValue) {
- return this.storage.setItem(keyName, keyValue);
- }
-
- /**
- * Remove a key from the storage.
- * @param {string} keyName the name of the key you want to remove.
- */
- removeItem(keyName) {
- return this.storage.removeItem(keyName);
- }
- }
-
- export default new JitsiLocalStorage(window.localStorage);
|