Documentation ¶
Index ¶
- Variables
- type FSKeystore
- type Keystore
- type MemKeystore
- type MutexKeystore
- func (mk *MutexKeystore) Children() []Keystore
- func (mk *MutexKeystore) Delete(k string) error
- func (mk *MutexKeystore) Get(k string) ([]byte, error)
- func (mk *MutexKeystore) Has(k string) (bool, error)
- func (mk *MutexKeystore) List() ([]string, error)
- func (mk *MutexKeystore) Put(k string, data []byte) error
Constants ¶
This section is empty.
Variables ¶
var ErrKeyExists = fmt.Errorf("key by that name already exists, refusing to overwrite")
ErrKeyExists is returned when writing a key would overwrite an existing key
var ErrKeyFmt = fmt.Errorf("key has invalid format")
ErrKeyFmt is returned when the key's format is invalid
var ErrNoSuchKey = fmt.Errorf("no key by the given name was found")
ErrNoSuchKey is returned if a key of the given name is not found in the store
Functions ¶
This section is empty.
Types ¶
type FSKeystore ¶
type FSKeystore struct {
// contains filtered or unexported fields
}
FSKeystore is a keystore backed by files in a given directory stored on disk.
func NewFSKeystore ¶
func NewFSKeystore(dir string) (*FSKeystore, error)
NewFSKeystore returns a new filesystem keystore at directory `dir`
func (*FSKeystore) Delete ¶
func (ks *FSKeystore) Delete(name string) error
Delete removes a key from the Keystore
func (*FSKeystore) Get ¶
func (ks *FSKeystore) Get(name string) ([]byte, error)
Get retrieves a key from the Keystore if it exists, and returns ErrNoSuchKey otherwise.
func (*FSKeystore) Has ¶
func (ks *FSKeystore) Has(name string) (bool, error)
Has returns whether or not a key exists in the Keystore
func (*FSKeystore) List ¶
func (ks *FSKeystore) List() ([]string, error)
List returns a list of key identifiers
type Keystore ¶
type Keystore interface { // Has returns whether or not a key exist in the Keystore Has(string) (bool, error) // Put stores a key in the Keystore, if a key with the same name already exists, returns ErrKeyExists Put(string, []byte) error // Get retrieves a key from the Keystore if it exists, and returns ErrNoSuchKey // otherwise. Get(string) ([]byte, error) // Delete removes a key from the Keystore Delete(string) error // List returns a list of key identifier List() ([]string, error) }
Keystore provides a key management interface
type MemKeystore ¶
type MemKeystore struct {
// contains filtered or unexported fields
}
MemKeystore is a keystore backed by an in-memory map
func NewMemKeystore ¶
func NewMemKeystore() *MemKeystore
NewMemKeystore returns a new map-based keystore
func (*MemKeystore) Delete ¶
func (mk *MemKeystore) Delete(k string) error
Delete removes a key from the map
func (*MemKeystore) Get ¶
func (mk *MemKeystore) Get(k string) ([]byte, error)
Get retrieves a key from the map if it exists, else it returns ErrNoSuchKey
func (*MemKeystore) Has ¶
func (mk *MemKeystore) Has(k string) (bool, error)
Has returns whether or not a key exists in the keystore map
func (*MemKeystore) List ¶
func (mk *MemKeystore) List() ([]string, error)
List returns a list of key identifiers in random order
type MutexKeystore ¶
MutexKeystore contains a child keystore and a mutex. used for coarse sync
func MutexWrap ¶
func MutexWrap(k Keystore) *MutexKeystore
MutexWrap constructs a keystore with a coarse lock around the entire keystore, for every single operation
func (*MutexKeystore) Children ¶
func (mk *MutexKeystore) Children() []Keystore
Children implements Shim
func (*MutexKeystore) Delete ¶
func (mk *MutexKeystore) Delete(k string) error
Delete implements Keystore.Delete
func (*MutexKeystore) Get ¶
func (mk *MutexKeystore) Get(k string) ([]byte, error)
Get implements Keystore.Get
func (*MutexKeystore) Has ¶
func (mk *MutexKeystore) Has(k string) (bool, error)
Has implements Keystore.Has
func (*MutexKeystore) List ¶
func (mk *MutexKeystore) List() ([]string, error)
List implements Keystore.List