/// <summary> /// Mapping RequestOutcome to MessageState /// </summary> /// <param name="outcome">RequestOutcome</param> /// <returns>MessageState</returns> public static MessageState ConvertMessageStateFromRequestOutcome(RequestOutcome outcome) { switch (outcome) { case RequestOutcome.UNKNOWN: case RequestOutcome.DELIVERING: return(MessageState.UNKNOWN); case RequestOutcome.SUCCESS: return(MessageState.DELIVERED); case RequestOutcome.TIMEOUT: return(MessageState.TIMEOUT); case RequestOutcome.CANCELLED: case RequestOutcome.FAILED_OPERATOR: case RequestOutcome.FAILED_UNAUTHORIZED: case RequestOutcome.FAILED_DATA_CONTRACT: case RequestOutcome.FAILED_CONTENT: case RequestOutcome.FAILED_BALANCE: return(MessageState.FAILED_OPERATOR); } return(MessageState.FAILED_UNKNOWN); }
internal NotificationArgs(RequestOutcome outcome, OPSTelegrama response) { if (response != null) { _response = OPSTelegramaFactory.CreateOPSTelegrama(response.FullData); } _outcome = outcome; }
private void OnRequestMessageResponse(decimal msgId, RequestOutcome outcome, OPSTelegrama response) { if (MessageArrived != null) { MessageArrived(msgId, outcome, response.XmlData, this, response.Packetizer.PacketInfo.SourceId); } else { CommMain.Logger.AddLog("WARNING: MessageProcessor.OnRequestMessageResponse: MessageArrived is null.", LoggerSeverities.Debug); } }
public static MessageState ConvertMessageStateFromRequestOutcome(RequestOutcome outcome) { switch (outcome) { case RequestOutcome.UNKNOWN: return(MessageState.UNKNOWN); case RequestOutcome.DELIVERING: return(MessageState.UNKNOWN); case RequestOutcome.TIMEOUT: return(MessageState.TIMEOUT); case RequestOutcome.CANCELLED: return(MessageState.FAILED_OPERATOR); case RequestOutcome.SUCCESS: return(MessageState.DELIVERED); case RequestOutcome.FAILED_OPERATOR: return(MessageState.FAILED_OPERATOR); case RequestOutcome.FAILED_UNAUTHORIZED: return(MessageState.FAILED_OPERATOR); case RequestOutcome.FAILED_DATA_CONTRACT: return(MessageState.FAILED_OPERATOR); case RequestOutcome.FAILED_OVER_SPEED: return(MessageState.FAILED_SEND_FILTER); case RequestOutcome.FAILED_MOBILE: return(MessageState.FAILED_MOBILE); case RequestOutcome.FAILED_CONTENT: return(MessageState.FAILED_OPERATOR); case RequestOutcome.FAILED_SIGN: return(MessageState.FAILED_SIGN); case RequestOutcome.FAILED_EXTENDED_CODE: return(MessageState.FAILED_OPERATOR); case RequestOutcome.FAILED_BALANCE: return(MessageState.FAILED_OPERATOR); case RequestOutcome.FAILED_UNKNOWN: return(MessageState.FAILED_UNKNOWN); } return(MessageState.FAILED_UNKNOWN); }
internal static RecentRequestModel FromRequestOutcome(RequestOutcome requestOutcome) { return(new RecentRequestModel() { ID = requestOutcome.ID, ReceivedUtc = requestOutcome.ReceivedUtc.ToString("HH:mm:ss.fff"), DurationMs = requestOutcome.CompletedUtc == null ? "" : requestOutcome.DurationMs.Value.ToString("N0"), TileServerName = requestOutcome.TileServerName ?? "", Zoom = requestOutcome.Zoom ?? "", X = requestOutcome.X ?? "", Y = requestOutcome.Y ?? "", Retina = requestOutcome.Retina ?? "", Outcome = requestOutcome.Outcome ?? "", }); }
/// <summary> /// Handler for the MessageProcessor MessageArrived event /// </summary> /// <param name="msgId">The new message identifier</param> /// <param name="outcome">The outcome of the message (not used)</param> /// <param name="msg">The message received</param> /// <param name="sender">The message processor that received the message</param> /// <param name="srcId">The source unit id</param> public void NewMessage(decimal msgId, RequestOutcome outcome, string msg, MessageProcessor sender, string srcId) { lock (_msgQueue) { _msgQueue.Enqueue(new ReceivedMessage(msg, sender.Id, srcId)); } if (MessagesAvailable != null) { ThreadPool.QueueUserWorkItem( new WaitCallback(FireMessagesAvailableEventThreadProc)); } else { CommMain.Logger.AddLog("WARNING: SocketChannel.NewMessage: MessagesAvailable is null.", LoggerSeverities.Error); } }
/// <summary> /// Handler for the ChannelAdapter MessageResponse event /// </summary> /// <param name="outcome">The outcome of the message</param> /// <param name="response">The response received when the /// outcome indicates success, null otherwise</param> private void OnChannelAdapterMessageResponse(RequestOutcome outcome, OPSTelegrama response) { if (_sending && response != null && _responseHandler != null) { ThreadPool.QueueUserWorkItem( new WaitCallback(HandleResponseThreadProc), new RequestResponse(outcome, response)); } else { if (outcome == RequestOutcome.ReceiveError || outcome == RequestOutcome.SendError) { Debug.WriteLine("Request - Finalizing request due to receive or send error"); FinalizeRequest(); } } }
private void RefreshListViewItem(RequestOutcome requestOutcome, ListViewItem lvi) { if (!(lvi.Tag is RequestOutcome taggedOutcome) || !taggedOutcome.Equals(requestOutcome)) { while (lvi.SubItems.Count < 8) { lvi.SubItems.Add(""); } lvi.Tag = requestOutcome; lvi.SubItems[0].Text = requestOutcome.ReceivedUtc.ToString("HH:mm:ss.fff"); lvi.SubItems[1].Text = requestOutcome.CompletedUtc == null ? "" : requestOutcome.DurationMs.Value.ToString("N0"); lvi.SubItems[2].Text = requestOutcome.TileServerName ?? ""; lvi.SubItems[3].Text = requestOutcome.Zoom ?? ""; lvi.SubItems[4].Text = requestOutcome.X ?? ""; lvi.SubItems[5].Text = requestOutcome.Y ?? ""; lvi.SubItems[6].Text = requestOutcome.Retina ?? ""; lvi.SubItems[7].Text = requestOutcome.Outcome ?? ""; } }
/* * public delegate void MessageArrivedHandler(decimal msgId, * RequestOutcome outcome, OPSTelegrama response, * MessageProcessor sender); * /// <summary> * /// The signature for handlers of the Done event * /// </summary> * public delegate void DoneHandler(MessageProcessor sender); * /// <summary> * /// The signature for handlers of the MessageRetried event * /// </summary> * public delegate void MessageRetriedHandler(decimal msgId, * decimal retriesLeft, MessageProcessor sender); * */ /// <summary> /// Handler for the MessageProcessor.MessageArrived event /// </summary> /// <param name="msgId">The identifier of the message arrived</param> /// <param name="outcome">The outcome of the sending process</param> /// <param name="response">The contents of the response when the outcome /// indicates success, null otherwise</param> /// <param name="sender">The processor that received the message</param> protected void OnRequestResponse(decimal msgId, RequestOutcome outcome, string response, MessageProcessor sender, string srcId) { string text = string.Format("Sender - Updating row({0}): {1}, {2}", msgId, outcome, (response != null)? response : String.Empty); Debug.WriteLine(text); if (response != null) { if (_messages.UpdateMessageStatus( msgId, (decimal)(int)GetMessageStatus(outcome))) { if (_responseRouter != null) { _responseRouter.RouteAck(msgId, response); } } } }
/// <summary> /// Returns the message status corresponding to a request outcome /// </summary> /// <param name="outcome">The request outcome</param> /// <returns>The corresponding message status</returns> protected MessageStatus GetMessageStatus(RequestOutcome outcome) { MessageStatus status = MessageStatus.Failed; switch (outcome) { case RequestOutcome.SendOK: { status = MessageStatus.Sent; break; } case RequestOutcome.ServerNackError: { status = MessageStatus.NackServer; break; } case RequestOutcome.WrongMsgFormatNack: { status = MessageStatus.NackMessage; break; } case RequestOutcome.MessageError: case RequestOutcome.OperationCancelled: case RequestOutcome.ReceiveError: case RequestOutcome.SendError: case RequestOutcome.SendTimeout: { status = MessageStatus.Failed; break; } } return(status); }
internal RequestResponse(RequestOutcome outcome, OPSTelegrama msg) { _outcome = outcome; _msg = msg; }
public DeliveryResponse(RequestOutcome deliveryOutcome, string detail, string customMessageId) : this(deliveryOutcome, detail) { this.CustomMessageId = customMessageId; }
public DeliveryResponse(RequestOutcome deliveryOutcome, string detail) : this(deliveryOutcome) { this.DeliveryDetail = detail; }
public DeliveryResponse(RequestOutcome deliveryOutcome) { this.DeliveryOutcome = deliveryOutcome; this.ConnectorLantency = TimeSpan.Zero; }
public ReportResponse(RequestOutcome outcome, List <ReportDetail> reports) { this.RequestOutcome = outcome; this.Details = reports; }