Page MenuHome GnuPG

recipient.h
No OneTemporary

recipient.h

/* -*- mode: c++; c-basic-offset:4 -*-
./crypto/recipient.h
This file is part of Kleopatra, the KDE keymanager
SPDX-FileCopyrightText: 2009 Klarälvdalens Datakonsult AB
SPDX-License-Identifier: GPL-2.0-or-later
*/
#pragma once
#include <gpgme++/global.h>
#include <memory>
#include <vector>
namespace KMime
{
namespace Types
{
class Mailbox;
}
}
namespace GpgME
{
class Key;
class UserID;
}
namespace Kleo
{
namespace Crypto
{
class Recipient
{
public:
Recipient()
: d()
{
}
explicit Recipient(const KMime::Types::Mailbox &mailbox);
void swap(Recipient &other)
{
d.swap(other.d);
}
bool isNull() const
{
return !d;
}
bool isEncryptionAmbiguous(GpgME::Protocol protocol) const;
const KMime::Types::Mailbox &mailbox() const;
const std::vector<GpgME::Key> &encryptionCertificateCandidates(GpgME::Protocol proto) const;
void setResolvedEncryptionKey(const GpgME::Key &key);
GpgME::Key resolvedEncryptionKey(GpgME::Protocol proto) const;
void setResolvedOpenPGPEncryptionUserID(const GpgME::UserID &uid);
GpgME::UserID resolvedOpenPGPEncryptionUserID() const;
friend inline bool operator==(const Recipient &lhs, const Recipient &rhs)
{
return rhs.d == lhs.d || lhs.deepEquals(rhs);
}
private:
void detach();
bool deepEquals(const Recipient &other) const;
private:
class Private;
std::shared_ptr<Private> d;
};
inline bool operator!=(const Recipient &lhs, const Recipient &rhs)
{
return !operator==(lhs, rhs);
}
} // namespace Crypto
} // namespace Kleo

File Metadata

Mime Type
text/x-c++
Expires
Sat, Nov 29, 7:07 AM (1 d, 15 h)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
59/b2/fe135628fae1cf2ad712bd9d1609

Event Timeline