...
1 package ldcomponents
2
3 import (
4 "github.com/launchdarkly/go-sdk-common/v3/ldvalue"
5 "github.com/launchdarkly/go-server-sdk/v6/internal/datastore"
6 "github.com/launchdarkly/go-server-sdk/v6/subsystems"
7 )
8
9 type inMemoryDataStoreFactory struct{}
10
11 func (f inMemoryDataStoreFactory) Build(context subsystems.ClientContext) (subsystems.DataStore, error) {
12 loggers := context.GetLogging().Loggers
13 loggers.SetPrefix("InMemoryDataStore:")
14 return datastore.NewInMemoryDataStore(loggers), nil
15 }
16
17
18 func (f inMemoryDataStoreFactory) DescribeConfiguration(context subsystems.ClientContext) ldvalue.Value {
19 return ldvalue.String("memory")
20 }
21
22
23 func InMemoryDataStore() subsystems.ComponentConfigurer[subsystems.DataStore] {
24 return inMemoryDataStoreFactory{}
25 }
26
View as plain text