aboutsummaryrefslogtreecommitdiff
path: root/backends/cloud/savessyncrequest.cpp
AgeCommit message (Collapse)Author
2016-09-03JANITORIAL: Make GPL headers uniformEugene Sandulenko
2016-08-24CLOUD: Fix RequestsAlexander Tkachev
Remove unnecessary JSON warnings, fix a few places.
2016-08-24CLOUD: Update SavesSyncRequestAlexander Tkachev
Add JSON checks in the callback.
2016-08-24ALL: Fix debug, warning and error usageAlexander Tkachev
Added prefixes, used debug(9).
2016-08-24CLOUD: JANITORIAL: Fix code formattingEugene Sandulenko
2016-08-24CLOUD: Fix code formattingPeter Bozsó
2016-08-24JANITORIAL: Remove spaces at the end of the lineAlexander Tkachev
I knew there were some, but I wanted to fix them once, instead of doing it all the time.
2016-08-24CLOUD: Do some refactoring/cleanupAlexander Tkachev
Nothing really major.
2016-08-24CLOUD: Add Storage::uploadStreamSupported()Alexander Tkachev
Box uses POST multipart/form requests for uploading. Such requests could be sent with libcurl if we either have a file available or a buffer with this file's contents. SavesSyncRequest was using Storage::upload(ReadStream *), which couldn't be implemented in BoxStorage. Thus I've added a method to test whether such upload is supported and, if it's not, SavesSyncRequest uses the other.
2016-08-24CLOUD: Fix finishSuccess() warningAlexander Tkachev
2016-08-24CLOUD: Delete the incomplete file (when downloading)Alexander Tkachev
2016-08-24CLOUD: Update save's timestamp on rewriteAlexander Tkachev
This commit moves save/load timestamps static methods into DefaultSaveFileManager and fixes a few related bugs.
2016-08-24CLOUD: Add Request::date()Alexander Tkachev
Used in SavesSyncRequest to update Storage's last sync date.
2016-08-24GUI: Add Refresh button in Options Cloud tabAlexander Tkachev
Commit changes CloudManager and Storages so they would automatically refresh the fields when the could.
2016-08-24CLOUD: Update Requests to use StorageFile::id()Alexander Tkachev
Only two places to update, as others still require id resolving.
2016-08-24CLOUD: Update GoogleDriveCreateDirectoryRequestAlexander Tkachev
Now it also creates the "base" ScummVM directory if there is no such directory yet. This way SavesSyncRequest works fine when no "ScummVM" or "ScummVM/Saves" folder exist in the Google Drive.
2016-08-24CLOUD: Minor fixesAlexander Tkachev
2016-08-24CLOUD: Add SaveLoadCloudSyncProgress enumAlexander Tkachev
It's common for Save/Load dialogs and SavesSyncRequest.
2016-08-24CLOUD: Make DefaultSaveFileManager ignore syncing filesAlexander Tkachev
MetaEngines don't get "locked" files in the list, so won't try to open these. Save/Load dialog updates save list every time SavesSyncRequest tells it to.
2016-08-24CLOUD: Make ProgressDialog display downloading progressAlexander Tkachev
2016-08-24GUI: Add SaveLoadCloudSyncProgressDialogAlexander Tkachev
It's shown by SaveLoadChooserDialog when files are downloaded and some save slots are locked. One can hide that dialog to interact with non-locked slots or cancel saves sync completely. Dialog's label shows current sync progress. Dialog automatically hides itself when all files are downloaded. WARNING: right now that results in a crash!
2016-08-24CLOUD: Make Save/Load dialog start saves syncAlexander Tkachev
It also shows a "sync disabled" icon in case it has a savepath override.
2016-08-24CLOUD: Fix SavesSyncRequest to return right filesAlexander Tkachev
Files we need are files to be downloaded, because that's what blocks us from reading/writing in those.
2016-08-24CLOUD: Extend Storage & SavesSyncRequestAlexander Tkachev
Now one can learn whether SavesSyncRequest is running, its progress and which files are being synced.
2016-08-24CLOUD: Fix SavesSyncRequestAlexander Tkachev
Now it would finish with error if spawned Request is nullptr.
2016-08-24CLOUD: Fix SavesSyncRequest to create saves folderAlexander Tkachev
2016-08-24CLOUD: Add DropboxCreateDirectoryRequestAlexander Tkachev
Also add CloudManager::testFeature(), because syncSaves() now works fine and I don't want to break it again and again with my testing requests.
2016-08-24CLOUD: Make SavesSyncRequest work with OneDriveAlexander Tkachev
It actually works fine, but small Storage::savesDirectoryPath() was added, because Dropbox's directories must start with a slash, and OneDrive's directories must not. Saves sync tested and it works fine with OneDrive.
2016-08-24CLOUD: Refactor RequestAlexander Tkachev
Added ErrorResponse and ErrorCallback. Each Request now has an ErrorCallback, which should be called instead of usual callback in case of failure.
2016-08-24CLOUD: Make SavesSyncRequest workAlexander Tkachev
It now actually read the "timestamps" file, loads and saves files as it should, ignores Dropbox's "not_found" error.
2016-08-24CLOUD: Add ListDirectoryStatus structAlexander Tkachev
It contains flags to indicate whether Request was interrupted or failed, so dependent Requests may see that list is incomplete.
2016-08-24CLOUD: Add UploadStatus structAlexander Tkachev
It contains not just "success" flag, but also "file" struct, so the caller can find out some information about uploaded file - like timestamp.
2016-08-24CLOUD: Add SavesSyncRequest sketchAlexander Tkachev
Never tested it, actually. It requires Storage to implement upload() method and me to find some way to get saves' ReadStream. The saveTimestamps() and loadTimestamps() part should be tested, other parts should work fine.