Scorum
Public Member Functions | List of all members
scorum::app::abstract_plugin Class Referenceabstract

#include <plugin.hpp>

Inheritance diagram for scorum::app::abstract_plugin:
scorum::app::plugin scorum::account_by_key::account_by_key_plugin scorum::account_statistics::account_statistics_plugin scorum::blockchain_history::blockchain_history_plugin scorum::blockchain_monitoring::blockchain_monitoring_plugin scorum::plugin::auth_util::auth_util_plugin scorum::plugin::block_info::block_info_plugin scorum::plugin::debug_node::debug_node_plugin scorum::plugin::raw_block::raw_block_plugin scorum::tags::tags_plugin scorum::witness::witness_plugin

Public Member Functions

virtual ~abstract_plugin ()
 
virtual std::string plugin_name () const =0
 
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...
 

Detailed Description

Definition at line 46 of file plugin.hpp.

Constructor & Destructor Documentation

◆ ~abstract_plugin()

virtual scorum::app::abstract_plugin::~abstract_plugin ( )
inlinevirtual

Definition at line 49 of file plugin.hpp.

Member Function Documentation

◆ plugin_initialize()

virtual void scorum::app::abstract_plugin::plugin_initialize ( const boost::program_options::variables_map &  options)
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.

Parameters
optionsThe options passed to the application, via configuration files or command line

Implemented in scorum::witness::witness_plugin, scorum::tags::tags_plugin, scorum::plugin::raw_block::raw_block_plugin, scorum::plugin::debug_node::debug_node_plugin, scorum::blockchain_monitoring::blockchain_monitoring_plugin, scorum::blockchain_history::blockchain_history_plugin, scorum::plugin::block_info::block_info_plugin, scorum::plugin::auth_util::auth_util_plugin, scorum::account_statistics::account_statistics_plugin, scorum::account_by_key::account_by_key_plugin, and scorum::app::plugin.

◆ plugin_name()

virtual std::string scorum::app::abstract_plugin::plugin_name ( ) const
pure virtual

◆ plugin_set_program_options()

virtual void scorum::app::abstract_plugin::plugin_set_program_options ( boost::program_options::options_description &  command_line_options,
boost::program_options::options_description &  config_file_options 
)
pure virtual

Fill in command line parameters used by the plugin.

Parameters
command_line_optionsAll options this plugin supports taking on the command-line
config_file_optionsAll 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 scorum::witness::witness_plugin, scorum::app::plugin, scorum::tags::tags_plugin, scorum::plugin::debug_node::debug_node_plugin, scorum::blockchain_monitoring::blockchain_monitoring_plugin, scorum::blockchain_history::blockchain_history_plugin, scorum::account_statistics::account_statistics_plugin, and scorum::account_by_key::account_by_key_plugin.

◆ plugin_shutdown()

virtual void scorum::app::abstract_plugin::plugin_shutdown ( )
pure virtual

◆ plugin_startup()

virtual void scorum::app::abstract_plugin::plugin_startup ( )
pure virtual

The documentation for this class was generated from the following file: