* Move RPC to new process * Readd reuse address * Formatting * Remove rpc dependency from node CMakeLists.txt file * Fix rpc.online_reps test * Only use boost process when using a boost version other than 1.69 * Formatting, add thread name to RPC thread * Call lock () on the lock itself not mutex * Allow RPC in-process as well * Formatting * Formatting * Revert filenames to have underscores again for readability * Use boost interprocess with node daemon as well. Move definitions to CMakeLists.txt * Delete unused options after migration. Don't migrate version so that an upgrade to the new rpc_config is performed filling in the rest of the options with appropriate defaults. * Change debug_ipc to debug_rpc * Removed unused ipc_path from new rpc_config * Change --daemon CLI help to state it is for the RPC * Remove rpc_path from load-tester * Fix global network_constants initialization issue * Fix session timer timing issue * Remove default_ipc_port from node_rpc_config::migrate () * Remove semi-colon from command line args preventing others below it from working. * Remove message about failing to migrate RPC path in rpc_config * Move cleanup_test_directories_on_exit to node to resolve link error with nano_rpc
21 lines
573 B
C++
21 lines
573 B
C++
#pragma once
|
|
|
|
#include <nano/node/node_observers.hpp>
|
|
|
|
namespace nano
|
|
{
|
|
class json_payment_observer;
|
|
|
|
class payment_observer_processor final
|
|
{
|
|
public:
|
|
explicit payment_observer_processor (nano::node_observers::blocks_t & blocks);
|
|
void observer_action (nano::account const & account_a);
|
|
void add (nano::account const & account_a, std::shared_ptr<nano::json_payment_observer> payment_observer_a);
|
|
void erase (nano::account & account_a);
|
|
|
|
private:
|
|
std::mutex mutex;
|
|
std::unordered_map<nano::account, std::shared_ptr<nano::json_payment_observer>> payment_observers;
|
|
};
|
|
}
|