QgsDataSourceURI QgsPostgresConn::connUri( QString theConnName ) { QgsDebugMsg( "theConnName = " + theConnName ); QSettings settings; QString key = "/PostgreSQL/connections/" + theConnName; QString service = settings.value( key + "/service" ).toString(); QString host = settings.value( key + "/host" ).toString(); QString port = settings.value( key + "/port" ).toString(); if ( port.length() == 0 ) { port = "5432"; } QString database = settings.value( key + "/database" ).toString(); bool useEstimatedMetadata = settings.value( key + "/estimatedMetadata", false ).toBool(); int sslmode = settings.value( key + "/sslmode", QgsDataSourceURI::SSLprefer ).toInt(); QString username; QString password; if ( settings.value( key + "/saveUsername" ).toString() == "true" ) { username = settings.value( key + "/username" ).toString(); } if ( settings.value( key + "/savePassword" ).toString() == "true" ) { password = settings.value( key + "/password" ).toString(); } // Old save setting if ( settings.contains( key + "/save" ) ) { username = settings.value( key + "/username" ).toString(); if ( settings.value( key + "/save" ).toString() == "true" ) { password = settings.value( key + "/password" ).toString(); } } QgsDataSourceURI uri; if ( !service.isEmpty() ) { uri.setConnection( service, database, username, password, ( QgsDataSourceURI::SSLmode ) sslmode ); } else { uri.setConnection( host, port, database, username, password, ( QgsDataSourceURI::SSLmode ) sslmode ); } uri.setUseEstimatedMetadata( useEstimatedMetadata ); return uri; }
QgsDataSourceURI QgsOracleConn::connUri( QString theConnName ) { QgsDebugMsg( "theConnName = " + theConnName ); QSettings settings; QString key = "/Oracle/connections/" + theConnName; QString database = settings.value( key + "/database" ).toString(); QString host = settings.value( key + "/host" ).toString(); QString port = settings.value( key + "/port" ).toString(); if ( port.length() == 0 ) { port = "1521"; } bool useEstimatedMetadata = settings.value( key + "/estimatedMetadata", false ).toBool(); QString username; QString password; if ( settings.value( key + "/saveUsername" ).toString() == "true" ) { username = settings.value( key + "/username" ).toString(); } if ( settings.value( key + "/savePassword" ).toString() == "true" ) { password = settings.value( key + "/password" ).toString(); } QgsDataSourceURI uri; uri.setConnection( host, port, database, username, password ); uri.setUseEstimatedMetadata( useEstimatedMetadata ); if ( !settings.value( key + "/dboptions" ).toString().isEmpty() ) { uri.setParam( "dboptions", settings.value( key + "/dboptions" ).toString() ); } if ( !settings.value( key + "/dbworkspace" ).toString().isEmpty() ) { uri.setParam( "dbworkspace", settings.value( key + "/dbworkspace" ).toString() ); } return uri; }