forked from cerc-io/plugeth
This makes two main changes to the plugin system: * Instead of assuming that each plugin will have exactly one type, inspect each plugin to see which interfaces it provides, and register it as a provider of each provided interface. This can allow a single .so file to provide multiple interfaces, which will likely be necessary for aggregating certain types of info. * Rather than using dependency injection and having to propagate the plugin system all throughout Geth, have a default plugin loader so we need only import the module and make calls to it. If the plan were to integrate this into mainline Geth, I would say we use dependency injection and take the time to pass the plugin loader throughout the codebase, but as I expect this to be a fork that has to pull upstream changes, this approach should make merge conflicts much less common. |
||
|---|---|---|
| .. | ||
| testdata | ||
| accountcmd_test.go | ||
| accountcmd.go | ||
| chaincmd.go | ||
| config.go | ||
| consolecmd_test.go | ||
| consolecmd.go | ||
| dao_test.go | ||
| dbcmd.go | ||
| genesis_test.go | ||
| les_test.go | ||
| main.go | ||
| misccmd.go | ||
| run_test.go | ||
| snapshot.go | ||
| usage.go | ||
| version_check_test.go | ||
| version_check.go | ||