func NewDataStoreEvaluatorDataProviderImpl(store subsystems.DataStore, loggers ldlog.Loggers) ldeval.DataProvider
NewDataStoreEvaluatorDataProviderImpl creates the internal implementation of the adapter that connects the Evaluator (from go-server-sdk-evaluation) with the data store.
func NewDataStoreStatusProviderImpl( store subsystems.DataStore, dataStoreUpdates *DataStoreUpdateSinkImpl, ) interfaces.DataStoreStatusProvider
NewDataStoreStatusProviderImpl creates the internal implementation of DataStoreStatusProvider.
func NewInMemoryDataStore(loggers ldlog.Loggers) subsystems.DataStore
NewInMemoryDataStore creates an instance of the in-memory data store. This is not part of the public API; it is always called through ldcomponents.inMemoryDataStore().
func NewPersistentDataStoreWrapper( core subsystems.PersistentDataStore, dataStoreUpdates subsystems.DataStoreUpdateSink, cacheTTL time.Duration, loggers ldlog.Loggers, ) subsystems.DataStore
NewPersistentDataStoreWrapper creates the implementation of DataStore that we use for all persistent data stores. This is not visible in the public API; it is always called through ldcomponents.PersistentDataStore().
DataStoreUpdateSinkImpl is the internal implementation of DataStoreUpdateSink. It is exported because the actual implementation type, rather than the interface, is required as a dependency of other SDK components.
type DataStoreUpdateSinkImpl struct {
// contains filtered or unexported fields
}
func NewDataStoreUpdateSinkImpl( broadcaster *internal.Broadcaster[interfaces.DataStoreStatus], ) *DataStoreUpdateSinkImpl
NewDataStoreUpdateSinkImpl creates the internal implementation of DataStoreUpdateSink.
func (d *DataStoreUpdateSinkImpl) UpdateStatus(newStatus interfaces.DataStoreStatus)
UpdateStatus is called from the data store to push a status update.