20#include <xrpld/app/ledger/LedgerMaster.h>
21#include <xrpld/app/main/Application.h>
22#include <xrpld/app/misc/NetworkOPs.h>
23#include <xrpld/app/misc/SHAMapStore.h>
24#include <xrpld/rpc/Context.h>
25#include <xrpl/beast/core/LexicalCast.h>
26#include <xrpl/protocol/ErrorCodes.h>
27#include <xrpl/protocol/jss.h>
28#include <boost/algorithm/string/case_conv.hpp>
29#include <boost/format.hpp>
49 canDeleteSeq = canDelete.
asUInt();
54 boost::to_lower(canDeleteStr);
59 canDeleteSeq = beast::lexicalCast<std::uint32_t>(canDeleteStr);
61 else if (canDeleteStr ==
"never")
65 else if (canDeleteStr ==
"always")
69 else if (canDeleteStr ==
"now")
82 canDeleteSeq = ledger->info().seq;
90 ret[jss::can_delete] =
Value get(UInt index, const Value &defaultValue) const
If the array contains at least index+1 elements, returns the element value, otherwise returns default...
std::string asString() const
Returns the unquoted string value.
bool isMember(const char *key) const
Return true if the object has a member named key.
virtual SHAMapStore & getSHAMapStore()=0
std::shared_ptr< Ledger const > getLedgerByHash(uint256 const &hash)
virtual LedgerIndex setCanDelete(LedgerIndex canDelete)=0
Highest ledger that may be deleted.
virtual bool advisoryDelete() const =0
Whether advisory delete is enabled.
virtual LedgerIndex getLastRotated()=0
Maximum ledger that has been deleted, or will be deleted if currently in the act of online deletion.
virtual LedgerIndex getCanDelete()=0
Highest ledger that may be deleted.
constexpr bool parseHex(std::string_view sv)
Parse a hex string into a base_uint.
T find_first_not_of(T... args)
@ objectValue
object value (collection of name/value pairs).
Json::Value make_error(error_code_i code)
Returns a new json object that reflects the error code.
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Json::Value doCanDelete(RPC::JsonContext &context)
LedgerMaster & ledgerMaster