DB Layer:
- Make SQL Transactions actual objects used in code. (Thanks to Derex for the idea) * Uncommitted transactions will be automatically rolled back and cleaned up using ACE_Refcounted_Auto_Ptr, so no need to call Rollback() in the code. * Prevents recursive transactions and makes developers aware of transactions going on. * Gets rid of unneccesary overhead iterating over a concurrent map. - Some cleanups in affected code, including better usage of transaction control in AH / mail related code to prevent data loss. *** Experimental, use at own risk, recommended to backup your DBs. *** --HG-- branch : trunk
This commit is contained in:
@@ -66,8 +66,8 @@ struct AuctionEntry
|
||||
uint32 GetAuctionCut() const;
|
||||
uint32 GetAuctionOutBid() const;
|
||||
bool BuildAuctionInfo(WorldPacket & data) const;
|
||||
void DeleteFromDB() const;
|
||||
void SaveToDB() const;
|
||||
void DeleteFromDB(SQLTransaction& trans) const;
|
||||
void SaveToDB(SQLTransaction& trans) const;
|
||||
};
|
||||
|
||||
//this class is used as auctionhouse instance
|
||||
@@ -138,10 +138,13 @@ class AuctionHouseMgr
|
||||
}
|
||||
|
||||
//auction messages
|
||||
void SendAuctionWonMail(AuctionEntry * auction);
|
||||
void SendAuctionSalePendingMail(AuctionEntry * auction);
|
||||
void SendAuctionSuccessfulMail(AuctionEntry * auction);
|
||||
void SendAuctionExpiredMail(AuctionEntry * auction);
|
||||
void SendAuctionWonMail(AuctionEntry * auction, SQLTransaction& trans);
|
||||
void SendAuctionSalePendingMail(AuctionEntry * auction, SQLTransaction& trans);
|
||||
void SendAuctionSuccessfulMail(AuctionEntry * auction, SQLTransaction& trans);
|
||||
void SendAuctionExpiredMail(AuctionEntry * auction, SQLTransaction& trans);
|
||||
void SendAuctionOutbiddedMail(AuctionEntry * auction, uint32 newPrice, Player* newBidder, SQLTransaction& trans);
|
||||
void SendAuctionCancelledToBidderMail(AuctionEntry* auction, SQLTransaction& trans);
|
||||
|
||||
static uint32 GetAuctionDeposit(AuctionHouseEntry const* entry, uint32 time, Item *pItem);
|
||||
static AuctionHouseEntry const* GetAuctionHouseEntry(uint32 factionTemplateId);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user