Files
badger/kv_provider.go
2025-04-25 12:51:59 +03:00

33 lines
651 B
Go

package universe_badger
import (
"github.com/dgraph-io/badger/v4"
kv "universe.mrlokop.dev/key_value"
)
type keyValueProvider struct {
db *badger.DB
}
func (k *keyValueProvider) HasCapability(capability kv.Capability) bool {
switch capability {
default:
return false
}
}
func (k *keyValueProvider) ProvideBinary(prefix string) (kv.KeyValueStoreBinary, error) {
return &keyValueStorage{
db: k.db,
prefix: prefix,
}, nil
}
func (k *keyValueProvider) ProvideString(prefix string) (kv.KeyValueStoreString, error) {
bin, err := k.ProvideBinary(prefix)
if err != nil {
return nil, err
}
return kv.WrapStringToBinary(bin), err
}