From b89cf6dcdd4daa18480223805ea832778f7e88c3 Mon Sep 17 00:00:00 2001 From: Kevin Heifner Date: Fri, 16 Feb 2018 11:58:33 -0600 Subject: [PATCH] Add signals to controller_config for setting in constructor. #1403 --- libraries/chain/chain_controller.cpp | 4 ++++ libraries/chain/include/eosio/chain/chain_controller.hpp | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/libraries/chain/chain_controller.cpp b/libraries/chain/chain_controller.cpp index 785a3c1da..bf695dff4 100644 --- a/libraries/chain/chain_controller.cpp +++ b/libraries/chain/chain_controller.cpp @@ -55,8 +55,12 @@ chain_controller::chain_controller( const chain_controller::controller_config& c { _initialize_indexes(); + for (auto& f : cfg.applied_block_callbacks) + applied_block.connect(f); for (auto& f : cfg.applied_irreversible_block_callbacks) applied_irreversible_block.connect(f); + for (auto& f : cfg.on_pending_transaction_callbacks) + on_pending_transaction.connect(f); contracts::chain_initializer starter(cfg.genesis); starter.register_types(*this, _db); diff --git a/libraries/chain/include/eosio/chain/chain_controller.hpp b/libraries/chain/include/eosio/chain/chain_controller.hpp index c7e125dec..d52e82333 100644 --- a/libraries/chain/include/eosio/chain/chain_controller.hpp +++ b/libraries/chain/include/eosio/chain/chain_controller.hpp @@ -72,12 +72,14 @@ namespace eosio { namespace chain { path shared_memory_dir = config::default_shared_memory_dir; uint64_t shared_memory_size = config::default_shared_memory_size; bool read_only = false; + std::vector::slot_type> applied_block_callbacks; std::vector::slot_type> applied_irreversible_block_callbacks; + std::vector::slot_type> on_pending_transaction_callbacks; contracts::genesis_state_type genesis; runtime_limits limits; }; - chain_controller( const controller_config& cfg ); + explicit chain_controller( const controller_config& cfg ); ~chain_controller(); -- GitLab