ledger-core
WalletPoolBuilder.hpp
1 // AUTOGENERATED FILE - DO NOT MODIFY!
2 // This file generated by Djinni from wallet_pool.djinni
3 
4 #ifndef DJINNI_GENERATED_WALLETPOOLBUILDER_HPP
5 #define DJINNI_GENERATED_WALLETPOOLBUILDER_HPP
6 
7 #include <memory>
8 #include <string>
9 #ifndef LIBCORE_EXPORT
10  #if defined(_MSC_VER)
11  #include <libcore_export.h>
12  #else
13  #define LIBCORE_EXPORT
14  #endif
15 #endif
16 
17 namespace ledger { namespace core { namespace api {
18 
19 class DatabaseBackend;
20 class DynamicObject;
21 class HttpClient;
22 class LogPrinter;
23 class PathResolver;
24 class RandomNumberGenerator;
25 class ThreadDispatcher;
26 class WalletPoolCallback;
27 class WebSocketClient;
28 
30 class LIBCORE_EXPORT WalletPoolBuilder {
31 public:
32  virtual ~WalletPoolBuilder() {}
33 
39  virtual std::shared_ptr<WalletPoolBuilder> setHttpClient(const std::shared_ptr<HttpClient> & client) = 0;
40 
46  virtual std::shared_ptr<WalletPoolBuilder> setWebsocketClient(const std::shared_ptr<WebSocketClient> & client) = 0;
47 
53  virtual std::shared_ptr<WalletPoolBuilder> setPathResolver(const std::shared_ptr<PathResolver> & pathResolver) = 0;
54 
60  virtual std::shared_ptr<WalletPoolBuilder> setLogPrinter(const std::shared_ptr<LogPrinter> & printer) = 0;
61 
67  virtual std::shared_ptr<WalletPoolBuilder> setThreadDispatcher(const std::shared_ptr<ThreadDispatcher> & dispatcher) = 0;
68 
74  virtual std::shared_ptr<WalletPoolBuilder> setName(const std::string & name) = 0;
75 
81  virtual std::shared_ptr<WalletPoolBuilder> setPassword(const std::string & password) = 0;
82 
88  virtual std::shared_ptr<WalletPoolBuilder> setRandomNumberGenerator(const std::shared_ptr<RandomNumberGenerator> & rng) = 0;
89 
95  virtual std::shared_ptr<WalletPoolBuilder> setDatabaseBackend(const std::shared_ptr<DatabaseBackend> & backend) = 0;
96 
102  virtual std::shared_ptr<WalletPoolBuilder> setConfiguration(const std::shared_ptr<DynamicObject> & configuration) = 0;
103 
108  virtual void build(const std::shared_ptr<WalletPoolCallback> & listener) = 0;
109 
114  static std::shared_ptr<WalletPoolBuilder> createInstance();
115 };
116 
117 } } } // namespace ledger::core::api
118 #endif //DJINNI_GENERATED_WALLETPOOLBUILDER_HPP
Definition: WalletPoolBuilder.hpp:30
Definition: Account.cpp:8