Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Environment ¶ added in v0.5.0
type Environment struct { // Path to the IPFS repo. Repo string // The plugin's config, if specified in the // Plugins.Plugins["plugin-name"].Config field of the user's go-ipfs // config. See docs/plugins.md for details. // // This is an arbitrary JSON-like object unmarshaled into an interface{} // according to https://golang.org/pkg/encoding/json/#Unmarshal. 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
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.0
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
PluginTracer is an interface that can be implemented to add a tracer