19 , proposal_service(services.proposal_service())
20 , evaluators(services)
47 update_proposals_voting_list_and_execute();
59 void dbs_proposal_executor::execute_proposal(
const proposal_object&
proposal)
75 void dbs_proposal_executor::update_proposals_voting_list_and_execute()
77 while (!removed_members.empty())
85 for (
const auto& p : proposals)
90 removed_members.erase(member);
tracks the blockchain state in an extensible manner
operation_notification create_notification(const operation &op) const
void notify_pre_apply_operation(const operation_notification ¬e)
void notify_post_apply_operation(const operation_notification ¬e)
dbs_proposal_executor(database &s)
void operator()(const proposal_object &proposal) override
void register_evaluator(Args &&... args)
evaluator< OperationType > & get_evaluator(const OperationType &op)
scorum::chain::proposal_exclude_member_evaluator< development_committee_exclude_member_operation > proposal_exclude_member_evaluator
scorum::chain::proposal_exclude_member_evaluator< registration_committee_exclude_member_operation > proposal_exclude_member_evaluator
bool is_quorum(size_t votes, size_t members_count, size_t quorum)
fc::fixed_string_16 account_name_type
signed_transaction proposal(const std::string &initiator, uint32_t lifetime_sec, C &&constructor)
virtual void for_all_proposals_remove_from_voting_list(const account_name_type &member)=0
virtual size_t get_votes(const proposal_object &proposal)=0
virtual proposal_refs_type get_proposals()=0
virtual size_t get_members_count() const =0
committee_i & as_committee_i() &
std::vector< typename Visitor::result_type > visit(Visitor &&visitor)