Ejemplo n.º 1
0
        /// <summary>
        /// Sends out completion notifications.  !!!Important:  you must set the <see cref="Status"/> before calling
        /// this method.
        /// </summary>
        /// <param name="progressAtCompletion"></param>
        /// <param name="isCancelled"></param>
        /// <param name="ex"></param>
        /// <param name="mssg"></param>
        internal void PersistComplete(int progressAtCompletion, bool isCancelled, Exception ex, string mssg)
        {
            if (!CompletionCalled)
            {
                CompletionCalled = true;

                PersistCompletedEventArgs arg = null;
                if (WorkerStatus == WorkerStatus.Error)
                {
                    if (ex != null)
                    {
                        arg = new PersistCompletedEventArgs(progressAtCompletion, mssg, ex, false);
                        OnPersistCompleted(arg);
                    }
                    else
                    {
                        throw new InvalidOperationException("Exception is null");
                    }
                }
                else if (IsCancelled)
                {
                    arg = new PersistCompletedEventArgs(progressAtCompletion, mssg, ex, true);
                    OnPersistCompleted(arg);
                }
                else if (WorkerStatus == WorkerStatus.Completed)
                {
                    arg = new PersistCompletedEventArgs(progressAtCompletion, mssg, ex, false);
                    OnPersistCompleted(arg);
                }
                else if (WorkerStatus == WorkerStatus.Uninitialized)
                {
                    arg = new PersistCompletedEventArgs(progressAtCompletion, mssg, ex, false);
                    OnPersistCompleted(arg);
                }
                else
                {
                    throw new InvalidOperationException("Invalid WorkerStatus for PersistComplete().");
                }

                AsynchOp = null;
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Sends out completion notifications.  !!!Important:  you must set the <see cref="Status"/> before calling
        /// this method.
        /// </summary>
        /// <param name="progressAtCompletion"></param>
        /// <param name="isCancelled"></param>
        /// <param name="ex"></param>
        /// <param name="mssg"></param>
        internal void PersistComplete(int progressAtCompletion, bool isCancelled, Exception ex, string mssg)
        {
            if (!CompletionCalled)
            {
                CompletionCalled = true;

                PersistCompletedEventArgs arg = null;
                string logTitle = null;
                string logMssg = mssg;
                if (WorkerStatus == WorkerStatus.Error)
                {
                    if (ex != null)
                    {
                        logTitle = BlueSpider.Common.Constants.LogEntryTitle_Exception;
                        logMssg = ex.Message;
                        arg = new PersistCompletedEventArgs(progressAtCompletion, mssg, ex, false);
                        OnPersistCompleted(arg);
                    }
                    else
                    {
                        throw new InvalidOperationException("Exception is null");
                    }
                }
                else if (IsCancelled)
                {
                    logTitle = BlueSpider.Common.Constants.LogEntryTitle_Cancelled;
                    arg = new PersistCompletedEventArgs(progressAtCompletion, mssg, ex, true);
                    OnPersistCompleted(arg);
                }
                else if (WorkerStatus == WorkerStatus.Completed)
                {
                    logTitle = BlueSpider.Common.Constants.LogEntryTitle_End;
                    arg = new PersistCompletedEventArgs(progressAtCompletion, mssg, ex, false);
                    OnPersistCompleted(arg);
                }
                else if (WorkerStatus == WorkerStatus.Uninitialized)
                {
                    logTitle = BlueSpider.Common.Constants.LogEntryTitle_End;
                    arg = new PersistCompletedEventArgs(progressAtCompletion, mssg, ex, false);
                    OnPersistCompleted(arg);
                }
                else
                {
                    throw new InvalidOperationException("Invalid WorkerStatus for PersistComplete().");
                }

                AsynchOp = null;
            }
        }
Ejemplo n.º 3
0
 internal virtual void OnPersistCompleted(PersistCompletedEventArgs ea)
 {
     if (PersistCompleted != null)
     {
         if (IsAsynch)
         {
             if (AsynchOp != null)
             {
                 AsynchOp.Post
                 (
                     delegate(object arg) { PersistCompleted(this, (PersistCompletedEventArgs)arg); },
                     ea
                 );
             }
         }
         else
         {
             PersistCompleted(this, ea);
         }
     }
 }
 public void PersistCompleted_DummyHandlerWhichThrows(IWorkSpacePropertiesPersister sender, PersistCompletedEventArgs ea)
 {
     throw new Exception("The method or operation is not implemented.");
 }
Ejemplo n.º 5
0
 public void PersistCompleted_DummyHandler(IVarMgrPersister sender, PersistCompletedEventArgs ea)
 {
     //throw new Exception("The method or operation is not implemented.");
 }
Ejemplo n.º 6
0
 internal void wsp_PersistCompleted(IWorkSpacePersister sender, PersistCompletedEventArgs ea)
 {
     OnPersistCompleted(ea);
 }
Ejemplo n.º 7
0
 internal virtual void OnPersistCompleted(PersistCompletedEventArgs ea)
 {
     if (PersistCompleted != null)
         PersistCompleted(this, ea);
 }
Ejemplo n.º 8
0
 internal void pMgr_PersistCompleted(PersistMgr sender, PersistCompletedEventArgs ea)
 {
     // TODO
     //Debug.WriteLine(string.Format("Persist Complete:  {0}%; >{1}<", ea.ProgressAtCompletion, ea.Message));
     //Debug.Flush();
 }