job->start();
}
+void DiscoveryPhase::setSelectiveSyncBlackList(const QStringList &list)
+{
+ _selectiveSyncBlackList = list;
+ std::sort(_selectiveSyncBlackList.begin(), _selectiveSyncBlackList.end());
+}
+
+void DiscoveryPhase::setSelectiveSyncWhiteList(const QStringList &list)
+{
+ _selectiveSyncWhiteList = list;
+ std::sort(_selectiveSyncWhiteList.begin(), _selectiveSyncWhiteList.end());
+}
+
void DiscoveryPhase::scheduleMoreJobs()
{
auto limit = qMax(1, _syncOptions._parallelNetworkJobs);
QMap<QString, QString> _renamedItems; // map source -> destinations
int _currentlyActiveJobs = 0;
+ // both must contain a sorted list
+ QStringList _selectiveSyncBlackList;
+ QStringList _selectiveSyncWhiteList;
+
void scheduleMoreJobs();
bool isInSelectiveSyncBlackList(const QString &path) const;
SyncJournalDb *_statedb;
AccountPtr _account;
SyncOptions _syncOptions;
- QStringList _selectiveSyncBlackList;
- QStringList _selectiveSyncWhiteList;
ExcludedFiles *_excludes;
QRegExp _invalidFilenameRx; // FIXME: maybe move in ExcludedFiles
QStringList _serverBlacklistedFiles; // The blacklist from the capabilities
void startJob(ProcessDirectoryJob *);
+ void setSelectiveSyncBlackList(const QStringList &list);
+ void setSelectiveSyncWhiteList(const QStringList &list);
+
// output
QByteArray _dataFingerprint;
_discoveryPhase->_remoteFolder+='/';
_discoveryPhase->_syncOptions = _syncOptions;
_discoveryPhase->_shouldDiscoverLocaly = [this](const QString &s) { return shouldDiscoverLocally(s); };
- _discoveryPhase->_selectiveSyncBlackList = selectiveSyncBlackList;
- _discoveryPhase->_selectiveSyncWhiteList = _journal->getSelectiveSyncList(SyncJournalDb::SelectiveSyncWhiteList, &ok);
+ _discoveryPhase->setSelectiveSyncBlackList(selectiveSyncBlackList);
+ _discoveryPhase->setSelectiveSyncWhiteList(_journal->getSelectiveSyncList(SyncJournalDb::SelectiveSyncWhiteList, &ok));
if (!ok) {
qCWarning(lcEngine) << "Unable to read selective sync list, aborting.";
syncError(tr("Unable to read from the sync journal."));