示例#1
0
        public string PollMessageBus(CancellationTokenSource cancellationTokenSource)
        {
            try
            {
                if (MessageBusReaderBank == null)
                {
                    throw new InvalidOperationException(ExceptionMessage_MessageBusReaderBankCannotBeNull);
                }

                Task <string> messageTask = MessageBusReaderBank.PollMessageBusForSingleMessage(cancellationTokenSource);
                messageTask.Wait();
                switch (messageTask.Status)
                {
                case TaskStatus.RanToCompletion:
                    return(messageTask.Result);

                case TaskStatus.Faulted:
                    throw new ApplicationException(messageTask.Exception.Flatten().InnerException.Message, messageTask.Exception.Flatten().InnerException);

                default:
                    return(String.Empty);
                }
            }
            catch (InvalidOperationException ex)
            {
                throw new InvalidOperationException(ex.Message, ex);
            }
            catch (Exception ex)
            {
                throw new ApplicationException(ex.Message, ex);
            }
        }
示例#2
0
 public void Dispose()
 {
     if (_isDisposed == false)
     {
         MessageBusReaderBank.Dispose();
         MessageBusWiter.Dispose();
     }
 }
示例#3
0
 public void Dispose()
 {
     try
     {
         if (_isDisposed == false)
         {
             MessageBusWiter.Dispose();
             MessageBusReaderBank.Dispose();
             Tack.Dispose();
             _isDisposed = true;
         }
     }
     catch (Exception ex)
     {
         new ApplicationException(ex.Message, ex);
     }
 }
 public void Dispose()
 {
     try
     {
         if (_isDisposed == false)
         {
             MessageBusWiter.Dispose();
             MessageBusReaderBank.Dispose();
             Tack.SkyWatch.UnWatch(typeof(IChatMessageEnvelope).ToString(), ServiceGUID); //NOTE: Must stop watching since SkyWatch is a global instance.
             Tack.Dispose();
             _isDisposed = true;
         }
     }
     catch (Exception ex)
     {
         new ApplicationException(ex.Message, ex);
     }
 }