/***************************************************************************
- * Copyright (C) 2005-2018 by the Quassel Project *
+ * Copyright (C) 2005-2020 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
#pragma once
+#include "core-export.h"
+
#include "identity.h"
-#ifdef HAVE_SSL
-#include <QSslKey>
#include <QSslCertificate>
-#endif //HAVE_SSL
+#include <QSslKey>
class SignalProxy;
// ========================================
// CoreCertManager
// ========================================
-#ifdef HAVE_SSL
class CoreIdentity;
-class CoreCertManager : public CertManager
+class CORE_EXPORT CoreCertManager : public CertManager
{
Q_OBJECT
public:
- CoreCertManager(CoreIdentity &identity);
+ CoreCertManager(CoreIdentity* identity);
-#ifdef HAVE_SSL
- virtual const QSslKey &sslKey() const;
- virtual const QSslCertificate &sslCert() const;
+ const QSslKey& sslKey() const override;
+ const QSslCertificate& sslCert() const override;
public slots:
- virtual void setSslKey(const QByteArray &encoded);
- virtual void setSslCert(const QByteArray &encoded);
-#endif
+ void setSslKey(const QByteArray& encoded) override;
+ void setSslCert(const QByteArray& encoded) override;
void setId(IdentityId id);
private:
- CoreIdentity &identity;
+ CoreIdentity* _identity{nullptr};
};
-
-#endif //HAVE_SSL
-
// =========================================
// CoreIdentity
// =========================================
-class CoreIdentity : public Identity
+class CORE_EXPORT CoreIdentity : public Identity
{
Q_OBJECT
public:
- CoreIdentity(IdentityId id, QObject *parent = 0);
- CoreIdentity(const Identity &other, QObject *parent = 0);
- CoreIdentity(const CoreIdentity &other, QObject *parent = 0);
+ CoreIdentity(IdentityId id, QObject* parent = nullptr);
+ CoreIdentity(const Identity& other, QObject* parent = nullptr);
+ CoreIdentity(const CoreIdentity& other, QObject* parent = nullptr);
- void synchronize(SignalProxy *proxy);
+ void synchronize(SignalProxy* proxy);
-#ifdef HAVE_SSL
- inline const QSslKey &sslKey() const { return _sslKey; }
- inline void setSslKey(const QSslKey &key) { _sslKey = key; }
- void setSslKey(const QByteArray &encoded);
- inline const QSslCertificate &sslCert() const { return _sslCert; }
- inline void setSslCert(const QSslCertificate &cert) { _sslCert = cert; }
- void setSslCert(const QByteArray &encoded);
-#endif /* HAVE_SSL */
-
- CoreIdentity &operator=(const CoreIdentity &identity);
+ inline const QSslKey& sslKey() const { return _sslKey; }
+ inline void setSslKey(const QSslKey& key) { _sslKey = key; }
+ void setSslKey(const QByteArray& encoded);
+ inline const QSslCertificate& sslCert() const { return _sslCert; }
+ inline void setSslCert(const QSslCertificate& cert) { _sslCert = cert; }
+ void setSslCert(const QByteArray& encoded);
private:
-#ifdef HAVE_SSL
QSslKey _sslKey;
QSslCertificate _sslCert;
CoreCertManager _certManager;
-#endif
};
-
-#ifdef HAVE_SSL
-inline const QSslKey &CoreCertManager::sslKey() const
+inline const QSslKey& CoreCertManager::sslKey() const
{
- return identity.sslKey();
+ return _identity->sslKey();
}
-
-inline const QSslCertificate &CoreCertManager::sslCert() const
+inline const QSslCertificate& CoreCertManager::sslCert() const
{
- return identity.sslCert();
+ return _identity->sslCert();
}
-
-#endif