keyvalue

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 18, 2023 License: BSD-3-Clause Imports: 15 Imported by: 2

Documentation

Overview

Package keyvalue implements DVID support for data using generic key-value.

Index

Constants

View Source
const (
	Version  = "0.2"
	RepoURL  = "github.com/janelia-flyem/dvid/datatype/keyvalue"
	TypeName = "keyvalue"
)

Variables

View Source
var MaxTKey = storage.MaxTKey(keyStandard)
View Source
var MinTKey = storage.MinTKey(keyStandard)

Functions

func DecodeTKey

func DecodeTKey(tk storage.TKey) (string, error)

DecodeTKey returns the string key used for this keyvalue.

func NewTKey

func NewTKey(key string) (storage.TKey, error)

NewTKey returns the "key" key component.

Types

type Data

type Data struct {
	*datastore.Data
}

Data embeds the datastore's Data and extends it with keyvalue properties (none for now).

func GetByUUIDName

func GetByUUIDName(uuid dvid.UUID, name dvid.InstanceName) (*Data, error)

GetByUUIDName returns a pointer to labelblk data given a UUID and data name.

func (*Data) DeleteData

func (d *Data) DeleteData(ctx storage.Context, keyStr string) error

DeleteData deletes a key-value pair

func (*Data) DescribeTKeyClass

func (d *Data) DescribeTKeyClass(tkc storage.TKeyClass) string

DescribeTKeyClass returns a string explanation of what a particular TKeyClass is used for. Implements the datastore.TKeyClassDescriber interface.

func (*Data) DoRPC

func (d *Data) DoRPC(request datastore.Request, reply *datastore.Response) error

DoRPC acts as a switchboard for RPC commands.

func (*Data) Equals

func (d *Data) Equals(d2 *Data) bool

func (*Data) GetData

func (d *Data) GetData(ctx storage.Context, keyStr string) ([]byte, bool, error)

GetData gets a value using a key

func (*Data) GetKeys

func (d *Data) GetKeys(ctx storage.Context) ([]string, error)

func (*Data) GetKeysInRange

func (d *Data) GetKeysInRange(ctx storage.Context, keyBeg, keyEnd string) ([]string, error)

func (*Data) GobDecode

func (d *Data) GobDecode(b []byte) error

func (*Data) GobEncode

func (d *Data) GobEncode() ([]byte, error)

func (*Data) Help

func (d *Data) Help() string

func (*Data) JSONString

func (d *Data) JSONString() (jsonStr string, err error)

JSONString returns the JSON for this Data's configuration

func (*Data) KeyExists

func (d *Data) KeyExists(ctx storage.Context, keyStr string) (bool, error)

KeyExists returns true if a key is found.

func (*Data) MarshalJSON

func (d *Data) MarshalJSON() ([]byte, error)

func (*Data) PutData

func (d *Data) PutData(ctx storage.Context, keyStr string, value []byte) error

PutData puts a key-value at a given uuid

func (*Data) ServeHTTP

func (d *Data) ServeHTTP(uuid dvid.UUID, ctx *datastore.VersionedCtx, w http.ResponseWriter, r *http.Request) (activity map[string]interface{})

ServeHTTP handles all incoming HTTP requests for this data.

func (*Data) StreamKV added in v0.9.17

func (d *Data) StreamKV(v dvid.VersionID) (chan storage.KeyValue, error)

StreamKV returns a channel immediately and asynchronously sends all key-value data through the channel, closing it when all the data has been sent.

type Type

type Type struct {
	datastore.Type
}

Type embeds the datastore's Type to create a unique type for keyvalue functions.

func NewType

func NewType() *Type

NewType returns a pointer to a new keyvalue Type with default values set.

func (*Type) Help

func (dtype *Type) Help() string

func (*Type) NewDataService

func (dtype *Type) NewDataService(uuid dvid.UUID, id dvid.InstanceID, name dvid.InstanceName, c dvid.Config) (datastore.DataService, error)

NewDataService returns a pointer to new keyvalue data with default values.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL