File indexing completed on 2024-06-23 05:18:31

0001 /*
0002   SPDX-FileCopyrightText: 2009 Klaralvdalens Datakonsult AB, a KDAB Group company, info@kdab.net
0003   SPDX-FileCopyrightText: 2009 Leo Franchi <lfranchi@kde.org>
0004 
0005   SPDX-License-Identifier: LGPL-2.0-or-later
0006 */
0007 
0008 #pragma once
0009 
0010 #include <QStringList>
0011 
0012 #include <gpgme++/key.h>
0013 #include <vector>
0014 
0015 /**
0016  * Simple interface that both EncryptJob and SignEncryptJob implement
0017  * so the composer can extract some encryption-specific job info from them
0018  */
0019 namespace MessageComposer
0020 {
0021 class AbstractEncryptJob
0022 {
0023 public:
0024     virtual ~AbstractEncryptJob() = default;
0025 
0026     /**
0027      * Set the list of encryption keys that should be used.
0028      */
0029     virtual void setEncryptionKeys(const std::vector<GpgME::Key> &keys) = 0;
0030 
0031     /**
0032      * Set the recipients that this message should be encrypted to.
0033      */
0034     virtual void setRecipients(const QStringList &rec) = 0;
0035 
0036     virtual std::vector<GpgME::Key> encryptionKeys() const = 0;
0037     virtual QStringList recipients() const = 0;
0038 };
0039 }