Other: Read sync workers setting from vault

This commit is contained in:
James Houlahan
2022-10-27 14:56:29 +02:00
parent d738fdff57
commit 3c4e8730ac
7 changed files with 54 additions and 5 deletions

View File

@ -201,3 +201,13 @@ func (vault *Vault) SetFirstStartGUI(firstStartGUI bool) error {
data.Settings.FirstStartGUI = firstStartGUI
})
}
// SyncWorkers returns the number of workers to use for syncing.
func (vault *Vault) SyncWorkers() int {
return vault.get().Settings.SyncWorkers
}
// SyncBuffer returns the number of buffer workers to use for syncing.
func (vault *Vault) SyncBuffer() int {
return vault.get().Settings.SyncBuffer
}

View File

@ -18,6 +18,7 @@
package vault_test
import (
"runtime"
"testing"
"github.com/Masterminds/semver/v3"
@ -216,3 +217,11 @@ func TestVault_Settings_FirstStartGUI(t *testing.T) {
// Check the new first start value.
require.Equal(t, false, s.GetFirstStartGUI())
}
func TestVault_Settings_SyncWorkers(t *testing.T) {
// create a new test vault.
s := newVault(t)
require.Equal(t, runtime.NumCPU(), s.SyncWorkers())
require.Equal(t, runtime.NumCPU(), s.SyncBuffer())
}

View File

@ -19,6 +19,7 @@ package vault
import (
"math/rand"
"runtime"
"github.com/ProtonMail/gluon/imap"
"github.com/ProtonMail/proton-bridge/v2/internal/updater"
@ -60,6 +61,9 @@ type Settings struct {
LastVersion string
FirstStart bool
FirstStartGUI bool
SyncWorkers int
SyncBuffer int
}
func newDefaultSettings(gluonDir string) Settings {
@ -83,6 +87,9 @@ func newDefaultSettings(gluonDir string) Settings {
LastVersion: "0.0.0",
FirstStart: true,
FirstStartGUI: true,
SyncWorkers: runtime.NumCPU(),
SyncBuffer: runtime.NumCPU(),
}
}