Example #1
0
 public RentsHistory(int daysCount, UnitOfWork session, IBackgroundWorker backgroundWorker, IExceptionProcesser exceptionProcesser)
 {
     if (formatsIndexes == null)
     {
         formatsIndexes = new Dictionary <MovieItemFormat, int>();
         for (int i = 0; i < formats.Length; ++i)
         {
             formatsIndexes.Add(formats[i], i);
         }
     }
     if (statusesIndexes == null)
     {
         statusesIndexes = new Dictionary <MovieItemStatus, int>();
         for (int i = 0; i < statuses.Length; ++i)
         {
             statusesIndexes.Add(statuses[i], i);
         }
     }
     addedItemsCountGenerators = new RandomGenerator[formats.Length];
     this.exceptionProcesser   = exceptionProcesser;
     this.session                  = session;
     this.daysCount                = daysCount;
     this.backgroundWorker         = backgroundWorker;
     this.backgroundWorker.DoWork += new DoWorkEventHandler(Generate);
     this.backgroundWorker.RunWorkerAsync(System.Threading.Thread.CurrentThread.CurrentUICulture);
 }
Example #2
0
 public static Exception CommitSession(UnitOfWork session, IExceptionProcesser exceptionProcesser)
 {
     try {
         session.CommitChanges();
         return(null);
     } catch (Exception e) {
         if (exceptionProcesser != null)
         {
             exceptionProcesser.Process(e);
             return(e);
         }
         else
         {
             throw;
         }
     }
 }
Example #3
0
        public static void CommitInBackground(UnitOfWork session, IExceptionProcesser exceptionProcesser, IBackgroundWorker worker, int maxProgress)
        {
            ICollection  objectsToSave = session.GetObjectsToSave();
            double       saveSessionPercentProgress  = worker.ReportedProgress;
            double       saveSessionPercentPerObject = 0.95 * (maxProgress - saveSessionPercentProgress) / objectsToSave.Count;
            EventHandler objectSaved = delegate(object sender, EventArgs e) {
                saveSessionPercentProgress += saveSessionPercentPerObject;
                worker.ReportProgress((int)saveSessionPercentProgress);
            };

            foreach (IXPSimpleObject obj in session.GetObjectsToSave())
            {
                ExtendedXPBaseObject vrbo = obj as ExtendedXPBaseObject;
                if (vrbo == null)
                {
                    continue;
                }
                vrbo.Saved += objectSaved;
            }
            SessionHelper.CommitSession(session, exceptionProcesser);
            worker.ReportProgress(maxProgress);
        }
Example #4
0
        public static bool SafeDelete(VideoRentBaseObject obj, string shureToDeleteMessage, IExceptionProcesser exceptionProcesser, Action <object> action)
        {
            UnitOfWork uow = SafeDeleteNoCommit(obj, shureToDeleteMessage, action);

            if (uow == null)
            {
                return(false);
            }
            SessionHelper.CommitSession(uow, exceptionProcesser);
            return(true);
        }
Example #5
0
 public static bool SafeDelete(VideoRentBaseObject obj, string shureToDeleteMessage, IExceptionProcesser exceptionProcesser)
 {
     return(SafeDelete(obj, shureToDeleteMessage, exceptionProcesser, null));
 }
Example #6
0
 public InitialDbCreator(ICreateInitialDbDialog createInitialDbDialog, IExceptionProcesser exceptionProcesser)
 {
     this.createInitialDbDialog = createInitialDbDialog;
     this.exceptionProcesser    = exceptionProcesser;
 }