aboutsummaryrefslogtreecommitdiff
path: root/backends/cloud/storage.h
diff options
context:
space:
mode:
authorAlexander Tkachev2016-05-21 23:21:42 +0600
committerAlexander Tkachev2016-08-24 16:07:55 +0600
commit9e531e3ce7f5b3a1cc87b43beb6f72911cb41bdd (patch)
treeaabc1995e2208f8c7c51bc208716a8948dbb5a92 /backends/cloud/storage.h
parente1109c0c328aaf671e2b03b3b4e6de1ae9061754 (diff)
downloadscummvm-rg350-9e531e3ce7f5b3a1cc87b43beb6f72911cb41bdd.tar.gz
scummvm-rg350-9e531e3ce7f5b3a1cc87b43beb6f72911cb41bdd.tar.bz2
scummvm-rg350-9e531e3ce7f5b3a1cc87b43beb6f72911cb41bdd.zip
CLOUD: Polish Callbacks
Cleaned up all example code and old callbacks. New Callback classes are introduced in "common/callback.h" and documented.
Diffstat (limited to 'backends/cloud/storage.h')
-rw-r--r--backends/cloud/storage.h26
1 files changed, 11 insertions, 15 deletions
diff --git a/backends/cloud/storage.h b/backends/cloud/storage.h
index 4fb06f6a9d..f2079eb919 100644
--- a/backends/cloud/storage.h
+++ b/backends/cloud/storage.h
@@ -26,6 +26,7 @@
#include "common/array.h"
#include "common/stream.h"
#include "common/str.h"
+#include "common/callback.h"
namespace Cloud {
@@ -70,37 +71,32 @@ public:
class Storage {
public:
- typedef void(*ListDirectoryCallback)(Common::Array<StorageFile>& result);
- typedef void(*DownloadCallback)(Common::ReadStream* result);
- typedef void(*InfoCallback)(StorageInfo result);
- typedef void(*OperationCallback)(bool successed);
-
Storage() {}
virtual ~Storage() {}
- /** Returns pointer to Common::Array<CloudFile>. */
- virtual void listDirectory(Common::String path, ListDirectoryCallback callback) = 0;
+ /** Returns pointer to Common::Array<StorageFile>. */
+ virtual void listDirectory(Common::String path, Common::BaseCallback< Common::Array<StorageFile> > *callback) = 0;
/** Calls the callback when finished. */
- virtual void upload(Common::String path, Common::ReadStream* contents, OperationCallback callback) = 0;
+ virtual void upload(Common::String path, Common::ReadStream* contents, Common::BaseCallback<bool> *callback) = 0;
/** Returns pointer to Common::ReadStream. */
- virtual void download(Common::String path, DownloadCallback callback) = 0;
+ virtual void download(Common::String path, Common::BaseCallback<Common::ReadStream> *callback) = 0;
/** Calls the callback when finished. */
- virtual void remove(Common::String path, OperationCallback callback) = 0;
+ virtual void remove(Common::String path, Common::BaseCallback<bool> *callback) = 0;
/** Calls the callback when finished. */
- virtual void syncSaves(OperationCallback callback) = 0;
+ virtual void syncSaves(Common::BaseCallback<bool> *callback) = 0;
/** Calls the callback when finished. */
- virtual void createDirectory(Common::String path, OperationCallback callback) = 0;
+ virtual void createDirectory(Common::String path, Common::BaseCallback<bool> *callback) = 0;
/** Calls the callback when finished. */
- virtual void touch(Common::String path, OperationCallback callback) = 0;
+ virtual void touch(Common::String path, Common::BaseCallback<bool> *callback) = 0;
- /** Returns pointer to the ServiceInfo struct. */
- virtual void info(InfoCallback callback) = 0;
+ /** Returns pointer to the StorageInfo struct. */
+ virtual void info(Common::BaseCallback<StorageInfo> *callback) = 0;
/** Returns whether saves sync process is running. */
virtual bool isSyncing() = 0;