chore(GODT-2551): Store and Recover Last User Agent from Vault

This commit is contained in:
Leander Beernaert
2023-04-14 09:48:39 +02:00
parent 2191dc70dc
commit d6760d6f50
10 changed files with 103 additions and 12 deletions

View File

@ -225,3 +225,22 @@ func (vault *Vault) SetMaxSyncMemory(maxMemory uint64) error {
data.Settings.MaxSyncMemory = maxMemory
})
}
// GetLastUserAgent returns the last user agent recorded by bridge.
func (vault *Vault) GetLastUserAgent() string {
v := vault.get().Settings.LastUserAgent
// Handle case where there may be no value.
if len(v) == 0 {
v = DefaultUserAgent
}
return v
}
// SetLastUserAgent store the last user agent recorded by bridge.
func (vault *Vault) SetLastUserAgent(userAgent string) error {
return vault.mod(func(data *Data) {
data.Settings.LastUserAgent = userAgent
})
}

View File

@ -216,3 +216,11 @@ func TestVault_Settings_MaxSyncMemory(t *testing.T) {
// Check the default first start value.
require.Equal(t, vault.DefaultMaxSyncMemory, s.GetMaxSyncMemory())
}
func TestVault_Settings_LastUserAgent(t *testing.T) {
// create a new test vault.
s := newVault(t)
// Check the default first start value.
require.Equal(t, vault.DefaultUserAgent, s.GetLastUserAgent())
}

View File

@ -46,12 +46,15 @@ type Settings struct {
MaxSyncMemory uint64
LastUserAgent string
// **WARNING**: These entry can't be removed until they vault has proper migration support.
SyncWorkers int
SyncAttPool int
}
const DefaultMaxSyncMemory = 2 * 1024 * uint64(1024*1024)
const DefaultUserAgent = "UnknownClient/0.0.1"
func GetDefaultSyncWorkerCount() int {
const minSyncWorkers = 16
@ -91,5 +94,7 @@ func newDefaultSettings(gluonDir string) Settings {
MaxSyncMemory: DefaultMaxSyncMemory,
SyncWorkers: syncWorkers,
SyncAttPool: syncWorkers,
LastUserAgent: DefaultUserAgent,
}
}