diff options
author | Alexander Tkachev | 2016-05-23 11:23:33 +0600 |
---|---|---|
committer | Alexander Tkachev | 2016-08-24 16:07:55 +0600 |
commit | 41e65db7d0468b01f626c6ce21a1b8e6791f58fa (patch) | |
tree | b8ea4bbd60950c5f58e323b4c504b4be13b07493 /backends/cloud/dropbox/dropboxstorage.h | |
parent | c4b1fdc72752516a81b83490035d8f71357d045b (diff) | |
download | scummvm-rg350-41e65db7d0468b01f626c6ce21a1b8e6791f58fa.tar.gz scummvm-rg350-41e65db7d0468b01f626c6ce21a1b8e6791f58fa.tar.bz2 scummvm-rg350-41e65db7d0468b01f626c6ce21a1b8e6791f58fa.zip |
CLOUD: Add Storage saving mechanism
In this commit CloudManager starts supporting multiple Storage. Now, in
its init() it loads all the Storages and determines the current one.
It now also has save() method. In that method all Storages are saved
with their new saveConfig() method.
CloudManager::save() not called from anywhere, though. The only one
Storage that could be added is DropboxStorage in case you have no
cloud-related config keys or you have no storages connected.
Diffstat (limited to 'backends/cloud/dropbox/dropboxstorage.h')
-rw-r--r-- | backends/cloud/dropbox/dropboxstorage.h | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/backends/cloud/dropbox/dropboxstorage.h b/backends/cloud/dropbox/dropboxstorage.h index 3fc38bc1bb..493fcdd25d 100644 --- a/backends/cloud/dropbox/dropboxstorage.h +++ b/backends/cloud/dropbox/dropboxstorage.h @@ -45,7 +45,23 @@ class DropboxStorage: public Cloud::Storage { public: virtual ~DropboxStorage(); - /** Returns pointer to Common::Array<StorageFile>. */ + /** + * Storage methods, which are used by CloudManager to save + * storage in configuration file. + */ + + /** + * Save storage data using ConfMan. + * @param keyPrefix all saved keys must start with this prefix. + * @note every Storage must write keyPrefix + "type" key + * with common value (e.g. "Dropbox"). + */ + + virtual void saveConfig(Common::String keyPrefix); + + /** Public Cloud API comes down there. */ + + /** Returns Common::Array<StorageFile>. */ virtual void listDirectory(Common::String path, FileArrayCallback callback) {} //TODO /** Calls the callback when finished. */ @@ -66,7 +82,7 @@ public: /** Calls the callback when finished. */ virtual void touch(Common::String path, BoolCallback callback) {} //TODO - /** Returns pointer to the StorageInfo struct. */ + /** Returns the StorageInfo struct. */ virtual void info(StorageInfoCallback callback); /** This method is passed into info(). (Temporary) */ @@ -82,7 +98,7 @@ public: * Load token and user id from configs and return DropboxStorage for those. * @return pointer to the newly created DropboxStorage or 0 if some problem occured. */ - static DropboxStorage *loadFromConfig(); + static DropboxStorage *loadFromConfig(Common::String keyPrefix); /** * Returns Dropbox auth link. |