Remove synched flag, and neww pushLedger function.

This commit is contained in:
JoelKatz
2012-05-30 21:25:47 -07:00
parent c2b200a74d
commit 83aa616d13
3 changed files with 22 additions and 15 deletions

View File

@@ -122,7 +122,6 @@ void Application::run()
Ledger::pointer secondLedger = boost::make_shared<Ledger>(firstLedger);
mMasterLedger.pushLedger(secondLedger);
assert(!!secondLedger->getAccountState(rootAddress));
mMasterLedger.setSynced();
// temporary
mNetOps.setStateTimer(0);

View File

@@ -4,10 +4,6 @@
#include "Conversion.h"
#include <boost/foreach.hpp>
LedgerMaster::LedgerMaster() : mIsSynced(false)
{
}
uint32 LedgerMaster::getCurrentLedgerIndex()
{
return mCurrentLedger->getLedgerSeq();
@@ -35,6 +31,18 @@ void LedgerMaster::pushLedger(Ledger::pointer newLedger)
mEngine.setLedger(newLedger);
}
void LedgerMaster::pushLedger(Ledger::pointer newLCL, Ledger::pointer newOL)
{
assert(newLCL->isClosed() && newLCL->isAccepted());
assert(!newOL->isClosed() && !newOL->isAccepted());
ScopedLock sl(mLock);
mLedgerHistory.addAcceptedLedger(newLCL);
mFinalizedLedger = newLCL;
mCurrentLedger = newOL;
mEngine.setLedger(newOL);
}
void LedgerMaster::switchLedgers(Ledger::pointer lastClosed, Ledger::pointer current)
{
mFinalizedLedger = lastClosed;

View File

@@ -15,7 +15,6 @@
class LedgerMaster
{
boost::recursive_mutex mLock;
bool mIsSynced;
TransactionEngine mEngine;
@@ -32,11 +31,11 @@ class LedgerMaster
public:
LedgerMaster();
LedgerMaster() { ; }
uint32 getCurrentLedgerIndex();
bool isSynced() { return mIsSynced; }
void setSynced() { mIsSynced=true; }
ScopedLock getLock() { return ScopedLock(mLock); }
Ledger::pointer getCurrentLedger() { return mCurrentLedger; }
Ledger::pointer getClosedLedger() { return mFinalizedLedger; }
@@ -45,12 +44,15 @@ public:
{ return mEngine.applyTransaction(txn, params); }
void pushLedger(Ledger::pointer newLedger);
void pushLedger(Ledger::pointer newLCL, Ledger::pointer newOL);
void switchLedgers(Ledger::pointer lastClosed, Ledger::pointer newCurrent);
Ledger::pointer getLedgerBySeq(uint32 index)
{
if (mCurrentLedger && (mCurrentLedger->getLedgerSeq()==index)) return mCurrentLedger;
if (mFinalizedLedger && (mFinalizedLedger->getLedgerSeq()==index)) return mFinalizedLedger;
if (mCurrentLedger && (mCurrentLedger->getLedgerSeq() == index))
return mCurrentLedger;
if (mFinalizedLedger && (mFinalizedLedger->getLedgerSeq() == index))
return mFinalizedLedger;
return mLedgerHistory.getLedgerBySeq(index);
}
@@ -62,8 +64,6 @@ public:
}
bool addHeldTransaction(Transaction::pointer trans);
uint64 getBalance(std::string& strAcctID, const uint160 currency = 0);
uint64 getBalance(const NewcoinAddress& acctID, const uint160 currency = 0);
};
#endif