internal virtual void ThrowIfAborted(CancelationTrigger cancelationTrigger, string uniqueName)
        {
            ProcessingStatus status;

            lock (m_syncRoot)
            {
                status = GetStatus(uniqueName);
            }
            if (status != 0 && (!m_hasThrownAbortedException || !m_enforceSingleAbortException))
            {
                m_hasThrownAbortedException = true;
                if (status == ProcessingStatus.AbnormalTermination)
                {
                    throw new ProcessingAbortedException(cancelationTrigger, m_exception);
                }
                throw new ProcessingAbortedException(cancelationTrigger);
            }
        }
        public virtual void ThrowIfAborted(CancelationTrigger cancelationTrigger, string uniqueName)
        {
            ProcessingStatus status = default(ProcessingStatus);

            lock (this.m_syncRoot)
            {
                status = this.GetStatus(uniqueName);
            }
            if (status == ProcessingStatus.Success)
            {
                return;
            }
            if (this.m_hasThrownAbortedException && this.m_enforceSingleAbortException)
            {
                return;
            }
            this.m_hasThrownAbortedException = true;
            if (status == ProcessingStatus.AbnormalTermination)
            {
                throw new ProcessingAbortedException(cancelationTrigger, this.m_exception);
            }
            throw new ProcessingAbortedException(cancelationTrigger);
        }
 public void ThrowIfAborted(CancelationTrigger cancelationTrigger)
 {
     ThrowIfAborted(cancelationTrigger, null);
 }
 private static string CreateAdditionalTraceMessage(CancelationTrigger trigger)
 {
     return(string.Format(CultureInfo.InvariantCulture, "[{0}]", trigger.ToString()));
 }
 public ModelRetrievalAbortedException(CancelationTrigger cancelationTrigger)
     : base(ErrorCode.rsModelRetrievalCanceled, ErrorStrings.rsModelRetrievalCanceled, null, CreateAdditionalTraceMessage(cancelationTrigger))
 {
     m_cancelationTrigger = cancelationTrigger;
 }
示例#6
0
 internal ProcessingAbortedException(CancelationTrigger cancelationTrigger, Exception innerException)
     : base(ErrorCode.rsProcessingAborted, RPRes.rsProcessingAbortedByError, innerException, Global.Tracer, CreateAdditionalTraceMessage(Reason.AbnormalTermination, cancelationTrigger))
 {
     m_reason             = Reason.AbnormalTermination;
     m_cancelationTrigger = cancelationTrigger;
 }
示例#7
0
 internal ProcessingAbortedException(CancelationTrigger cancelationTrigger)
     : base(ErrorCode.rsProcessingAborted, RPRes.rsProcessingAbortedByUser, null, Global.Tracer, CreateAdditionalTraceMessage(Reason.UserCanceled, cancelationTrigger))
 {
     m_reason             = Reason.UserCanceled;
     m_cancelationTrigger = cancelationTrigger;
 }