/** * Save the given preferences * * @param Preferences $preferences The preferences to save */ public function save(Preferences $preferences) { $this->preferences = $preferences->toArray(); // TODO: Elaborate whether we need to patch the contents // $preferences = $preferences->toArray(); // $this->update(array_diff_assoc($preferences, $this->preferences)); // $this->delete(array_keys(array_diff_key($this->preferences, $preferences))); $this->write(); }