mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Add optional import of SUMO/OSDU settings from JSON (#11630)
Add optionally import of SUMO/OSDU settings from JSON. Check for sumo_config.json and osdu_config.json. If present, import settings to preferences and set fields read only.
This commit is contained in:
@@ -225,7 +225,7 @@ void RiaCloudConnector::exportTokenToFile()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RiaCloudConnector::importTokenFromFile()
|
||||
{
|
||||
auto tokenDataJson = RiaConnectorTools::readTokenData( m_tokenDataFilePath );
|
||||
auto tokenDataJson = RiaConnectorTools::readStringFromFile( m_tokenDataFilePath );
|
||||
if ( !tokenDataJson.isEmpty() )
|
||||
{
|
||||
RiaConnectorTools::initializeTokenDataFromJson( m_authCodeFlow, tokenDataJson );
|
||||
|
||||
@@ -90,7 +90,7 @@ void RiaConnectorTools::writeTokenData( const QString& filePath, const QString&
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
QString RiaConnectorTools::readTokenData( const QString& filePath )
|
||||
QString RiaConnectorTools::readStringFromFile( const QString& filePath )
|
||||
{
|
||||
QFile file( filePath );
|
||||
if ( file.open( QIODevice::ReadOnly ) )
|
||||
@@ -102,3 +102,22 @@ QString RiaConnectorTools::readTokenData( const QString& filePath )
|
||||
}
|
||||
return {};
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
std::map<QString, QString> RiaConnectorTools::readKeyValuePairs( const QString& filePath )
|
||||
{
|
||||
auto content = readStringFromFile( filePath );
|
||||
|
||||
QJsonDocument doc = QJsonDocument::fromJson( content.toUtf8() );
|
||||
QJsonObject obj = doc.object();
|
||||
|
||||
std::map<QString, QString> keyValuePairs;
|
||||
for ( auto it = obj.begin(); it != obj.end(); ++it )
|
||||
{
|
||||
keyValuePairs[it.key()] = it.value().toString();
|
||||
}
|
||||
|
||||
return keyValuePairs;
|
||||
}
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
#pragma once
|
||||
|
||||
#include <QString>
|
||||
#include <map>
|
||||
|
||||
class QOAuth2AuthorizationCodeFlow;
|
||||
|
||||
@@ -27,5 +28,7 @@ namespace RiaConnectorTools
|
||||
QString tokenDataAsJson( QOAuth2AuthorizationCodeFlow* authCodeFlow );
|
||||
void initializeTokenDataFromJson( QOAuth2AuthorizationCodeFlow* authCodeFlow, const QString& tokenDataJson );
|
||||
void writeTokenData( const QString& filePath, const QString& tokenDataJson );
|
||||
QString readTokenData( const QString& filePath );
|
||||
QString readStringFromFile( const QString& filePath );
|
||||
|
||||
std::map<QString, QString> readKeyValuePairs( const QString& filePath );
|
||||
} // namespace RiaConnectorTools
|
||||
|
||||
Reference in New Issue
Block a user