Documentation
¶
Index ¶
- Variables
- type Datastore
- type Mock
- func (m *Mock) Close() error
- func (m *Mock) Config() (*config.Config, error)
- func (m *Mock) Datastore() Datastore
- func (m *Mock) GetConfigKey(key string) (interface{}, error)
- func (m *Mock) GetStorageUsage() (uint64, error)
- func (m *Mock) Keystore() keystore.Keystore
- func (m *Mock) SetAPIAddr(addr ma.Multiaddr) error
- func (m *Mock) SetConfig(updated *config.Config) error
- func (m *Mock) SetConfigKey(key string, value interface{}) error
- type OnlyOne
- type Repo
Constants ¶
This section is empty.
Variables ¶
View Source
var (
ErrApiNotRunning = errors.New("api not running")
)
Functions ¶
This section is empty.
Types ¶
type Datastore ¶ added in v0.4.0
type Datastore interface {
ds.Batching // should be threadsafe, just be careful
io.Closer
}
Datastore is the interface required from a datastore to be acceptable to FSRepo.
type Mock ¶
type Mock struct {
C config.Config
D Datastore
K keystore.Keystore
}
Mock is not thread-safe
func (*Mock) GetConfigKey ¶
func (m *Mock) GetConfigKey(key string) (interface{}, error)
func (*Mock) GetStorageUsage ¶ added in v0.3.10
func (m *Mock) GetStorageUsage() (uint64, error)
func (*Mock) SetAPIAddr ¶ added in v0.3.8
func (m *Mock) SetAPIAddr(addr ma.Multiaddr) error
func (*Mock) SetConfigKey ¶
func (m *Mock) SetConfigKey(key string, value interface{}) error
type OnlyOne ¶ added in v0.3.2
type OnlyOne struct {
// contains filtered or unexported fields
}
OnlyOne tracks open Repos by arbitrary key and returns the already open one.
func (*OnlyOne) Open ¶ added in v0.3.2
func (o *OnlyOne) Open(key interface{}, open func() (Repo, error)) (Repo, error)
Open a Repo identified by key. If Repo is not already open, the open function is called, and the result is remember for further use.
Key must be comparable, or Open will panic. Make sure to pick keys that are unique across different concrete Repo implementations, e.g. by creating a local type:
type repoKey string
r, err := o.Open(repoKey(path), open)
Call Repo.Close when done.
type Repo ¶
type Repo interface {
Config() (*config.Config, error)
SetConfig(*config.Config) error
SetConfigKey(key string, value interface{}) error
GetConfigKey(key string) (interface{}, error)
Datastore() Datastore
GetStorageUsage() (uint64, error)
Keystore() keystore.Keystore
// SetAPIAddr sets the API address in the repo.
SetAPIAddr(addr ma.Multiaddr) error
io.Closer
}
Directories
¶
Path | Synopsis |
---|---|
package config implements the ipfs config file datastructures and utilities.
|
package config implements the ipfs config file datastructures and utilities. |
package fsrepo TODO explain the package roadmap...
|
package fsrepo TODO explain the package roadmap... |
Click to show internal directories.
Click to hide internal directories.