Ejemplo n.º 1
0
 public void Save(Version fv, WsgFileStream fs)
 {
     try
     {
         if (BeforeSaveEvent != null)
         {
             BeforeSaveEvent();
         }
         if (fv.Major > 0)
         {
             while (PlayTimer.Enabled)
             {
                 PlayTimer.Stop();
             }
             fs.Seek(0, System.IO.SeekOrigin.Begin);
             FileVersion.Save(fv, fs);
             StockIndexes.Save(fv, fs);
             Stocks.Save(fv, fs);
             Players.Save(fv, fs);
             MarketState.Save(fv, fs);
             fs.Flush();
             FileName = fs.Name;
             while (!PlayTimer.Enabled)
             {
                 PlayTimer.Start();
             }
         }
         if (AfterSaveEvent != null)
         {
             AfterSaveEvent();
         }
         if (UpdateStockInformationsEvent != null)
         {
             UpdateStockInformationsEvent();
         }
         if (UpdatePlayerInformationsEvent != null)
         {
             UpdatePlayerInformationsEvent();
         }
     }
     catch (System.Exception ex)
     {
         while (!PlayTimer.Enabled)
         {
             PlayTimer.Start();
         }
         throw ex;
     }
 }