Exemple #1
0
chrono::milliseconds ConfigFile::forceSyncInterval(const QString &connection) const
{
    auto pollInterval = remotePollInterval(connection);

    QString con(connection);
    if (connection.isEmpty())
        con = defaultConnection();
    QSettings settings(configFile(), QSettings::IniFormat);
    settings.beginGroup(con);

    auto defaultInterval = chrono::hours(2);
    auto interval = millisecondsValue(settings, forceSyncIntervalC, defaultInterval);
    if (interval < pollInterval) {
        qCWarning(lcConfigFile) << "Force sync interval is less than the remote poll inteval, reverting to" << pollInterval.count();
        interval = pollInterval;
    }
    return interval;
}
Exemple #2
0
chrono::milliseconds ConfigFile::updateCheckInterval(const QString &connection) const
{
    QString con(connection);
    if (connection.isEmpty())
        con = defaultConnection();
    QSettings settings(configFile(), QSettings::IniFormat);
    settings.beginGroup(con);

    auto defaultInterval = chrono::hours(10);
    auto interval = millisecondsValue(settings, updateCheckIntervalC, defaultInterval);

    auto minInterval = chrono::minutes(5);
    if (interval < minInterval) {
        qCWarning(lcConfigFile) << "Update check interval less than five minutes, resetting to 5 minutes";
        interval = minInterval;
    }
    return interval;
}
void MirallConfigFile::setProxyType(int proxyType,
                  const QString& host,
                  int port,
                  const QString& user,
                  const QString& pass)
{
    QSettings settings( configFile(), QSettings::IniFormat );
    settings.setIniCodec( "UTF-8" );
    settings.beginGroup(QLatin1String("proxy"));

    settings.setValue(QLatin1String("type"), proxyType);
    settings.setValue(QLatin1String("host"), host);
    settings.setValue(QLatin1String("port"), port);
    settings.setValue(QLatin1String("user"), user);
    settings.setValue(QLatin1String("pass"), pass);

    settings.sync();
}
Exemple #4
0
void initialiseCmdLineArgs( KCmdLineOptions& options )
{
   QString configFileName = KStandardDirs().findResource("config","kdiff3rc");
   QFile configFile( configFileName );
   QString ignorableOptionsLine = "-u;-query;-html;-abort";
   if ( configFile.open( QIODevice::ReadOnly ) )
   {
      QTextStream ts( &configFile );
      while(!ts.atEnd())
      {
         QString line = ts.readLine();
         if ( line.startsWith("IgnorableCmdLineOptions=") )
         {
            int pos = line.indexOf('=');
            if (pos>=0)
            {
               ignorableOptionsLine = line.mid(pos+1);
            }
            break;
         }
      }
   }

#ifdef KREPLACEMENTS_H
   QStringList sl = ignorableOptionsLine.split( '|' );
#else
   QStringList sl = ignorableOptionsLine.split( ',' );
#endif
   if (!sl.isEmpty())
   {
      QStringList ignorableOptions = sl.front().split( ';' );
      for (QStringList::iterator i=ignorableOptions.begin(); i!=ignorableOptions.end(); ++i)
      {
         (*i).remove('-');
         if (!(*i).isEmpty())
         {
            if ( i->length()==1 )
               options.add( i->toLatin1() ).add("ignore", ki18n("Ignored. (User defined.)") );
            else
               options.add( i->toLatin1(), ki18n("Ignored. (User defined.)") );
         }
      }
   }
}
Exemple #5
0
void loadConfigs() {
    std::ifstream configFile("Inspect.config");
    if (configFile.is_open()) {
        std::string line;
        
        //1st config line: Modelsim Path
        std::getline(configFile, line);
        vsimDir = split(line, '=')[1];
        
        //2nd config line: Modelsim Path
        std::getline(configFile, line);
        legUpDir = split(line, '=')[1];           
        
        //3rd config line: Example Path
        std::getline(configFile, line);
        workDir = split(line, '=')[1];
		
        //4th config line: Example File
        std::getline(configFile, line);
        fileName = split(line, '=')[1];
        
        //5th config line: DB host
        std::getline(configFile, line);
        dbHost = split(line, '=')[1];
        
        //6th config line: DB user
        std::getline(configFile, line);
        dbUser = split(line, '=')[1];
        
        //7th config line: DB pass
        std::getline(configFile, line);
        dbPass = split(line, '=')[1];
        
        //8th config line: DB name
        std::getline(configFile, line);
        dbName = split(line, '=')[1];
        
        configFile.close();
        
    } else {
        std::cout << "config file not found. Program is exiting." << std::endl;
        exit(1);
    }
}
void RoboyControlConfiguration::readConfig() {
    m_listControllerConfig.clear();
    m_mapModelConfig.clear();

    QString roboyControlHome = QProcessEnvironment::systemEnvironment().value("ROBOY_CONTROL_HOME");
    if (roboyControlHome == "") {
        CONFIG_DBG << " - ERROR: Environment Variable not set.";
        CONFIG_DBG << "Set the environment variable ROBOY_CONTROL_HOME to the installation"
                "directory of RoboyControl. Add the line\n"
                "\texport ROBOY_CONTROL_HOME=<path_to_roboy_control>"
                "to your ~/.bash_rc file.";
        exit(0);
    }

    QString filename = roboyControlHome + "/etc/" + CONFIG_FILE_NAME;
    QFile configFile(filename);

    if( !configFile.open(QFile::ReadOnly | QFile::Text) ) {
        CONFIG_DBG << " - ERROR opening file: " << filename;
        CONFIG_DBG << "Make sure your environment is set up correctly and the configuration file"
                "is placed in /etc of your <roboy_control_install_dir>.";
    }

    CONFIG_DBG << "INFO open successful: " << filename;

    m_xmlReader.setDevice(&configFile);

    m_xmlReader.readNextStartElement();
    if (m_xmlReader.name() == "RoboyControlConfiguration") {
        while(m_xmlReader.readNextStartElement()) {
            if (m_xmlReader.name() == "DataModel") {
                CONFIG_DBG << "Read Model Config";
                readModelConfig();
            } else if (m_xmlReader.name() == "Controllers") {
                CONFIG_DBG << "Read Controllers Config";
                readControllersConfig();
            } else {
                m_xmlReader.skipCurrentElement();
            }
        }
    } else {
        CONFIG_DBG << " - ERROR found invalid config file.";
    }
}
bool MirallConfigFile::writePassword( const QString& passwd, const QString& connection )
{
    const QString file = configFile();
    QString pwd( passwd );
    QString con( defaultConnection() );
    if( !connection.isEmpty() )
        con = connection;

    QSettings settings( file, QSettings::IniFormat);
    settings.setIniCodec( "UTF-8" );

    // store password into settings file.
    settings.beginGroup( con );
    QByteArray pwdba = pwd.toUtf8();
    settings.setValue( QLatin1String("passwd"), QVariant(pwdba.toBase64()) );
    settings.sync();

    return true;
}
bool AppearanceGTK2::loadSettings(const QString& path)
{
    QFile configFile(path);
    
    bool canRead = configFile.open(QIODevice::ReadOnly | QIODevice::Text);
    
    if(canRead) {
//         qDebug() << "The gtk2 config file exists...";
        const QMap<QString, QString> foundSettings = readSettingsTuples(&configFile);
        m_settings = QMap<QString, QString> {
            {"toolbar_style", "GTK_TOOLBAR_ICONS"},
            {"show_icons_buttons", "0"},
            {"show_icons_menus", "0"},
            {"primary_button_warps_slider", "false"}
        };

        for(auto it = foundSettings.constBegin(), itEnd = foundSettings.constEnd(); it!=itEnd; ++it) {
            if (it.key() == "gtk-theme-name")
                m_settings["theme"] = *it;
            else if (it.key() == "gtk-icon-theme-name")
                m_settings["icon"] = *it;
            else if (it.key() == "gtk-fallback-icon-theme")
                m_settings["icon_fallback"] = *it;
            else if (it.key() == "gtk-cursor-theme-name")
                m_settings["cursor"] = *it;
            else if (it.key() == "gtk-font-name")
                m_settings["font"] = *it;
            else if (it.key() == "gtk-toolbar-style")
                m_settings["toolbar_style"] = *it;
            else if (it.key() == "gtk-button-images")
                m_settings["show_icons_buttons"] = *it;
            else if(it.key() == "gtk-menu-images")
                m_settings["show_icons_menus"] = *it;
            else if (it.key() == "gtk-primary-button-warps-slider")
                m_settings["primary_button_warps_slider"] = *it;
            else
                qWarning() << "unknown field" << it.key();
        }

    }
    
    return canRead;
}
/*
 * returns the configured owncloud url if its already configured, otherwise an empty
 * string.
 * The returned url always has a trailing hash.
 * If webdav is true, the webdav-server url is returned.
 */
QString MirallConfigFile::ownCloudUrl( const QString& connection, bool webdav ) const
{
    QString con( connection );
    if( connection.isEmpty() ) con = defaultConnection();

    QSettings settings( configFile(), QSettings::IniFormat );
    settings.setIniCodec( "UTF-8" );
    settings.beginGroup( con );

    QString url = settings.value( QLatin1String("url") ).toString();
    if( ! url.isEmpty() ) {
        if( ! url.endsWith(QLatin1Char('/'))) url.append(QLatin1String("/"));
        if( webdav ) url.append( QLatin1String("remote.php/webdav/") );
    }

    qDebug() << "Returning configured owncloud url: " << url;

  return url;
}
bool GPSGridClient::LoadData()
{
	UnloadData();
	QString filename = fileInDirectory( directory, "GPSGrid" );
	QFile configFile( filename + "_config" );
	if ( !openQFile( &configFile, QIODevice::ReadOnly ) )
		return false;

	index = new gg::Index( filename + "_index" );
	index->SetCacheSize( 1024 * 1024 * cacheSize / 4 );

	gridFile = new QFile( filename + "_grid" );
	if ( !gridFile->open( QIODevice::ReadOnly ) ) {
		qCritical() << "failed to open file: " << gridFile->fileName();
		return false;
	}

	return true;
}
Exemple #11
0
void ConfigFile::setProxyType(int proxyType,
    const QString &host,
    int port, bool needsAuth,
    const QString &user,
    const QString &pass)
{
    QSettings settings(configFile(), QSettings::IniFormat);

    settings.setValue(QLatin1String(proxyTypeC), proxyType);

    if (proxyType == QNetworkProxy::HttpProxy || proxyType == QNetworkProxy::Socks5Proxy) {
        settings.setValue(QLatin1String(proxyHostC), host);
        settings.setValue(QLatin1String(proxyPortC), port);
        settings.setValue(QLatin1String(proxyNeedsAuthC), needsAuth);
        settings.setValue(QLatin1String(proxyUserC), user);
        settings.setValue(QLatin1String(proxyPassC), pass.toUtf8().toBase64());
    }
    settings.sync();
}
DomainServerSettingsManager::DomainServerSettingsManager() :
    _descriptionObject(),
    _settingsMap()
{
    // load the description object from the settings description
    QFile descriptionFile(QCoreApplication::applicationDirPath() + SETTINGS_DESCRIPTION_RELATIVE_PATH);
    descriptionFile.open(QIODevice::ReadOnly);
    
    _descriptionObject = QJsonDocument::fromJson(descriptionFile.readAll()).object();
    
    // load the existing config file to get the current values
    QFile configFile(QCoreApplication::applicationDirPath() + SETTINGS_CONFIG_FILE_RELATIVE_PATH);
    
    if (configFile.exists()) {
        configFile.open(QIODevice::ReadOnly);
        
        _settingsMap = QJsonDocument::fromJson(configFile.readAll()).toVariant().toMap();
    }
}
Exemple #13
0
void ConfigUI::onPushbuttonSaveClicked()
{
    QFile configFile("config.ini");
    if(!configFile.open(QIODevice::WriteOnly | QIODevice::Text))
        return;
    QTextStream out(&configFile);
    out << "DBname ";
    out << lineEdit_DBname->text() << "\n";
    out << "DBuser ";
    out << lineEdit_DBuser->text() << "\n";
    out << "DBpassword ";
    out << lineEdit_DBpw->text() << "\n";
    out << "port ";
    out << lineEdit_port->text() << "\n";
    configFile.close();

    QMessageBox::about(this,"ConfigMSG",QStringLiteral("保存成功"));

}
void FileSettingsHash::loadSettingsFor(QString filename, MediaSettings & mset)
{
    qDebug("FileSettings::loadSettingsFor: '%s'", filename.toUtf8().constData());

    QString config_file = configFile(filename);

    qDebug("FileSettingsHash::loadSettingsFor: config_file: '%s'", config_file.toUtf8().constData());

    mset.reset();

    if ((!config_file.isEmpty()) && (QFile::exists(config_file)))
    {
        QSettings settings(config_file, QSettings::IniFormat);

        settings.beginGroup("file_settings");
        mset.load(&settings);
        settings.endGroup();
    }
}
Exemple #15
0
int main(int argc, char *argv[])
{
    if ( argc != 2 )
    {
        /* display usage on error stream */
        fprintf(stderr, "usage: znm-project project_name\n\n");
        exit(1);  /* exit status of the program : non-zero for errors */
    }

    if ( QString("--help") == argv[1] )
    {
        printf ("usage: znm-project project_name\nCreates a zenom project.\n\n");
        exit(0);  /* exit status of the program : non-zero for errors */
    }

    QDir projectDir;
    if ( projectDir.exists( argv[1] ) )
    {
        fprintf(stderr, "The project cannot be created because '%s' folder already exists.\n", argv[1]);
        exit(1);  /* exit status of the program : non-zero for errors */
    }

    projectDir.mkpath( argv[1] );
    projectDir.cd( argv[1] );

    QFileInfo programFileInfo( getexepath() );
    QString projectName( QFileInfo(argv[1]).fileName() );

    createFile( programFileInfo.dir().filePath("znm-project-main.template"), projectDir.filePath("main.cpp"), projectName );
    createFile( programFileInfo.dir().filePath("znm-project-makefile.template"), projectDir.filePath("Makefile"), projectName );

    // Open project file to write
    QFile configFile( projectDir.filePath(QString("%1.znm").arg(projectName)) );
    if ( !configFile.open(QFile::WriteOnly | QFile::Text) )
    {
        fprintf(stderr, "The project cannot be created because the file '%s' could not be opened.\n", configFile.fileName().toAscii().data());
        exit(1);  /* exit status of the program : non-zero for errors */
    }
    configFile.close();

    return 0;
}
Exemple #16
0
int MirallConfigFile::localPollInterval( const QString& connection ) const
{
  QString con( connection );
  if( connection.isEmpty() ) con = defaultConnection();

  QSettings settings( configFile(), QSettings::IniFormat );
  settings.setIniCodec( "UTF-8" );
  settings.beginGroup( con );

  int remoteInterval = settings.value( QLatin1String("remotePollInterval"), DEFAULT_REMOTE_POLL_INTERVAL ).toInt();
  int localInterval  = settings.value(QLatin1String("localPollInterval"), DEFAULT_LOCAL_POLL_INTERVAL ).toInt();
  if( remoteInterval < 2*localInterval ) {
    qDebug() << "WARN: remote poll Interval should at least be twice as local poll interval!";
  }
  if( localInterval < 2500 || remoteInterval < localInterval ) {
    qDebug() << "Remote Interval is smaller than local Interval";
    localInterval = DEFAULT_LOCAL_POLL_INTERVAL;
  }
  return localInterval;
}
Exemple #17
0
int
MyApp::OnExit()
{
    // Save config file
    wxFileName configFile(GetConfigFile());
    if (! configFile.DirExists())
        configFile.Mkdir(0777, wxPATH_MKDIR_FULL);

    wxFileConfig * config = dynamic_cast<wxFileConfig*>(wxFileConfig::Get());
    wxASSERT(config != NULL);

    wxFileOutputStream fileStream(configFile.GetFullPath());
    config->Save(fileStream);

    // Clean up printing stuff.
    delete g_printData;
    delete g_pageSetupData;

    return wxApp::OnExit();
}
Exemple #18
0
int main(int argc, char* argv[])
{
    orbManager = new ORBManager(argc, argv);

    string configFilename = "iviScope.ini"; //default

    ConfigFile configFile(configFilename);

    string logicalName = "IVI Scope";
    if (!(configFile.getParameter("logicalName", logicalName)))
        cout << "Could not find logical name in config file." << endl;

    IVIScopeDevice scope1(orbManager, logicalName, configFilename);

    scope1.setSaveAttributesToFile(true);

    orbManager->run();

    return 0;
}
    virtual void SetUp() {
        runtime_ = CommonAPI::Runtime::get();
        ASSERT_TRUE((bool)runtime_);

#ifdef WIN32
        configFileName_ = _pgmptr;
#else
        char cCurrentPath[FILENAME_MAX];
        if(getcwd(cCurrentPath, sizeof(cCurrentPath)) == NULL) {
            std::perror("DBusProxyFactoryTest::SetUp");
        }
        configFileName_ = cCurrentPath;
#endif

        configFileName_ += DBUS_CONFIG_SUFFIX;
        std::ofstream configFile(configFileName_);
        ASSERT_TRUE(configFile.is_open());
        configFile << fileString;
        configFile.close();
    }
Exemple #20
0
void CConfig::SaveToFile()
{
    QFile configFile(CFG_FILE);
    if(!configFile.open(QIODevice::WriteOnly))return;

    QTextStream outStream(&configFile);

    outStream<<_config.strCamUrl_GV.data()<<"\n";
    outStream<<_config.strCamUrl_GV_ir.data()<<"\n";
    outStream<<QString::number(_config.trkWidth)<<"\n";
    outStream<<QString::number(_config.trkHeight)<<"\n";
    outStream<<QString::number(_config.frmPosX)<<"\n";
    outStream<<QString::number(_config.frmPosY)<<"\n";
    outStream<<QString::number(_config.frmWidth)<<"\n";
    outStream<<QString::number(_config.frmHeight)<<"\n";
    outStream<<QString::number(_config.fps)<<"\n";
    outStream<<QString::number(_config.ipCam)<<"\n";
    //Close the file
    configFile.close();
}
Exemple #21
0
void CConfig::SaveToFile()
{
    QFile configFile(CFG_FILE);
    if(!configFile.open(QIODevice::WriteOnly))return;

    QTextStream outStream(&configFile);

    outStream<<m_config.mapFilename.data()<<"\n";
    outStream<<QString::number(m_config.m_lat)<<"\n";
    outStream<<QString::number(m_config.m_long)<<"\n";
    outStream<<QString::number(m_config.scale)<<"\n";
    outStream<<QString::number(m_config.trueN)<<"\n";
    outStream<<QString::number(m_config.dxView)<<"\n";
    outStream<<QString::number(m_config.dyView)<<"\n";
    outStream<<QString::number(m_config.mapEnabled)<<"\n";
    outStream<<QString::number(m_config.cfarThresh)<<"\n";
    outStream<<QString::number(m_config.codeType)<<"\n";
    //Close the file
    configFile.close();
}
Exemple #22
0
  Configuration ConfigBase::convertConfiguration( const QString &profile ) {

    bool isDfendProf = false;
    m_Configuration.clear();

    if ( profile.isEmpty() || profile.isNull() ) {
      return m_Configuration;
    }

    QFile configFile( profile );

    if ( !configFile.exists() ) {
      return m_Configuration;
    }

    QSettings *readConf = new QSettings( profile, QSettings::IniFormat );

    QStringList allKeys = readConf->allKeys();
    foreach( QString key, allKeys ) {

      if (( key == "ExtraInfo" ) || ( key == "Extra" ) ) {
        isDfendProf = true;
        break;
      }
    }

    if ( !isDfendProf ) {
      m_Configuration.clear();
      return m_Configuration;
    }

    m_Configuration = readConfiguration( profile );

    DFend_Configuration dfend_config;
    m_Configuration.dfendConfig = dfend_config;

    readConf = 0;
    delete readConf;

    return m_Configuration;
  }
Exemple #23
0
//加载配置文件
BOOL CDataBaseManager::LoadConfig()
{
	wifstream configFile(L"C:\\IOServerConfig.cfg");
	if (!configFile.is_open())
	{
		cout << "无法打开数据库配置文件" << endl;
		return FALSE;
	}
	while (!configFile.eof())
	{
		wchar_t wcsLine[512] = { 0 };
		configFile.getline(wcsLine, 512);
		wstring strLine(wcsLine);
		int nFlag = strLine.find(L":");
		wstring strKey = strLine.substr(0, nFlag);
		wstring strValue = strLine.substr(nFlag + 1);
		if (strKey.compare(L"IP") == 0)
		{
			m_IP = strValue;
		}
		else if (strKey.compare(L"PORT") == 0)
		{
			m_PORT = strValue;
		}
		else if (strKey.compare(L"DBNAME") == 0)
		{
			m_DBNAME = strValue;
		}
		else if (strKey.compare(L"DBUSER") == 0)
		{
			m_DBUSER = strValue;
		}
		else if (strKey.compare(L"DBPWD") == 0)
		{
			m_DBPWD = strValue;
		}
	}


	return TRUE;
}
Exemple #24
0
void ConfigLoader::LoadConfig()
{
	std::ifstream configFile( "config/Config.txt" );
	std::string configLine;

	while ( getline( configFile, configLine ) )
	{
		if ( configLine[0] == '#' || configLine.empty() )
			continue;

		std::stringstream ss(configLine);
		std::string str;
		ss >> str;

		if (  configLine.find( "is_fast_mode" ) != std::string::npos )
		{
			std::string fastMode;
			ss >> fastMode;
			isFastMode = ( fastMode.find( "true" ) != std::string::npos );
		}
		else if (  configLine.find( "ball_speed_normal" ) != std::string::npos )
Exemple #25
0
Document loadConfigObj(string filename)
{
	string configJson = "", line;
	ifstream configFile(filename);
	while (getline(configFile, line))
	{
		configJson += line + "\n";
	}
	configFile.close();

	if (configJson == "")
	{
		log_error("config file is not found or empty");
	}

	Document configDoc;
	configDoc.Parse(configJson.c_str());
	assert(configDoc.IsObject());

	return move(configDoc);
}
Exemple #26
0
QString ConfigFile::backup() const
{
    QString baseFile = configFile();
    auto versionString = clientVersionString();
    if (!versionString.isEmpty())
        versionString.prepend('_');
    QString backupFile =
        QString("%1.backup_%2%3")
            .arg(baseFile)
            .arg(QDateTime::currentDateTime().toString("yyyyMMdd_HHmmss"))
            .arg(versionString);

    // If this exact file already exists it's most likely that a backup was
    // already done. (two backup calls directly after each other, potentially
    // even with source alterations in between!)
    if (!QFile::exists(backupFile)) {
        QFile f(baseFile);
        f.copy(backupFile);
    }
    return backupFile;
}
Exemple #27
0
ERYDBErrorInfo::ERYDBErrorInfo()
{
	Config* cf = Config::makeConfig();
	string configFile(cf->getConfig("SystemConfig", "ErrorMessageFile"));
	if (configFile.length() == 0)
		configFile = startup::StartUp::installDir() + "/etc/ErrorMessage.txt";
	ifstream msgFile(configFile.c_str());
	while (msgFile.good())
	{
		stringbuf* sb = new stringbuf;
		msgFile.get(*sb);
		string m = sb->str();
		delete sb;
		if (m.length() > 0 && m[0] != '#')
		{
			typedef boost::tokenizer<boost::char_separator<char> > tokenizer;
			boost::char_separator<char> sep("\t");
			tokenizer tokens(m, sep);
			tokenizer::iterator tok_iter = tokens.begin();
			if (tok_iter != tokens.end())
			{
				int msgid = atoi(tok_iter->c_str());
				++tok_iter;
				if (tok_iter != tokens.end())
				{
					++tok_iter;
					if (tok_iter != tokens.end())
					{
						string msgtext = *tok_iter;
						fErrMap[msgid] = msgtext;
					}
				}
			}
		}
		ios_base::iostate st = msgFile.rdstate();
		if ((st & ios_base::failbit) && !(st & ios_base::eofbit))
			msgFile.clear();
		(void)msgFile.get();
	}
}
Exemple #28
0
void Netctl::readConfiguration()
{
    if (debug) qDebug() << "[DE]" << "[readConfiguration]";

    // default configuration
    QMap<QString, QString> rawConfig;
    rawConfig[QString("CMD")] = QString("/usr/bin/netctl");
    rawConfig[QString("EXTIP")] = QString("false");
    rawConfig[QString("EXTIPCMD")] = QString("wget -qO- http://ifconfig.me/ip");
    rawConfig[QString("IPCMD")] = QString("/usr/bin/ip");
    rawConfig[QString("NETDIR")] = QString("/sys/class/net/");
    rawConfig[QString("NETCTLAUTOCMD")] = QString("/usr/bin/netctl-auto");

    QString fileName = KGlobal::dirs()->findResource("config", "netctl.conf");
    if (debug) qDebug() << "[DE]" << "[readConfiguration]" << ":" << "Configuration file" << fileName;
    QFile configFile(fileName);
    if (!configFile.open(QIODevice::ReadOnly)) {
        configuration = updateConfiguration(rawConfig);
        return;
    }
    QString fileStr;
    QStringList value;
    while (true) {
        fileStr = QString(configFile.readLine()).trimmed();
        if ((fileStr.isEmpty()) && (!configFile.atEnd())) continue;
        if ((fileStr[0] == QChar('#')) && (!configFile.atEnd())) continue;
        if ((fileStr[0] == QChar(';')) && (!configFile.atEnd())) continue;
        if (fileStr.contains(QChar('='))) {
            value.clear();
            for (int i=1; i<fileStr.split(QChar('=')).count(); i++)
                value.append(fileStr.split(QChar('='))[i]);
            rawConfig[fileStr.split(QChar('='))[0]] = value.join(QChar('='));
        }
        if (configFile.atEnd()) break;
    }
    configFile.close();
    configuration = updateConfiguration(rawConfig);

    return;
}
Exemple #29
0
void MirallConfigFile::writeOwncloudConfig( const QString& connection,
                                            const QString& url,
                                            const QString& user,
                                            const QString& passwd )
{
    const QString file = configFile();
    bool skipPwd = false; // can be refactored - remove it.
    qDebug() << "*** writing mirall config to " << file << " Skippwd: " << skipPwd;

    QSettings settings( file, QSettings::IniFormat);
    settings.setIniCodec( "UTF-8" );

    settings.beginGroup( connection );
    settings.setValue( QLatin1String("url"), url );
    settings.setValue( QLatin1String("user"), user );


#ifdef WITH_QTKEYCHAIN
    // Password is stored to QtKeyChain now by default in CredentialStore
    // The CredentialStore calls clearPasswordFromConfig after the creds
    // were successfully wiritten to delete the passwd entry from config.
    qDebug() << "Going to delete the password from settings file.";
#else
    if( !skipPwd )
        writePassword( passwd );
#endif
    if( !skipPwd )
        writePassword( passwd );
    else
        clearPasswordFromConfig();  // wipe the password.

    settings.setValue( QLatin1String("nostoredpassword"), QVariant(skipPwd) );
    settings.sync();
    // check the perms, only read-write for the owner.
    QFile::setPermissions( file, QFile::ReadOwner|QFile::WriteOwner );

    // Store credentials temporar until the config is finalized.
    ownCloudInfo::instance()->setCredentials( user, passwd, _customHandle );

}
StaticFileController::StaticFileController(QSettings* settings, QObject* parent)
    :HttpRequestHandler(parent)
{
    maxAge=settings->value("maxAge","60000").toInt();
    encoding=settings->value("encoding","UTF-8").toString();
    docroot=settings->value("path",".").toString();
    // Convert relative path to absolute, based on the directory of the config file.
#ifdef Q_OS_WIN32
    if (QDir::isRelativePath(docroot) && settings->format()!=QSettings::NativeFormat)
#else
        if (QDir::isRelativePath(docroot))
#endif
        {
        QFileInfo configFile(settings->fileName());
        docroot=QFileInfo(configFile.absolutePath(),docroot).absoluteFilePath();
    }
    qDebug("StaticFileController: docroot=%s, encoding=%s, maxAge=%i",qPrintable(docroot),qPrintable(encoding),maxAge);
    maxCachedFileSize=settings->value("maxCachedFileSize","65536").toInt();
    cache.setMaxCost(settings->value("cacheSize","1000000").toInt());
    cacheTimeout=settings->value("cacheTime","60000").toInt();
    qDebug("StaticFileController: cache timeout=%i, size=%i",cacheTimeout,cache.maxCost());
}