20 #ifndef RIPPLE_RPC_HANDLER_H_INCLUDED
21 #define RIPPLE_RPC_HANDLER_H_INCLUDED
23 #include <ripple/app/ledger/LedgerMaster.h>
24 #include <ripple/app/misc/NetworkOPs.h>
25 #include <ripple/core/Config.h>
26 #include <ripple/rpc/RPCHandler.h>
27 #include <ripple/rpc/Status.h>
28 #include <ripple/rpc/impl/Tuning.h>
48 template <
class JsonValue>
61 template <
class Value>
68 result[field] = value;
80 if (context.app.config().reporting())
96 if (context.app.getOPs().isAmendmentBlocked() &&
102 if (context.app.getOPs().isUNLBlocked() &&
111 JLOG(context.j.info()) <<
"Insufficient network mode for RPC: "
112 << context.netOps.strOperatingMode();
114 if (context.apiVersion == 1)
119 if (!context.app.config().standalone() &&
122 if (context.ledgerMaster.getValidatedLedgerAge() >
125 if (context.apiVersion == 1)
130 auto const cID = context.ledgerMaster.getCurrentLedgerIndex();
131 auto const vID = context.ledgerMaster.getValidLedgerIndex();
135 JLOG(context.j.debug())
136 <<
"Current ledger ID(" << cID
137 <<
") is less than validated ledger ID(" << vID <<
")";
138 if (context.apiVersion == 1)
145 !context.ledgerMaster.getClosedLedger())
147 if (context.apiVersion == 1)