Overte C++ Documentation
EntitiesBackupHandler.h
1 //
2 // EntitiesBackupHandler.h
3 // domain-server/src
4 //
5 // Created by Clement Brisset on 2/14/18.
6 // Copyright 2018 High Fidelity, Inc.
7 //
8 // Distributed under the Apache License, Version 2.0.
9 // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
10 //
11 
12 #ifndef hifi_EntitiesBackupHandler_h
13 #define hifi_EntitiesBackupHandler_h
14 
15 #include "BackupHandler.h"
16 
17 class EntitiesBackupHandler : public BackupHandlerInterface {
18 public:
19  EntitiesBackupHandler(QString entitiesFilePath, QString entitiesReplacementFilePath);
20 
21  std::pair<bool, float> isAvailable(const QString& backupName) override { return { true, 1.0f }; }
22  std::pair<bool, float> getRecoveryStatus() override { return { false, 1.0f }; }
23 
24  void loadBackup(const QString& backupName, QuaZip& zip) override {}
25 
26  void loadingComplete() override {}
27 
28  // Create a skeleton backup
29  void createBackup(const QString& backupName, QuaZip& zip) override;
30 
31  // Recover from a full backup
32  std::pair<bool, QString> recoverBackup(const QString& backupName, QuaZip& zip, const QString& username, const QString& sourceFilename) override;
33 
34  // Delete a skeleton backup
35  void deleteBackup(const QString& backupName) override {}
36 
37  // Create a full backup
38  void consolidateBackup(const QString& backupName, QuaZip& zip) override {}
39 
40  bool isCorruptedBackup(const QString& backupName) override { return false; }
41 
42 private:
43  QString _entitiesFilePath;
44  QString _entitiesReplacementFilePath;
45 };
46 
47 #endif /* hifi_EntitiesBackupHandler_h */