@@ -21,9 +21,10 @@ class CCoinJoinClientQueueManager;
2121class CConnman ;
2222class CDeterministicMN ;
2323class CDeterministicMNManager ;
24- class CoinJoinWalletManager ;
2524class CNode ;
25+ class CMasternodeMetaMan ;
2626class CMasternodeSync ;
27+ class CoinJoinWalletManager ;
2728class CTxMemPool ;
2829
2930class UniValue ;
@@ -72,9 +73,10 @@ class CoinJoinWalletManager {
7273 using wallet_name_cjman_map = std::map<const std::string, std::unique_ptr<CCoinJoinClientManager>>;
7374
7475public:
75- CoinJoinWalletManager (CConnman& connman, CDeterministicMNManager& dmnman, CTxMemPool& mempool, const CMasternodeSync& mn_sync,
76- const std::unique_ptr<CCoinJoinClientQueueManager>& queueman)
77- : m_connman(connman), m_dmnman(dmnman), m_mempool(mempool), m_mn_sync(mn_sync), m_queueman(queueman) {}
76+ CoinJoinWalletManager (CConnman& connman, CDeterministicMNManager& dmnman, CMasternodeMetaMan& mn_metaman, CTxMemPool& mempool,
77+ const CMasternodeSync& mn_sync, const std::unique_ptr<CCoinJoinClientQueueManager>& queueman)
78+ : m_connman(connman), m_dmnman(dmnman), m_mn_metaman(mn_metaman), m_mempool(mempool), m_mn_sync(mn_sync), m_queueman(queueman) {}
79+
7880 ~CoinJoinWalletManager () {
7981 for (auto & [wallet_name, cj_man] : m_wallet_manager_map) {
8082 cj_man.reset ();
@@ -94,6 +96,7 @@ class CoinJoinWalletManager {
9496private:
9597 CConnman& m_connman;
9698 CDeterministicMNManager& m_dmnman;
99+ CMasternodeMetaMan& m_mn_metaman;
97100 CTxMemPool& m_mempool;
98101 const CMasternodeSync& m_mn_sync;
99102 const std::unique_ptr<CCoinJoinClientQueueManager>& m_queueman;
@@ -108,6 +111,7 @@ class CCoinJoinClientSession : public CCoinJoinBaseSession
108111 CoinJoinWalletManager& m_walletman;
109112 CCoinJoinClientManager& m_manager;
110113 CDeterministicMNManager& m_dmnman;
114+ CMasternodeMetaMan& m_mn_metaman;
111115 const CMasternodeSync& m_mn_sync;
112116 const std::unique_ptr<CCoinJoinClientQueueManager>& m_queueman;
113117
@@ -157,8 +161,8 @@ class CCoinJoinClientSession : public CCoinJoinBaseSession
157161 void SetNull () override EXCLUSIVE_LOCKS_REQUIRED(cs_coinjoin);
158162
159163public:
160- explicit CCoinJoinClientSession (CWallet& wallet, CoinJoinWalletManager& walletman, CDeterministicMNManager& dmnman, const CMasternodeSync& mn_sync ,
161- const std::unique_ptr<CCoinJoinClientQueueManager>& queueman);
164+ explicit CCoinJoinClientSession (CWallet& wallet, CoinJoinWalletManager& walletman, CDeterministicMNManager& dmnman, CMasternodeMetaMan& mn_metaman ,
165+ const CMasternodeSync& mn_sync, const std::unique_ptr<CCoinJoinClientQueueManager>& queueman);
162166
163167 void ProcessMessage (CNode& peer, CConnman& connman, const CTxMemPool& mempool, std::string_view msg_type, CDataStream& vRecv);
164168
@@ -191,13 +195,14 @@ class CCoinJoinClientQueueManager : public CCoinJoinBaseManager
191195 CConnman& connman;
192196 CoinJoinWalletManager& m_walletman;
193197 CDeterministicMNManager& m_dmnman;
198+ CMasternodeMetaMan& m_mn_metaman;
194199 const CMasternodeSync& m_mn_sync;
195200 mutable Mutex cs_ProcessDSQueue;
196201
197202public:
198203 explicit CCoinJoinClientQueueManager (CConnman& _connman, CoinJoinWalletManager& walletman, CDeterministicMNManager& dmnman,
199- const CMasternodeSync& mn_sync) :
200- connman(_connman), m_walletman(walletman), m_dmnman(dmnman), m_mn_sync(mn_sync) {};
204+ CMasternodeMetaMan& mn_metaman, const CMasternodeSync& mn_sync) :
205+ connman(_connman), m_walletman(walletman), m_dmnman(dmnman), m_mn_metaman(mn_metaman), m_mn_sync(mn_sync) {};
201206
202207 PeerMsgRet ProcessMessage (const CNode& peer, std::string_view msg_type, CDataStream& vRecv) LOCKS_EXCLUDED(cs_vecqueue);
203208 PeerMsgRet ProcessDSQueue (const CNode& peer, CDataStream& vRecv);
@@ -212,6 +217,7 @@ class CCoinJoinClientManager
212217 CWallet& m_wallet;
213218 CoinJoinWalletManager& m_walletman;
214219 CDeterministicMNManager& m_dmnman;
220+ CMasternodeMetaMan& m_mn_metaman;
215221 const CMasternodeSync& m_mn_sync;
216222 const std::unique_ptr<CCoinJoinClientQueueManager>& m_queueman;
217223
@@ -244,9 +250,10 @@ class CCoinJoinClientManager
244250 CCoinJoinClientManager (CCoinJoinClientManager const &) = delete ;
245251 CCoinJoinClientManager& operator =(CCoinJoinClientManager const &) = delete ;
246252
247- explicit CCoinJoinClientManager (CWallet& wallet, CoinJoinWalletManager& walletman, CDeterministicMNManager& dmnman, const CMasternodeSync& mn_sync,
253+ explicit CCoinJoinClientManager (CWallet& wallet, CoinJoinWalletManager& walletman, CDeterministicMNManager& dmnman,
254+ CMasternodeMetaMan& mn_metaman, const CMasternodeSync& mn_sync,
248255 const std::unique_ptr<CCoinJoinClientQueueManager>& queueman) :
249- m_wallet(wallet), m_walletman(walletman), m_dmnman(dmnman), m_mn_sync(mn_sync), m_queueman(queueman) {}
256+ m_wallet(wallet), m_walletman(walletman), m_dmnman(dmnman), m_mn_metaman(mn_metaman), m_mn_sync(mn_sync), m_queueman(queueman) {}
250257
251258 void ProcessMessage (CNode& peer, CConnman& connman, const CTxMemPool& mempool, std::string_view msg_type, CDataStream& vRecv) LOCKS_EXCLUDED(cs_deqsessions);
252259
0 commit comments