32 #ifndef LEDGER_CORE_RIPPLELIKEBLOCKCHAINEXPLORERACCOUNTSYNCHRONIZER_H 33 #define LEDGER_CORE_RIPPLELIKEBLOCKCHAINEXPLORERACCOUNTSYNCHRONIZER_H 36 #include <wallet/common/synchronizers/AbstractBlockchainExplorerAccountSynchronizer.h> 37 #include <wallet/ripple/synchronizers/RippleLikeAccountSynchronizer.h> 38 #include <wallet/ripple/keychains/RippleLikeKeychain.h> 39 #include <wallet/ripple/explorers/RippleLikeBlockchainExplorer.h> 40 #include <wallet/pool/WalletPool.hpp> 41 #include <async/DedicatedContext.hpp> 42 #include <events/ProgressNotifier.h> 48 class RippleLikeAccount;
50 using RippleBlockchainAccountSynchronizer = AbstractBlockchainExplorerAccountSynchronizer<RippleLikeAccount, RippleLikeAddress, RippleLikeKeychain, RippleLikeBlockchainExplorer>;
55 public std::enable_shared_from_this<RippleLikeBlockchainExplorerAccountSynchronizer> {
59 const std::shared_ptr<RippleLikeBlockchainExplorer> &explorer);
61 void updateCurrentBlock(
62 std::shared_ptr<AbstractBlockchainExplorerAccountSynchronizer::SynchronizationBuddy> &buddy,
63 const std::shared_ptr<api::ExecutionContext> &context)
override;
65 void updateTransactionsToDrop(soci::session &sql,
66 std::shared_ptr<SynchronizationBuddy> &buddy,
67 const std::string &accountUid)
override;
69 std::shared_ptr<ProgressNotifier<Unit>>
70 synchronize(
const std::shared_ptr<RippleLikeAccount> &account)
override;
72 void reset(
const std::shared_ptr<RippleLikeAccount> &account,
73 const std::chrono::system_clock::time_point &toDate)
override;
75 bool isSynchronizing()
const override;
79 std::shared_ptr<RippleBlockchainAccountSynchronizer> getSharedFromThis()
override;
81 std::shared_ptr<api::ExecutionContext> getSynchronizerContext()
override;
87 #endif //LEDGER_CORE_RIPPLELIKEBLOCKCHAINEXPLORERACCOUNTSYNCHRONIZER_H Definition: AbstractBlockchainExplorerAccountSynchronizer.h:87
Definition: RippleLikeBlockchainExplorerAccountSynchronizer.h:52
Definition: RippleLikeAccountSynchronizer.h:41
Definition: Account.cpp:8
Definition: DedicatedContext.hpp:39