mirror of
https://github.com/nextcloud/desktop.git
synced 2025-10-26 11:17:43 +00:00
- various code cleanups
- fix alias usage in sitecopy config file
This commit is contained in:
parent
627a2691ad
commit
0000caa632
@ -166,12 +166,12 @@ void Application::slotAddFolder()
|
||||
|
||||
settings.setValue("backend:sitecopy/url", _folderWizard->field("OCUrl"));
|
||||
settings.setValue("backend:sitecopy/user", _folderWizard->field("OCUser"));
|
||||
settings.setValue("backend:sitecopy/passwd", _folderWizard->field("OCPasswd"));
|
||||
settings.setValue("backend:sitecopy/alias", _folderWizard->field("OCSiteAlias"));
|
||||
|
||||
qDebug() << "Now writing sitecopy config " << _folderWizard->field("OCSiteAlias").toString(); ;
|
||||
SitecopyConfig scConfig;
|
||||
scConfig.writeSiteConfig( _folderWizard->field("sourceFolder").toString(), /* local path */
|
||||
_folderWizard->field("OCSiteAlias").toString(), /* site alias */
|
||||
alias, /* _folderWizard->field("OCSiteAlias").toString(), site alias */
|
||||
_folderWizard->field("OCUrl").toString(), /* site URL */
|
||||
_folderWizard->field("OCUser").toString(),
|
||||
_folderWizard->field("OCPasswd").toString() );
|
||||
|
||||
@ -26,31 +26,33 @@ void SitecopyConfig::writeSiteConfig( const QString& localPath,
|
||||
const QString& user, const QString& passwd )
|
||||
{
|
||||
parseSiteConfig( );
|
||||
// now all configured sites are in the hash mSites.
|
||||
foreach( QString site, mSites.keys() ) {
|
||||
qDebug() << "*** Writing Site Alias " << siteAlias;
|
||||
|
||||
// now all configured sites are in the hash _Sites.
|
||||
foreach( QString site, _Sites.keys() ) {
|
||||
qDebug() << "Known site: " << site;
|
||||
}
|
||||
|
||||
// check if there is already a cloudia site.
|
||||
QHash<QString, QString> cloudiaDefs;
|
||||
// check if there is already a oc site.
|
||||
QHash<QString, QString> ocDefs;
|
||||
|
||||
if( mSites.contains( siteAlias ) ) {
|
||||
cloudiaDefs = mSites[siteAlias];
|
||||
if( _Sites.contains( siteAlias ) ) {
|
||||
ocDefs = _Sites[siteAlias];
|
||||
}
|
||||
QUrl ocUrl( url );
|
||||
QString host = ocUrl.host();
|
||||
QString path = ocUrl.path();
|
||||
qDebug() << "Split url, host: " << host << " and path: " << path;
|
||||
// FIXME: Check if user settings are overwritten
|
||||
cloudiaDefs["server"] = host;
|
||||
cloudiaDefs["protocol"] = "webdav";
|
||||
cloudiaDefs["local"] = localPath;
|
||||
cloudiaDefs["remote"] = path + "/files/webdav.php";
|
||||
cloudiaDefs["password"] = passwd;
|
||||
ocDefs["server"] = host;
|
||||
ocDefs["protocol"] = "webdav";
|
||||
ocDefs["local"] = localPath;
|
||||
ocDefs["remote"] = path + "/files/webdav.php";
|
||||
ocDefs["password"] = passwd;
|
||||
|
||||
// QString user( getenv("USER"));
|
||||
cloudiaDefs["username"] = user;
|
||||
mSites.insert( siteAlias, cloudiaDefs );
|
||||
ocDefs["username"] = user;
|
||||
_Sites.insert( siteAlias, ocDefs );
|
||||
|
||||
qDebug() << "** Now Writing!";
|
||||
|
||||
@ -60,8 +62,8 @@ void SitecopyConfig::writeSiteConfig( const QString& localPath,
|
||||
}
|
||||
QTextStream out(&configFile);
|
||||
|
||||
foreach( QString site, mSites.keys() ) {
|
||||
QHash<QString, QString> configs = mSites[site];
|
||||
foreach( QString site, _Sites.keys() ) {
|
||||
QHash<QString, QString> configs = _Sites[site];
|
||||
qDebug() << "Writing site: <" << site << ">";
|
||||
out << "site " << site << '\n';
|
||||
foreach( QString configKey, configs.keys() ) {
|
||||
@ -97,8 +99,8 @@ bool SitecopyConfig::parseSiteConfig( )
|
||||
QByteArray line = configFile.readLine();
|
||||
processConfigLine( line.simplified() );
|
||||
}
|
||||
if( ! mCurrSiteName.isEmpty() ) {
|
||||
mSites.insert(mCurrSiteName, mCurrSite);
|
||||
if( ! _CurrSiteName.isEmpty() ) {
|
||||
_Sites.insert(_CurrSiteName, _CurrSite);
|
||||
} else {
|
||||
qDebug() << "ERR: No current Site name found";
|
||||
return false;
|
||||
@ -121,23 +123,23 @@ void SitecopyConfig::processConfigLine( const QString& line )
|
||||
|
||||
if( key == QString::fromLatin1("site") && !val.isEmpty() ) {
|
||||
qDebug() << "Found site " << val;
|
||||
if( !mCurrSiteName.isEmpty() && !mCurrSite.isEmpty() ) {
|
||||
if( !_CurrSiteName.isEmpty() && !_CurrSite.isEmpty() ) {
|
||||
// save to the sites hash first
|
||||
mSites.insert( mCurrSiteName, mCurrSite );
|
||||
mCurrSite.clear();
|
||||
_Sites.insert( _CurrSiteName, _CurrSite );
|
||||
_CurrSite.clear();
|
||||
}
|
||||
if( !val.isEmpty() ) {
|
||||
mCurrSiteName = val;
|
||||
_CurrSiteName = val;
|
||||
// new site entry.
|
||||
if( mSites.contains( val ) ) {
|
||||
mCurrSite = mSites[val];
|
||||
if( _Sites.contains( val ) ) {
|
||||
_CurrSite = _Sites[val];
|
||||
}
|
||||
} else {
|
||||
qDebug() << "Found empty site name, can not parse, fix manually!";
|
||||
mCurrSiteName.clear();
|
||||
_CurrSiteName.clear();
|
||||
}
|
||||
} else {
|
||||
mCurrSite.insert( key, val );
|
||||
_CurrSite.insert( key, val );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -30,10 +30,10 @@ public:
|
||||
private:
|
||||
void processConfigLine( const QString& );
|
||||
|
||||
QHash<QString, QHash<QString, QString> > mSites;
|
||||
QHash<QString, QString> mCurrSite;
|
||||
QHash<QString, QStringList> mChangesHash;
|
||||
QString mCurrSiteName;
|
||||
QHash<QString, QHash<QString, QString> > _Sites;
|
||||
QHash<QString, QString> _CurrSite;
|
||||
// QHash<QString, QStringList> _ChangesHash;
|
||||
QString _CurrSiteName;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@ -60,6 +60,11 @@ bool SiteCopyFolder::isBusy() const
|
||||
return (_SiteCopy->state() != QProcess::NotRunning);
|
||||
}
|
||||
|
||||
QString SiteCopyFolder::siteCopyAlias() const
|
||||
{
|
||||
return _siteCopyAlias;
|
||||
}
|
||||
|
||||
void SiteCopyFolder::startSync(const QStringList &pathList)
|
||||
{
|
||||
QMutexLocker locker(&_syncMutex);
|
||||
@ -86,8 +91,8 @@ void SiteCopyFolder::startSiteCopy( const QString& command, SiteCopyState nextSt
|
||||
QString programm = "/usr/bin/sitecopy";
|
||||
QStringList args;
|
||||
args << command << alias();
|
||||
qDebug() << "** staring command " << command;
|
||||
mNextStep = nextState;
|
||||
qDebug() << "** staring command " << args;
|
||||
_NextStep = nextState;
|
||||
_lastOutput.clear();
|
||||
|
||||
_SiteCopy->start( programm, args );
|
||||
@ -110,20 +115,20 @@ void SiteCopyFolder::slotFinished(int exitCode, QProcess::ExitStatus exitStatus)
|
||||
emit( syncFinished( SyncResult( SyncResult::Error )));
|
||||
}
|
||||
|
||||
if( mNextStep == Sync ) {
|
||||
if( _NextStep == Sync ) {
|
||||
startSiteCopy( "--sync", Finish ); // sync local with cloud data.
|
||||
} else if( mNextStep == Update ) {
|
||||
} else if( _NextStep == Update ) {
|
||||
startSiteCopy( "--update", Finish ); // update from owncloud
|
||||
} else if( mNextStep == Finish ) {
|
||||
} else if( _NextStep == Finish ) {
|
||||
qDebug() << "Finished!";
|
||||
|
||||
emit syncFinished((exitCode == -1 ) ?
|
||||
SyncResult(SyncResult::Error)
|
||||
: SyncResult(SyncResult::Success));
|
||||
// mLocalChangesSeen = false;
|
||||
} else if( mNextStep == Status ) {
|
||||
} else if( _NextStep == Status ) {
|
||||
startSiteCopy( "--flatlist", DisplayStatus );
|
||||
} else if( mNextStep == DisplayStatus ) {
|
||||
} else if( _NextStep == DisplayStatus ) {
|
||||
if( exitCode == 1 ) {
|
||||
qDebug() << "Exit-Code: Sync Needed!";
|
||||
analyzeStatus();
|
||||
@ -193,7 +198,7 @@ void SiteCopyFolder::slotReadyReadStandardOutput()
|
||||
{
|
||||
QByteArray arr = _SiteCopy->readAllStandardOutput();
|
||||
|
||||
if( mNextStep == Finish ) {
|
||||
if( _NextStep == Finish ) {
|
||||
QTextCodec *codec = QTextCodec::codecForName("UTF-8");
|
||||
// render the output to status line
|
||||
QString string = codec->toUnicode( arr );
|
||||
@ -207,7 +212,7 @@ void SiteCopyFolder::slotReadyReadStandardOutput()
|
||||
}
|
||||
emit statusString( _StatusString );
|
||||
|
||||
} else if( mNextStep == DisplayStatus ) {
|
||||
} else if( _NextStep == DisplayStatus ) {
|
||||
_lastOutput += arr;
|
||||
}
|
||||
|
||||
|
||||
@ -40,6 +40,9 @@ public:
|
||||
|
||||
virtual bool isBusy() const;
|
||||
|
||||
|
||||
QString siteCopyAlias() const;
|
||||
|
||||
signals:
|
||||
void statusString( const QString& );
|
||||
|
||||
@ -61,7 +64,8 @@ private:
|
||||
|
||||
QByteArray _lastOutput;
|
||||
QString _StatusString;
|
||||
SiteCopyState mNextStep;
|
||||
SiteCopyState _NextStep;
|
||||
QString _siteCopyAlias;
|
||||
QHash<QString, QStringList> mChangesHash;
|
||||
|
||||
};
|
||||
|
||||
Loading…
Reference in New Issue
Block a user