forked from Silverfish/proton-bridge
Other: Read sync workers setting from vault
This commit is contained in:
@ -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
|
||||
}
|
||||
|
||||
@ -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())
|
||||
}
|
||||
|
||||
@ -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(),
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user