|
rippled
|
Track the list of "amendments". More...


Public Member Functions | |
| AmendmentTableImpl (std::chrono::seconds majorityTime, Section const &supported, Section const &enabled, Section const &vetoed, beast::Journal journal) | |
| uint256 | find (std::string const &name) const override |
| bool | veto (uint256 const &amendment) override |
| bool | unVeto (uint256 const &amendment) override |
| bool | enable (uint256 const &amendment) override |
| bool | isEnabled (uint256 const &amendment) const override |
| bool | isSupported (uint256 const &amendment) const override |
| bool | hasUnsupportedEnabled () const override |
| returns true if one or more amendments on the network have been enabled that this server does not support More... | |
| boost::optional< NetClock::time_point > | firstUnsupportedExpected () const override |
| Json::Value | getJson () const override |
| Json::Value | getJson (uint256 const &) const override |
| Returns a Json::objectValue. More... | |
| bool | needValidatedLedger (LedgerIndex seq) const override |
| Called to determine whether the amendment logic needs to process a new validated ledger. More... | |
| void | doValidatedLedger (LedgerIndex seq, std::set< uint256 > const &enabled, majorityAmendments_t const &majority) override |
| std::vector< uint256 > | doValidation (std::set< uint256 > const &enabledAmendments) const override |
| std::vector< uint256 > | getDesired () const override |
| std::map< uint256, std::uint32_t > | doVoting (Rules const &rules, NetClock::time_point closeTime, std::set< uint256 > const &enabledAmendments, majorityAmendments_t const &majorityAmendments, std::vector< std::shared_ptr< STValidation >> const &validations) override |
| void | doValidatedLedger (std::shared_ptr< ReadView const > const &lastValidatedLedger) |
| Called when a new fully-validated ledger is accepted. More... | |
| void | doVoting (std::shared_ptr< ReadView const > const &lastClosedLedger, std::vector< std::shared_ptr< STValidation >> const &parentValidations, std::shared_ptr< SHAMap > const &initialPosition) |
Private Member Functions | |
| AmendmentState * | add (uint256 const &amendment, std::lock_guard< std::mutex > const &sl) |
| AmendmentState * | get (uint256 const &amendment, std::lock_guard< std::mutex > const &sl) |
| AmendmentState const * | get (uint256 const &amendment, std::lock_guard< std::mutex > const &sl) const |
| void | injectJson (Json::Value &v, uint256 const &amendment, AmendmentState const &state, std::lock_guard< std::mutex > const &sl) const |
Private Attributes | |
| std::mutex | mutex_ |
| hash_map< uint256, AmendmentState > | amendmentMap_ |
| std::uint32_t | lastUpdateSeq_ |
| const std::chrono::seconds | majorityTime_ |
| std::unique_ptr< AmendmentSet > | lastVote_ |
| bool | unsupportedEnabled_ |
| boost::optional< NetClock::time_point > | firstUnsupportedExpected_ |
| const beast::Journal | j_ |
Track the list of "amendments".
An "amendment" is an option that can affect transaction processing rules. Amendments are proposed and then adopted or rejected by the network. An Amendment is uniquely identified by its AmendmentID, a 256-bit key.
Definition at line 198 of file AmendmentTable.cpp.
| ripple::AmendmentTableImpl::AmendmentTableImpl | ( | std::chrono::seconds | majorityTime, |
| Section const & | supported, | ||
| Section const & | enabled, | ||
| Section const & | vetoed, | ||
| beast::Journal | journal | ||
| ) |
Definition at line 303 of file AmendmentTable.cpp.
|
private |
Definition at line 359 of file AmendmentTable.cpp.
|
private |
Definition at line 368 of file AmendmentTable.cpp.
|
private |
Definition at line 378 of file AmendmentTable.cpp.
|
private |
Definition at line 633 of file AmendmentTable.cpp.
|
overridevirtual |
Implements ripple::AmendmentTable.
Definition at line 392 of file AmendmentTable.cpp.
|
overridevirtual |
Implements ripple::AmendmentTable.
Definition at line 406 of file AmendmentTable.cpp.
|
overridevirtual |
Implements ripple::AmendmentTable.
Definition at line 418 of file AmendmentTable.cpp.
|
overridevirtual |
Implements ripple::AmendmentTable.
Definition at line 430 of file AmendmentTable.cpp.
|
overridevirtual |
Implements ripple::AmendmentTable.
Definition at line 451 of file AmendmentTable.cpp.
|
overridevirtual |
Implements ripple::AmendmentTable.
Definition at line 459 of file AmendmentTable.cpp.
|
overridevirtual |
returns true if one or more amendments on the network have been enabled that this server does not support
Implements ripple::AmendmentTable.
Definition at line 467 of file AmendmentTable.cpp.
|
overridevirtual |
Implements ripple::AmendmentTable.
Definition at line 474 of file AmendmentTable.cpp.
|
overridevirtual |
Implements ripple::AmendmentTable.
Definition at line 661 of file AmendmentTable.cpp.
|
overridevirtual |
Returns a Json::objectValue.
Implements ripple::AmendmentTable.
Definition at line 679 of file AmendmentTable.cpp.
|
overridevirtual |
Called to determine whether the amendment logic needs to process a new validated ledger.
(If it could have changed things.)
Implements ripple::AmendmentTable.
Definition at line 585 of file AmendmentTable.cpp.
|
overridevirtual |
Implements ripple::AmendmentTable.
Definition at line 596 of file AmendmentTable.cpp.
|
overridevirtual |
Implements ripple::AmendmentTable.
Definition at line 481 of file AmendmentTable.cpp.
|
overridevirtual |
Implements ripple::AmendmentTable.
Definition at line 507 of file AmendmentTable.cpp.
|
overridevirtual |
Implements ripple::AmendmentTable.
Definition at line 514 of file AmendmentTable.cpp.
|
inherited |
Called when a new fully-validated ledger is accepted.
Definition at line 76 of file AmendmentTable.h.
|
inherited |
Definition at line 127 of file AmendmentTable.h.
|
mutableprivate |
Definition at line 201 of file AmendmentTable.cpp.
|
private |
Definition at line 203 of file AmendmentTable.cpp.
|
private |
Definition at line 204 of file AmendmentTable.cpp.
|
private |
Definition at line 207 of file AmendmentTable.cpp.
|
private |
Definition at line 211 of file AmendmentTable.cpp.
|
private |
Definition at line 214 of file AmendmentTable.cpp.
|
private |
Definition at line 219 of file AmendmentTable.cpp.
|
private |
Definition at line 221 of file AmendmentTable.cpp.
1.8.17