Add Get method to kvstore
This commit is contained in:
20
kvstore.go
20
kvstore.go
@ -62,3 +62,23 @@ func (kv KV) Keys(namespace string) (KVAPI, error) {
|
|||||||
}
|
}
|
||||||
return r, nil
|
return r, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Get returns an entry
|
||||||
|
func (kv KV) Get(namespace string, key string) (KVAPI, error) {
|
||||||
|
m := KVAPI{
|
||||||
|
Params: &kvParams{},
|
||||||
|
}
|
||||||
|
m.Params.Options = kvOptions{
|
||||||
|
Team: kv.Team,
|
||||||
|
Namespace: namespace,
|
||||||
|
EntryKey: key,
|
||||||
|
}
|
||||||
|
|
||||||
|
m.Method = "get"
|
||||||
|
|
||||||
|
r, err := kvAPIOut(kv.keybase, m)
|
||||||
|
if err != nil {
|
||||||
|
return r, err
|
||||||
|
}
|
||||||
|
return r, nil
|
||||||
|
}
|
||||||
|
|||||||
4
types.go
4
types.go
@ -676,6 +676,9 @@ type kvResult struct {
|
|||||||
TeamName string `json:"teamName"`
|
TeamName string `json:"teamName"`
|
||||||
Namespaces []string `json:"namespaces"`
|
Namespaces []string `json:"namespaces"`
|
||||||
EntryKeys []entryKey `json:"entryKeys"`
|
EntryKeys []entryKey `json:"entryKeys"`
|
||||||
|
EntryKey string `json:"entryKey"`
|
||||||
|
EntryValue string `json:"entryValue"`
|
||||||
|
Revision int `json:"revision"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// UserAPI holds information received from the user/lookup api
|
// UserAPI holds information received from the user/lookup api
|
||||||
@ -889,6 +892,7 @@ type KV struct {
|
|||||||
type kvInterface interface {
|
type kvInterface interface {
|
||||||
Namespaces() (KVAPI, error)
|
Namespaces() (KVAPI, error)
|
||||||
Keys(namespace string) (KVAPI, error)
|
Keys(namespace string) (KVAPI, error)
|
||||||
|
Get(namespace string, key string) (KVAPI, error)
|
||||||
}
|
}
|
||||||
|
|
||||||
type keybase interface {
|
type keybase interface {
|
||||||
|
|||||||
Reference in New Issue
Block a user