Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void XBridgeTransactionsModel::onTimer()
- {
- // check pending transactions
- for (unsigned int i = 0; i < m_transactions.size(); ++i)
- {
- boost::posix_time::time_duration td =
- boost::posix_time::second_clock::universal_time() -
- m_transactions[i].txtime;
- auto id = m_transactions[i].id;
- if (m_transactions[i].state == XBridgeTransactionDescr::trNew &&
- td.total_seconds() > XBridgeTransaction::TTL/60)
- {
- m_transactions[i].state = XBridgeTransactionDescr::trOffline;
- emit dataChanged(index(i, FirstColumn), index(i, LastColumn));
- }
- else if (m_transactions[i].state == XBridgeTransactionDescr::trPending &&
- td.total_seconds() > XBridgeTransaction::TTL/6)
- {
- m_transactions[i].state = XBridgeTransactionDescr::trExpired;
- emit dataChanged(index(i, FirstColumn), index(i, LastColumn));
- }
- else if ((m_transactions[i].state == XBridgeTransactionDescr::trExpired ||
- m_transactions[i].state == XBridgeTransactionDescr::trOffline) &&
- td.total_seconds() < XBridgeTransaction::TTL/6)
- {
- m_transactions[i].state = XBridgeTransactionDescr::trPending;
- emit dataChanged(index(i, FirstColumn), index(i, LastColumn));
- }
- else if (m_transactions[i].state == XBridgeTransactionDescr::trExpired &&
- td.total_seconds() > XBridgeTransaction::TTL)
- {
- emit beginRemoveRows(QModelIndex(), i, i);
- m_transactions.erase(m_transactions.begin()+i);
- emit endRemoveRows();
- --i;
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement