[refactor] wrap {Have,Get}TxToReconsider in txdownload

This commit is contained in:
glozow
2024-04-26 11:47:47 +01:00
parent f150fb94e7
commit 969b07237b
4 changed files with 30 additions and 2 deletions

View File

@@ -161,6 +161,12 @@ public:
* Return a bool indicating whether this tx should be validated. If false, optionally, a
* PackageToValidate. */
std::pair<bool, std::optional<PackageToValidate>> ReceivedTx(NodeId nodeid, const CTransactionRef& ptx);
/** Whether there are any orphans to reconsider for this peer. */
bool HaveMoreWork(NodeId nodeid) const;
/** Returns next orphan tx to consider, or nullptr if none exist. */
CTransactionRef GetTxToReconsider(NodeId nodeid);
};
} // namespace node
#endif // BITCOIN_NODE_TXDOWNLOADMAN_H

View File

@@ -75,6 +75,14 @@ std::pair<bool, std::optional<PackageToValidate>> TxDownloadManager::ReceivedTx(
{
return m_impl->ReceivedTx(nodeid, ptx);
}
bool TxDownloadManager::HaveMoreWork(NodeId nodeid) const
{
return m_impl->HaveMoreWork(nodeid);
}
CTransactionRef TxDownloadManager::GetTxToReconsider(NodeId nodeid)
{
return m_impl->GetTxToReconsider(nodeid);
}
// TxDownloadManagerImpl
void TxDownloadManagerImpl::ActiveTipChange()
@@ -496,4 +504,15 @@ std::pair<bool, std::optional<PackageToValidate>> TxDownloadManagerImpl::Receive
return {true, std::nullopt};
}
bool TxDownloadManagerImpl::HaveMoreWork(NodeId nodeid)
{
return m_orphanage.HaveTxToReconsider(nodeid);
}
CTransactionRef TxDownloadManagerImpl::GetTxToReconsider(NodeId nodeid)
{
return m_orphanage.GetTxToReconsider(nodeid);
}
} // namespace node

View File

@@ -179,6 +179,9 @@ public:
void MempoolRejectedPackage(const Package& package);
std::pair<bool, std::optional<PackageToValidate>> ReceivedTx(NodeId nodeid, const CTransactionRef& ptx);
bool HaveMoreWork(NodeId nodeid);
CTransactionRef GetTxToReconsider(NodeId nodeid);
};
} // namespace node
#endif // BITCOIN_NODE_TXDOWNLOADMAN_IMPL_H