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); }
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; } } }
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); }
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); }
public static bool SafeDelete(VideoRentBaseObject obj, string shureToDeleteMessage, IExceptionProcesser exceptionProcesser) { return(SafeDelete(obj, shureToDeleteMessage, exceptionProcesser, null)); }
public InitialDbCreator(ICreateInitialDbDialog createInitialDbDialog, IExceptionProcesser exceptionProcesser) { this.createInitialDbDialog = createInitialDbDialog; this.exceptionProcesser = exceptionProcesser; }