mirror of
https://github.com/nextcloud/desktop.git
synced 2024-12-18 20:02:17 +03:00
079d392d36
done via clang-tidy and manual tuning run-clang-tidy -p build -header-filter='.*' -config="{Checks: '*', CheckOptions: [{key: UseAssignment, value: true}]}" -checks='-*,modernize-use-default-member-init' -fix Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
61 lines
1.4 KiB
C++
61 lines
1.4 KiB
C++
#ifndef REMOTEWIPE_H
|
|
#define REMOTEWIPE_H
|
|
|
|
#include "accountmanager.h"
|
|
#include <QNetworkAccessManager>
|
|
|
|
class QJsonDocument;
|
|
class TestRemoteWipe;
|
|
|
|
namespace OCC {
|
|
|
|
class RemoteWipe : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit RemoteWipe(AccountPtr account, QObject *parent = nullptr);
|
|
|
|
signals:
|
|
/**
|
|
* Notify if wipe was requested
|
|
*/
|
|
void authorized(OCC::AccountState*);
|
|
|
|
/**
|
|
* Notify if user only needs to login again
|
|
*/
|
|
void askUserCredentials();
|
|
|
|
public slots:
|
|
/**
|
|
* Once receives a 401 or 403 status response it will do a fetch to
|
|
* <server>/index.php/core/wipe/check
|
|
*/
|
|
void startCheckJobWithAppPassword(QString);
|
|
|
|
private slots:
|
|
/**
|
|
* If wipe is requested, delete account and data, if not continue by asking
|
|
* the user to login again
|
|
*/
|
|
void checkJobSlot();
|
|
|
|
/**
|
|
* Once the client has wiped all the required data a POST to
|
|
* <server>/index.php/core/wipe/success
|
|
*/
|
|
void notifyServerSuccessJob(OCC::AccountState *accountState, bool);
|
|
void notifyServerSuccessJobSlot();
|
|
|
|
private:
|
|
AccountPtr _account;
|
|
QString _appPassword;
|
|
bool _accountRemoved = false;
|
|
QNetworkAccessManager _networkManager;
|
|
QNetworkReply *_networkReplyCheck = nullptr;
|
|
QNetworkReply *_networkReplySuccess = nullptr;
|
|
|
|
friend class ::TestRemoteWipe;
|
|
};
|
|
}
|
|
#endif // REMOTEWIPE_H
|