...

Source file src/github.com/launchdarkly/go-server-sdk/v6/ldcomponents/in_memory_data_store.go

Documentation: github.com/launchdarkly/go-server-sdk/v6/ldcomponents

     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  // DiagnosticDescription implementation
    18  func (f inMemoryDataStoreFactory) DescribeConfiguration(context subsystems.ClientContext) ldvalue.Value {
    19  	return ldvalue.String("memory")
    20  }
    21  
    22  // InMemoryDataStore returns the default in-memory DataStore implementation factory.
    23  func InMemoryDataStore() subsystems.ComponentConfigurer[subsystems.DataStore] {
    24  	return inMemoryDataStoreFactory{}
    25  }
    26  

View as plain text