private void OnMessageDeliveryFailure(MessageFailedEventArgs args) { try { if (_messageDeliveryFailure != null) { Delegate[] list = _messageDeliveryFailure.GetInvocationList(); foreach (Delegate t in list) { MessageDeliveryFailureCallback cb = t as MessageDeliveryFailureCallback; if (cb != null) { #if !NETCORE cb.BeginInvoke(this, args, null, null); #elif NETCORE TaskFactory factory = new TaskFactory(); Task task = factory.StartNew(() => cb(this, args)); #endif } } } } catch (Exception) { } }
private void _topic_MessageDeliveryFailure(object sender, MessageFailedEventArgs args) { var reasonForFailure = args.MessgeFailureReason.ToString(); var messageID = args.Message.MessageId; var topicName = args.TopicName; _logger.LogError($"Message {messageID} could not be delivered on topic {topicName} for reason:{reasonForFailure}"); }
void OnMessageFailed(MessageFailedEventArgs e) { #if DEBUG string message = "Following message could not be delivered due to error: " + e.Exception.Coalesce(x => x.Message, "Unknown"); #else string message = Translation.Instance.ChatWindow_MessageCouldNotBeDelivered; #endif string detail = e.Message; chatTextBox.AddError(message, detail); }
/// <summary> /// Endlessly repeating loop! /// </summary> public void Go() { try { while (true) { try { AbstractMessage msg = connection.Read(); if (MessageReceived != null) { MessageReceivedEventArgs args = new MessageReceivedEventArgs(); args.Message = msg; MessageReceived(inner, args); } } catch (XmlException e) { if (MessageFailed != null) { MessageFailedEventArgs args = new MessageFailedEventArgs(); args.Cause = e; MessageFailed(inner, args); } } } } catch (Exception) // any exception { new Thread(inner.InternalTerminationProcedure).Start(); } }
void chatSession_MessageFailed(object sender, MessageFailedEventArgs e) { eventQueue.Enqueue(() => OnMessageFailed(e)); }
/// <summary> /// This method will be invoked in the case of any failure in a message's delivery. /// </summary> static void MessageDeliveryFailure(object sender, MessageFailedEventArgs args) { Console.WriteLine("Message not delivered. Reason: {0}", args.MessgeFailureReason); }