static void Main(string[] args) { AuctionHouse AuctionHouse = new AuctionHouse(); AuctionHouse.CreateAuction(); AuctionHouse.Open(); }
public void Gavel(object item) { if (oldBid == realAuction.currentBid) { Interlocked.Increment(ref timeSinceLastBid); Console.WriteLine(timeSinceLastBid); } else { timeSinceLastBid = 0; AuctionHouse.BroadcastMessage("New Bid Accepted! - " + realAuction.bidHistory.Last()); lock (AuctionHouse.lockKey) { oldBid = realAuction.currentBid; } } if (realAuction.bidHistory.Count > 0) { switch (timeSinceLastBid) { case 8: AuctionHouse.BroadcastMessage("Going once"); break; case 9: AuctionHouse.BroadcastMessage("Going twice"); break; case 10: Clock.Dispose(); string clientIP = realAuction.bidHistory.Last().Substring(0, realAuction.bidHistory.Last().IndexOf(':')); AuctionHouse.BroadcastMessage("Sold to " + clientIP); AuctionHouse.BroadcastMessage("\nHistory:" + Environment.NewLine + realAuction.PrintBidStatus()); break; default: break; } } else if (timeSinceLastBid == 10) { timeSinceLastBid = 0; } }