35 #ifndef __KLEO_SIGNENCRYPTJOB_H__ 36 #define __KLEO_SIGNENCRYPTJOB_H__ 39 #include "qgpgme_export.h" 41 #ifdef BUILDING_QGPGME 45 # include <gpgme++/global.h> 46 # include <gpgme++/context.h> 61 class EncryptionResult;
98 virtual GpgME::Error start(
const std::vector<GpgME::Key> &signers,
99 const std::vector<GpgME::Key> &recipients,
100 const QByteArray &plainText,
101 bool alwaysTrust =
false) = 0;
112 virtual void start(
const std::vector<GpgME::Key> &signers,
113 const std::vector<GpgME::Key> &recipients,
114 const std::shared_ptr<QIODevice> &plainText,
115 const std::shared_ptr<QIODevice> &cipherText = std::shared_ptr<QIODevice>(),
116 bool alwaysTrust =
false) = 0;
118 virtual std::pair<GpgME::SigningResult, GpgME::EncryptionResult>
119 exec(
const std::vector<GpgME::Key> &signers,
120 const std::vector<GpgME::Key> &recipients,
121 const QByteArray &plainText,
122 bool alwaysTrust, QByteArray &cipherText) = 0;
128 virtual void setOutputIsBase64Encoded(
bool) = 0;
132 virtual void start(
const std::vector<GpgME::Key> &signers,
133 const std::vector<GpgME::Key> &recipients,
134 const std::shared_ptr<QIODevice> &plainText,
135 const std::shared_ptr<QIODevice> &cipherText = std::shared_ptr<QIODevice>(),
136 const GpgME::Context::EncryptionFlags flags = GpgME::Context::None) = 0;
140 virtual std::pair<GpgME::SigningResult, GpgME::EncryptionResult>
141 exec(
const std::vector<GpgME::Key> &signers,
142 const std::vector<GpgME::Key> &recipients,
143 const QByteArray &plainText,
144 const GpgME::Context::EncryptionFlags flags, QByteArray &cipherText) = 0;
146 void result(
const GpgME::SigningResult &signingresult,
147 const GpgME::EncryptionResult &encryptionresult,
148 const QByteArray &cipherText,
const QString &auditLogAsHtml = QString(),
149 const GpgME::Error &auditLogError = GpgME::Error());
154 #endif // __KLEO_SIGNENCRYPTJOB_H__ An abstract base class for asynchronous crypto operations.
Definition: job.h:72
An abstract base class for asynchronous combined signing and encrypting.
Definition: signencryptjob.h:80
Definition: abstractimportjob.h:42
Definition: abstractimportjob.h:48