private void MarkAsDispatched(Commit commit)
 {
     try
     {
         Logger.Info(Resources.MarkingCommitAsDispatched, commit.CommitId);
         _persistence.MarkCommitAsDispatched(commit);
     }
     catch (ObjectDisposedException)
     {
         Logger.Warn(Resources.UnableToMarkDispatched, commit.CommitId);
     }
 }
 private void DispatchImmediately(Commit commit)
 {
     try
     {
         Logger.Info(Resources.SchedulingDispatch, commit.CommitId);
         _dispatcher.Dispatch(commit);
     }
     catch
     {
         Logger.Error(Resources.UnableToDispatch, _dispatcher.GetType(), commit.CommitId);
         throw;
     }
 }
 public override void ScheduleDispatch(Commit commit)
 {
     Logger.Info(Resources.SchedulingDelivery, commit.CommitId);
     _queue.Add(commit);
 }
 public void MarkCommitAsDispatched(Commit commit)
 {
     _original.MarkCommitAsDispatched(commit);
 }
 public void Commit(Commit attempt)
 {
     _original.Commit(attempt);
 }
 public virtual void ScheduleDispatch(Commit commit)
 {
     DispatchImmediately(commit);
     MarkAsDispatched(commit);
 }
 private IEnumerable<ICommit> GetFromToWithEvent(DateTime start, DateTime end, object evt)
 {
     var commit = new Commit("", "", 0, ToGuid(1), 0, start, "", null, new[] { new EventMessage { Body = evt } });
     return new ICommit[] { commit };
 }