FolderMan: Clean up API

Many public slots didn't need to be public or slots.
This commit is contained in:
Christian Kamm 2016-10-19 11:03:13 +02:00 committed by ckamm
parent a2222228c9
commit 6026148692
7 changed files with 61 additions and 51 deletions

View File

@ -321,7 +321,7 @@ void AccountSettings::slotFolderWizardAccepted()
// The user already accepted the selective sync dialog. everything is in the white list // The user already accepted the selective sync dialog. everything is in the white list
f->journalDb()->setSelectiveSyncList(SyncJournalDb::SelectiveSyncWhiteList, f->journalDb()->setSelectiveSyncList(SyncJournalDb::SelectiveSyncWhiteList,
QStringList() << QLatin1String("/")); QStringList() << QLatin1String("/"));
folderMan->slotScheduleAllFolders(); folderMan->scheduleAllFolders();
emit folderChanged(); emit folderChanged();
} }
} }
@ -360,7 +360,7 @@ void AccountSettings::slotRemoveCurrentFolder()
return; return;
} }
folderMan->slotRemoveFolder( folderMan->folder(alias) ); folderMan->removeFolder( folderMan->folder(alias) );
_model->removeRow(row); _model->removeRow(row);
// single folder fix to show add-button and hide remove-button // single folder fix to show add-button and hide remove-button
@ -468,7 +468,7 @@ void AccountSettings::slotSyncCurrentFolderNow()
QString alias = _model->data( selected, FolderStatusDelegate::FolderAliasRole ).toString(); QString alias = _model->data( selected, FolderStatusDelegate::FolderAliasRole ).toString();
FolderMan *folderMan = FolderMan::instance(); FolderMan *folderMan = FolderMan::instance();
folderMan->slotScheduleSync(folderMan->folder(alias)); folderMan->scheduleFolder(folderMan->folder(alias));
} }
void AccountSettings::slotOpenOC() void AccountSettings::slotOpenOC()

View File

@ -940,7 +940,7 @@ void Folder::slotLogPropagationStart()
void Folder::slotScheduleThisFolder() void Folder::slotScheduleThisFolder()
{ {
FolderMan::instance()->slotScheduleSync(this); FolderMan::instance()->scheduleFolder(this);
} }
void Folder::scheduleThisFolderSoon() void Folder::scheduleThisFolderSoon()

View File

@ -215,7 +215,7 @@ int FolderMan::setupFolders()
if (FolderDefinition::load(*settings, folderAlias, &folderDefinition)) { if (FolderDefinition::load(*settings, folderAlias, &folderDefinition)) {
Folder* f = addFolderInternal(std::move(folderDefinition), account.data()); Folder* f = addFolderInternal(std::move(folderDefinition), account.data());
if (f) { if (f) {
slotScheduleSync(f); scheduleFolder(f);
emit folderSyncStateChange(f); emit folderSyncStateChange(f);
} }
} }
@ -248,7 +248,7 @@ int FolderMan::setupFoldersMigration()
foreach ( const QString& alias, list ) { foreach ( const QString& alias, list ) {
Folder *f = setupFolderFromOldConfigFile( alias, accountState ); Folder *f = setupFolderFromOldConfigFile( alias, accountState );
if( f ) { if( f ) {
slotScheduleSync(f); scheduleFolder(f);
emit folderSyncStateChange(f); emit folderSyncStateChange(f);
} }
} }
@ -426,7 +426,7 @@ void FolderMan::slotFolderSyncPaused( Folder *f, bool paused )
if (!paused) { if (!paused) {
_disabledFolders.remove(f); _disabledFolders.remove(f);
slotScheduleSync(f); scheduleFolder(f);
} else { } else {
_disabledFolders.insert(f); _disabledFolders.insert(f);
} }
@ -466,11 +466,11 @@ Folder *FolderMan::folder( const QString& alias )
return 0; return 0;
} }
void FolderMan::slotScheduleAllFolders() void FolderMan::scheduleAllFolders()
{ {
foreach( Folder *f, _folderMap.values() ) { foreach( Folder *f, _folderMap.values() ) {
if (f && f->canSync()) { if (f && f->canSync()) {
slotScheduleSync( f ); scheduleFolder( f );
} }
} }
} }
@ -490,7 +490,7 @@ void FolderMan::slotSyncOnceFileUnlocks(const QString& path)
* if a folder wants to be synced, it calls this slot and is added * if a folder wants to be synced, it calls this slot and is added
* to the queue. The slot to actually start a sync is called afterwards. * to the queue. The slot to actually start a sync is called afterwards.
*/ */
void FolderMan::slotScheduleSync( Folder *f ) void FolderMan::scheduleFolder( Folder *f )
{ {
if( !f ) { if( !f ) {
qWarning() << "slotScheduleSync called with null folder"; qWarning() << "slotScheduleSync called with null folder";
@ -572,7 +572,7 @@ void FolderMan::slotAccountStateChanged()
if (f if (f
&& f->canSync() && f->canSync()
&& f->accountState() == accountState) { && f->accountState() == accountState) {
slotScheduleSync(f); scheduleFolder(f);
} }
} }
} else { } else {
@ -731,7 +731,7 @@ void FolderMan::slotRemoveFoldersForAccount(AccountState* accountState)
} }
foreach (const auto &f, foldersToRemove) { foreach (const auto &f, foldersToRemove) {
slotRemoveFolder(f); removeFolder(f);
} }
} }
@ -783,7 +783,7 @@ void FolderMan::slotScheduleFolderByTime()
<< "because it has been" << msecsSinceSync << "ms " << "because it has been" << msecsSinceSync << "ms "
<< "since the last sync"; << "since the last sync";
slotScheduleSync(f); scheduleFolder(f);
continue; continue;
} }
@ -800,7 +800,7 @@ void FolderMan::slotScheduleFolderByTime()
<< f->syncResult().statusString() << f->syncResult().statusString()
<< "time since last sync:" << msecsSinceSync; << "time since last sync:" << msecsSinceSync;
slotScheduleSync(f); scheduleFolder(f);
continue; continue;
} }
@ -914,7 +914,7 @@ QStringList FolderMan::findFileInLocalFolders( const QString& relPath, const Acc
return re; return re;
} }
void FolderMan::slotRemoveFolder( Folder *f ) void FolderMan::removeFolder( Folder *f )
{ {
if( !f ) { if( !f ) {
qWarning() << "!! Can not remove null folder"; qWarning() << "!! Can not remove null folder";

View File

@ -74,6 +74,9 @@ public:
*/ */
Folder* addFolder(AccountState* accountState, const FolderDefinition& folderDefinition); Folder* addFolder(AccountState* accountState, const FolderDefinition& folderDefinition);
/** Removes a folder */
void removeFolder( Folder* );
/** Returns the folder which the file or directory stored in path is in */ /** Returns the folder which the file or directory stored in path is in */
Folder* folderForPath(const QString& path); Folder* folderForPath(const QString& path);
@ -146,6 +149,24 @@ public:
*/ */
Folder* currentSyncFolder() const; Folder* currentSyncFolder() const;
/** Removes all folders */
int unloadAndDeleteAllFolders();
/**
* If enabled is set to false, no new folders will start to sync.
* The current one will finish.
*/
void setSyncEnabled( bool );
/** Queues a folder for syncing. */
void scheduleFolder(Folder*);
/** Queues all folders for syncing. */
void scheduleAllFolders();
void setDirtyProxy(bool value = true);
void setDirtyNetworkLimits();
signals: signals:
/** /**
* signal to indicate a folder has changed its sync state. * signal to indicate a folder has changed its sync state.
@ -159,41 +180,12 @@ signals:
*/ */
void scheduleQueueChanged(); void scheduleQueueChanged();
/**
* Emitted whenever the list of configured folders changes.
*/
void folderListChanged(const Folder::Map &); void folderListChanged(const Folder::Map &);
public slots: public slots:
void slotRemoveFolder( Folder* );
void slotFolderSyncPaused(Folder *, bool paused);
void slotFolderCanSyncChanged();
void slotFolderSyncStarted();
void slotFolderSyncFinished( const SyncResult& );
/**
* Terminates the current folder sync.
*
* It does not switch the folder to paused state.
*/
void terminateSyncProcess();
/* delete all folder objects */
int unloadAndDeleteAllFolders();
// if enabled is set to false, no new folders will start to sync.
// the current one will finish.
void setSyncEnabled( bool );
void slotScheduleAllFolders();
void setDirtyProxy(bool value = true);
void setDirtyNetworkLimits();
// slot to add a folder to the syncing queue
void slotScheduleSync(Folder*);
// slot to schedule an ETag job
void slotScheduleETagJob ( const QString &alias, RequestEtagJob *job);
void slotEtagJobDestroyed (QObject*);
void slotRunOneEtagJob();
/** /**
* Schedules folders of newly connected accounts, terminates and * Schedules folders of newly connected accounts, terminates and
@ -214,7 +206,18 @@ public slots:
*/ */
void slotSyncOnceFileUnlocks(const QString& path); void slotSyncOnceFileUnlocks(const QString& path);
// slot to schedule an ETag job (from Folder only)
void slotScheduleETagJob ( const QString &alias, RequestEtagJob *job);
private slots: private slots:
void slotFolderSyncPaused(Folder *, bool paused);
void slotFolderCanSyncChanged();
void slotFolderSyncStarted();
void slotFolderSyncFinished( const SyncResult& );
void slotRunOneEtagJob();
void slotEtagJobDestroyed (QObject*);
// slot to take the next folder from queue and start syncing. // slot to take the next folder from queue and start syncing.
void slotStartScheduledFolderSync(); void slotStartScheduledFolderSync();
void slotEtagPollTimerTimeout(); void slotEtagPollTimerTimeout();
@ -244,6 +247,13 @@ private slots:
void slotScheduleFolderByTime(); void slotScheduleFolderByTime();
private: private:
/**
* Terminates the current folder sync.
*
* It does not switch the folder to paused state.
*/
void terminateSyncProcess();
/** Adds a new folder, does not add it to the account settings and /** Adds a new folder, does not add it to the account settings and
* does not set an account on the new folder. * does not set an account on the new folder.
*/ */

View File

@ -785,7 +785,7 @@ void FolderStatusModel::slotApplySelectiveSync()
foreach(const auto &it, changes) { foreach(const auto &it, changes) {
folder->journalDb()->avoidReadFromDbOnNextSync(it); folder->journalDb()->avoidReadFromDbOnNextSync(it);
} }
FolderMan::instance()->slotScheduleSync(folder); FolderMan::instance()->scheduleFolder(folder);
} }
} }
@ -1099,7 +1099,7 @@ void FolderStatusModel::slotSyncAllPendingBigFolders()
foreach (const auto &it, undecidedList) { foreach (const auto &it, undecidedList) {
folder->journalDb()->avoidReadFromDbOnNextSync(it); folder->journalDb()->avoidReadFromDbOnNextSync(it);
} }
FolderMan::instance()->slotScheduleSync(folder); FolderMan::instance()->scheduleFolder(folder);
} }
resetFolders(); resetFolders();

View File

@ -126,7 +126,7 @@ void IgnoreListEditor::slotUpdateLocalIgnoreList()
// ignored (because the remote etag did not change) (issue #3172) // ignored (because the remote etag did not change) (issue #3172)
foreach (Folder* folder, folderMan->map()) { foreach (Folder* folder, folderMan->map()) {
folder->journalDb()->forceRemoteDiscoveryNextSync(); folder->journalDb()->forceRemoteDiscoveryNextSync();
folderMan->slotScheduleSync(folder); folderMan->scheduleFolder(folder);
} }
ExcludedFiles::instance().reloadExcludes(); ExcludedFiles::instance().reloadExcludes();

View File

@ -460,7 +460,7 @@ void SelectiveSyncDialog::accept()
_folder->journalDb()->avoidReadFromDbOnNextSync(it); _folder->journalDb()->avoidReadFromDbOnNextSync(it);
} }
folderMan->slotScheduleSync(_folder); folderMan->scheduleFolder(_folder);
} }
QDialog::accept(); QDialog::accept();
} }