BackendInterface.php
1 year ago
BaseSettingsTable.php
2 years ago
Cache.php
2 years ago
Config.php
2 years ago
MeasurableSettingsTable.php
6 months ago
NullBackend.php
2 years ago
PluginSettingsTable.php
1 month ago
SitesTable.php
1 month ago
BackendInterface.php
44 lines
| 1 | <?php |
| 2 | |
| 3 | /** |
| 4 | * Matomo - free/libre analytics platform |
| 5 | * |
| 6 | * @link https://matomo.org |
| 7 | * @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later |
| 8 | */ |
| 9 | namespace Piwik\Settings\Storage\Backend; |
| 10 | |
| 11 | /** |
| 12 | * Interface for a storage backend. Any new storage backend must implement this interface. |
| 13 | */ |
| 14 | interface BackendInterface |
| 15 | { |
| 16 | /** |
| 17 | * Get an id that identifies the current storage. Eg `Plugin_$pluginName_Settings` could be a storage id |
| 18 | * for plugin settings. It's kind of like a cache key and the value will be actually used for this by a cache |
| 19 | * decorator. |
| 20 | * |
| 21 | * @return string |
| 22 | */ |
| 23 | public function getStorageId(); |
| 24 | /** |
| 25 | * Saves (persists) the current setting values in the database. Always all values that belong to a group of |
| 26 | * settings or backend needs to be passed. Usually existing values will be deleted and new values will be saved |
| 27 | * @param array $values An array of key value pairs where $settingName => $settingValue. |
| 28 | * Eg array('settingName1' > 'settingValue1') |
| 29 | */ |
| 30 | public function save($values); |
| 31 | /** |
| 32 | * Deletes all saved settings. |
| 33 | * @return void |
| 34 | */ |
| 35 | public function delete(); |
| 36 | /** |
| 37 | * Loads previously saved setting values and returns them (if some were saved) |
| 38 | * |
| 39 | * @return ?array An array of key value pairs where $settingName => $settingValue. |
| 40 | * Eg array('settingName1' > 'settingValue1') |
| 41 | */ |
| 42 | public function load(); |
| 43 | } |
| 44 |