32 #ifndef LEDGER_CORE_RIPPLELIKEBLOCKCHAINOBSERVER_H 33 #define LEDGER_CORE_RIPPLELIKEBLOCKCHAINOBSERVER_H 39 #include <wallet/ripple/explorers/RippleLikeBlockchainExplorer.h> 41 #include <utils/ConfigurationMatchable.h> 42 #include <async/DedicatedContext.hpp> 44 #include <api/ExecutionContext.hpp> 45 #include <api/Currency.hpp> 46 #include <api/DynamicObject.hpp> 48 #include <net/WebSocketClient.h> 49 #include <net/WebSocketConnection.h> 51 #include <spdlog/logger.h> 52 #include <wallet/common/observers/AbstractBlockchainObserver.h> 53 #include <wallet/common/observers/AbstractLedgerApiBlockchainObserver.h> 57 class RippleLikeAccount;
59 using RippleBlockchainObserver = AbstractBlockchainObserver<RippleLikeAccount, RippleLikeBlockchainExplorerTransaction, RippleLikeBlockchainExplorer::Block>;
65 public std::enable_shared_from_this<RippleLikeBlockchainObserver> {
68 const std::shared_ptr<api::DynamicObject> &configuration,
69 const std::shared_ptr<spdlog::logger> &
logger,
71 const std::vector<std::string> &matchableKeys);
74 const std::shared_ptr<WebSocketClient> &client,
75 const std::shared_ptr<api::DynamicObject> &configuration,
76 const std::shared_ptr<spdlog::logger> &logger,
89 std::shared_ptr<api::DynamicObject> getConfiguration()
const {
90 return _configuration;
95 std::shared_ptr<api::DynamicObject> _configuration;
99 void onStart()
override;
101 void onStop()
override;
104 void connect()
override;
106 void reconnect()
override;
108 void onMessage(
const std::string &message)
override;
111 std::shared_ptr<spdlog::logger> logger()
const override ;
112 std::shared_ptr<WebSocketClient> _client;
113 WebSocketEventHandler _handler;
119 #endif //LEDGER_CORE_RIPPLELIKEBLOCKCHAINOBSERVER_H Definition: AbstractLedgerApiBlockchainObserver.h:40
Definition: AbstractBlockchainObserver.h:45
Definition: ConfigurationMatchable.h:38
Definition: RippleLikeBlockchainExplorer.h:55
Definition: Currency.hpp:23
Definition: RippleLikeBlockchainObserver.h:61
Definition: Account.cpp:8
Definition: DedicatedContext.hpp:39
Definition: logger.hpp:44