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() &&
103 if (context.app.getOPs().isUNLBlocked() &&
113 JLOG(context.j.info()) <<
"Insufficient network mode for RPC: "
114 << context.netOps.strOperatingMode();
116 if (context.apiVersion == 1)
121 if (!context.app.config().standalone() &&
124 if (context.ledgerMaster.getValidatedLedgerAge() >
127 if (context.apiVersion == 1)
132 auto const cID = context.ledgerMaster.getCurrentLedgerIndex();
133 auto const vID = context.ledgerMaster.getValidLedgerIndex();
137 JLOG(context.j.debug())
138 <<
"Current ledger ID(" << cID
139 <<
") is less than validated ledger ID(" << vID <<
")";
140 if (context.apiVersion == 1)
147 !context.ledgerMaster.getClosedLedger())
149 if (context.apiVersion == 1)