diff --git a/libnymea-core/cloud/cloudmanager.cpp b/libnymea-core/cloud/cloudmanager.cpp index a4263e82..4781eccd 100644 --- a/libnymea-core/cloud/cloudmanager.cpp +++ b/libnymea-core/cloud/cloudmanager.cpp @@ -183,6 +183,12 @@ bool CloudManager::installClientCertificates(const QByteArray &rootCA, const QBy m_awsConnector->disconnectAWS(); connect2aws(); } + m_configuration->setCloudCertificateCA(m_caCertificate); + m_configuration->setCloudCertificate(m_clientCertificate); + m_configuration->setCloudCertificateKey(m_clientCertificateKey); + m_configuration->setCloudServerUrl(m_serverUrl); + + emit connectionStateChanged(); return true; } diff --git a/libnymea-core/nymeaconfiguration.cpp b/libnymea-core/nymeaconfiguration.cpp index f48e8444..4d17f04a 100644 --- a/libnymea-core/nymeaconfiguration.cpp +++ b/libnymea-core/nymeaconfiguration.cpp @@ -358,6 +358,13 @@ QString NymeaConfiguration::cloudServerUrl() const return settings.value("cloudServerUrl").toString(); } +void NymeaConfiguration::setCloudServerUrl(const QString &cloudServerUrl) +{ + NymeaSettings settings(NymeaSettings::SettingsRoleGlobal); + settings.beginGroup("Cloud"); + settings.setValue("cloudServerUrl", cloudServerUrl); +} + QString NymeaConfiguration::cloudCertificateCA() const { NymeaSettings settings(NymeaSettings::SettingsRoleGlobal); @@ -365,6 +372,13 @@ QString NymeaConfiguration::cloudCertificateCA() const return settings.value("cloudCertificateCA").toString(); } +void NymeaConfiguration::setCloudCertificateCA(const QString &cloudCertificateCA) +{ + NymeaSettings settings(NymeaSettings::SettingsRoleGlobal); + settings.beginGroup("Cloud"); + settings.setValue("cloudCertificateCA", cloudCertificateCA); +} + QString NymeaConfiguration::cloudCertificate() const { NymeaSettings settings(NymeaSettings::SettingsRoleGlobal); @@ -372,6 +386,13 @@ QString NymeaConfiguration::cloudCertificate() const return settings.value("cloudCertificate").toString(); } +void NymeaConfiguration::setCloudCertificate(const QString &cloudCertificate) +{ + NymeaSettings settings(NymeaSettings::SettingsRoleGlobal); + settings.beginGroup("Cloud"); + settings.setValue("cloudCertificate", cloudCertificate); +} + QString NymeaConfiguration::cloudCertificateKey() const { NymeaSettings settings(NymeaSettings::SettingsRoleGlobal); @@ -379,6 +400,13 @@ QString NymeaConfiguration::cloudCertificateKey() const return settings.value("cloudCertificateKey").toString(); } +void NymeaConfiguration::setCloudCertificateKey(const QString &cloudCertificateKey) +{ + NymeaSettings settings(NymeaSettings::SettingsRoleGlobal); + settings.beginGroup("Cloud"); + settings.setValue("cloudCertificateKey", cloudCertificateKey); +} + QString NymeaConfiguration::logDBDriver() const { NymeaSettings settings(NymeaSettings::SettingsRoleGlobal); diff --git a/libnymea-core/nymeaconfiguration.h b/libnymea-core/nymeaconfiguration.h index efae9138..1fc44322 100644 --- a/libnymea-core/nymeaconfiguration.h +++ b/libnymea-core/nymeaconfiguration.h @@ -119,9 +119,13 @@ public: void setCloudEnabled(bool enabled); QString cloudServerUrl() const; + void setCloudServerUrl(const QString &cloudServerUrl); QString cloudCertificateCA() const; + void setCloudCertificateCA(const QString &cloudCertificateCA); QString cloudCertificate() const; + void setCloudCertificate(const QString &cloudCertificate); QString cloudCertificateKey() const; + void setCloudCertificateKey(const QString &cloudCertificateKey); // Logging QString logDBDriver() const;