20 #ifndef RIPPLE_APP_PATHS_PATHREQUESTS_H_INCLUDED
21 #define RIPPLE_APP_PATHS_PATHREQUESTS_H_INCLUDED
23 #include <ripple/app/main/Application.h>
24 #include <ripple/app/paths/PathRequest.h>
25 #include <ripple/app/paths/RippleLineCache.h>
26 #include <ripple/core/Job.h>
43 mFast = collector->make_event(
"pathfind_fast");
44 mFull = collector->make_event(
"pathfind_full");
Json::Value doLegacyPathRequest(Resource::Consumer &consumer, std::shared_ptr< ReadView const > const &inLedger, Json::Value const &request)
PathRequests(Application &app, beast::Journal journal, beast::insight::Collector::ptr const &collector)
A collection of all PathRequest instances.
Json::Value makePathRequest(std::shared_ptr< InfoSub > const &subscriber, std::shared_ptr< ReadView const > const &ledger, Json::Value const &request)
beast::insight::Event mFast
Json::Value makeLegacyPathRequest(PathRequest::pointer &req, std::function< void(void)> completion, Resource::Consumer &consumer, std::shared_ptr< ReadView const > const &inLedger, Json::Value const &request)
bool requestsPending() const
std::atomic< int > mLastIdentifier
void insertPathRequest(PathRequest::pointer const &)
std::shared_ptr< RippleLineCache > getLineCache(std::shared_ptr< ReadView const > const &ledger, bool authoritative)
Get the current RippleLineCache, updating it if necessary.
A metric for reporting event timing.
A generic endpoint for log messages.
beast::insight::Event mFull
std::recursive_mutex mLock
std::weak_ptr< RippleLineCache > lineCache_
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
void reportFast(std::chrono::milliseconds ms)
An endpoint that consumes resources.
void reportFull(std::chrono::milliseconds ms)
void updateAll(std::shared_ptr< ReadView const > const &ledger)
Update all of the contained PathRequest instances.
std::vector< PathRequest::wptr > requests_
void notify(std::chrono::duration< Rep, Period > const &value) const
Push an event notification.