File indexing completed on 2024-04-14 15:32:03

0001 /*************************************************************************************
0002  *  SPDX-FileCopyrightText: 2013 Alejandro Fiestas Fiestas <afiestas@kde.org>               *
0003  *  SPDX-FileCopyrightText: 2014-2015 David Rosca <nowrep@gmail.com>                           *
0004  *                                                                                   *
0005  *  SPDX-License-Identifier: GPL-2.0-or-later
0006  *************************************************************************************/
0007 
0008 #ifndef OBEXAGENT_H
0009 #define OBEXAGENT_H
0010 
0011 #include <BluezQt/ObexAgent>
0012 #include <QHash>
0013 class KJob;
0014 
0015 class BlueDevilDaemon;
0016 
0017 class ObexAgent : public BluezQt::ObexAgent
0018 {
0019     Q_OBJECT
0020 
0021 public:
0022     explicit ObexAgent(BlueDevilDaemon *daemon);
0023 
0024     BluezQt::Manager *manager() const;
0025 
0026     bool shouldAutoAcceptTransfer(const QString &address) const;
0027 
0028     QDBusObjectPath objectPath() const override;
0029     void authorizePush(BluezQt::ObexTransferPtr transfer, BluezQt::ObexSessionPtr session, const BluezQt::Request<QString> &request) override;
0030 
0031 private Q_SLOTS:
0032     void receiveFileJobFinished(KJob *job);
0033 
0034 private:
0035     BluezQt::Manager *const m_manager;
0036     QHash<QString, QDateTime> m_transferTimes;
0037 };
0038 
0039 #endif // OBEXAGENT_H