#pragma once #include #include #include #include class IdentityManager { public: QString getUniqueId(); QByteArray getCertificate(); QByteArray getPrivateKey(); QSslConfiguration getSslConfig(); static IdentityManager* get(); private: IdentityManager(); QSslCertificate getSslCertificate(); QSslKey getSslKey(); void createCredentials(QSettings& settings); // Initialized in constructor QByteArray m_CachedPrivateKey; QByteArray m_CachedPemCert; // Lazy initialized QString m_CachedUniqueId; QSslCertificate m_CachedSslCert; QSslKey m_CachedSslKey; static IdentityManager* s_Im; };