Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Environment ¶ added in v0.5.1
type Environment struct {
// Path to the IPFS repo.
Repo string
// The plugin's config, if specified.
Config interface{}
}
Environment is the environment passed into the plugin on init.
type Plugin ¶
type Plugin interface {
// Name should return unique name of the plugin
Name() string
// Version returns current version of the plugin
Version() string
// Init is called once when the Plugin is being loaded
// The plugin is passed an environment containing the path to the
// (possibly uninitialized) IPFS repo and the plugin's config.
Init(env *Environment) error
}
Plugin is the base interface for all kinds of go-ipfs plugins It will be included in interfaces of different Plugins
Optionally, Plugins can implement io.Closer if they want to have a termination step when unloading.
type PluginDaemon ¶ added in v0.4.19
type PluginDaemon interface {
Plugin
Start(coreiface.CoreAPI) error
}
PluginDaemon is an interface for daemon plugins. These plugins will be run on the daemon and will be given access to an implementation of the CoreAPI.
type PluginDaemonInternal ¶ added in v0.5.1
type PluginDaemonInternal interface {
Plugin
Start(*core.IpfsNode) error
}
PluginDaemonInternal is an interface for daemon plugins. These plugins will be run on the daemon and will be given a direct access to the IpfsNode.
Note: PluginDaemonInternal is considered internal and no guarantee is made concerning the stability of its API. If you can, use PluginAPI instead.
type PluginDatastore ¶ added in v0.4.18
type PluginDatastore interface {
Plugin
DatastoreTypeName() string
DatastoreConfigParser() fsrepo.ConfigFromMap
}
PluginDatastore is an interface that can be implemented to add handlers for for different datastores
type PluginIPLD ¶
type PluginIPLD interface {
Plugin
RegisterBlockDecoders(dec ipld.BlockDecoder) error
RegisterInputEncParsers(iec coredag.InputEncParsers) error
}
PluginIPLD is an interface that can be implemented to add handlers for for different IPLD formats
type PluginTracer ¶ added in v0.4.15
type PluginTracer interface {
Plugin
InitTracer() (opentracing.Tracer, error)
}
PluginTracer is an interface that can be implemented to add a tracer