BitShares-Core
7.0.2
BitShares blockchain node software and command-line wallet software
|
#include <plugin.hpp>
Public Member Functions | |
abstract_plugin (application &a) | |
virtual | ~abstract_plugin ()=default |
virtual std::string | plugin_name () const =0 |
Get the name of the plugin. More... | |
virtual std::string | plugin_description () const =0 |
Get the description of the plugin. More... | |
application & | app () const |
Get a reference of the application bound to the plugin. More... | |
virtual void | plugin_initialize (const boost::program_options::variables_map &options)=0 |
Perform early startup routines and register plugin indexes, callbacks, etc. More... | |
virtual void | plugin_startup ()=0 |
Begin normal runtime operations. More... | |
virtual void | plugin_shutdown ()=0 |
Cleanly shut down the plugin. More... | |
virtual void | plugin_set_program_options (boost::program_options::options_description &command_line_options, boost::program_options::options_description &config_file_options)=0 |
Fill in command line parameters used by the plugin. More... | |
Protected Attributes | |
application & | _app |
Definition at line 33 of file plugin.hpp.
|
inlineexplicit |
Definition at line 36 of file plugin.hpp.
|
virtualdefault |
|
inline |
Get a reference of the application bound to the plugin.
Definition at line 46 of file plugin.hpp.
|
pure virtual |
Get the description of the plugin.
Implemented in graphene::app::plugin, graphene::api_helper_indexes::api_helper_indexes, graphene::elasticsearch::elasticsearch_plugin, graphene::template_plugin::template_plugin, graphene::custom_operations::custom_operations_plugin, graphene::es_objects::es_objects_plugin, and graphene::snapshot_plugin::snapshot_plugin.
|
pure virtual |
Perform early startup routines and register plugin indexes, callbacks, etc.
Plugins MUST supply a method initialize() which will be called early in the application startup. This method should contain early setup code such as initializing variables, adding indexes to the database, registering callback methods from the database, adding APIs, etc., as well as applying any options in the options
map
This method is called BEFORE the database is open, therefore any routines which require any chain state MUST NOT be called by this method. These routines should be performed in startup() instead.
options | The options passed to the application, via configuration files or command line |
Implemented in graphene::market_history::market_history_plugin, graphene::app::plugin, graphene::api_helper_indexes::api_helper_indexes, graphene::account_history::account_history_plugin, graphene::grouped_orders::grouped_orders_plugin, graphene::elasticsearch::elasticsearch_plugin, graphene::witness_plugin::witness_plugin, graphene::template_plugin::template_plugin, graphene::custom_operations::custom_operations_plugin, graphene::es_objects::es_objects_plugin, graphene::debug_witness_plugin::debug_witness_plugin, graphene::snapshot_plugin::snapshot_plugin, and graphene::delayed_node::delayed_node_plugin.
|
pure virtual |
Get the name of the plugin.
Implemented in graphene::market_history::market_history_plugin, graphene::app::plugin, graphene::api_helper_indexes::api_helper_indexes, graphene::account_history::account_history_plugin, graphene::grouped_orders::grouped_orders_plugin, graphene::elasticsearch::elasticsearch_plugin, graphene::template_plugin::template_plugin, graphene::witness_plugin::witness_plugin, graphene::custom_operations::custom_operations_plugin, graphene::es_objects::es_objects_plugin, graphene::debug_witness_plugin::debug_witness_plugin, graphene::delayed_node::delayed_node_plugin, and graphene::snapshot_plugin::snapshot_plugin.
|
pure virtual |
Fill in command line parameters used by the plugin.
command_line_options | All options this plugin supports taking on the command-line |
config_file_options | All options this plugin supports storing in a configuration file |
This method populates its arguments with any command-line and configuration file options the plugin supports. If a plugin does not need these options, it may simply provide an empty implementation of this method.
Implemented in graphene::app::plugin, graphene::witness_plugin::witness_plugin, graphene::debug_witness_plugin::debug_witness_plugin, graphene::snapshot_plugin::snapshot_plugin, graphene::market_history::market_history_plugin, graphene::api_helper_indexes::api_helper_indexes, graphene::account_history::account_history_plugin, graphene::grouped_orders::grouped_orders_plugin, graphene::elasticsearch::elasticsearch_plugin, graphene::template_plugin::template_plugin, graphene::custom_operations::custom_operations_plugin, graphene::es_objects::es_objects_plugin, and graphene::delayed_node::delayed_node_plugin.
|
pure virtual |
Cleanly shut down the plugin.
This is called to request a clean shutdown (e.g. due to SIGINT or SIGTERM).
Implemented in graphene::app::plugin, graphene::witness_plugin::witness_plugin, graphene::template_plugin::template_plugin, graphene::es_objects::es_objects_plugin, and graphene::debug_witness_plugin::debug_witness_plugin.
|
pure virtual |
Begin normal runtime operations.
Plugins MUST supply a method startup() which will be called at the end of application startup. This method should contain code which schedules any tasks, or requires chain state.
Implemented in graphene::market_history::market_history_plugin, graphene::app::plugin, graphene::api_helper_indexes::api_helper_indexes, graphene::account_history::account_history_plugin, graphene::grouped_orders::grouped_orders_plugin, graphene::elasticsearch::elasticsearch_plugin, graphene::witness_plugin::witness_plugin, graphene::template_plugin::template_plugin, graphene::custom_operations::custom_operations_plugin, graphene::es_objects::es_objects_plugin, graphene::debug_witness_plugin::debug_witness_plugin, and graphene::delayed_node::delayed_node_plugin.
|
protected |
Definition at line 93 of file plugin.hpp.