Ejemplo n.º 1
0
        public WebFleetMessage Map(MessageTO msg)
        {
            var result = new WebFleetMessage()
            {
                MessageId    = msg.messageId,
                MessageTime  = msg.messageTime,
                MessageText  = msg.messageText,
                PositionText = msg.positionText,
                ObjectNumber = [email protected],
            };

            SetMessageStatusFromText(result);

            return(result);
        }
Ejemplo n.º 2
0
        public WebFleetMessage Map(QueueServiceData msg)
        {
            var result = new WebFleetMessage()
            {
                MessageId    = msg.msgid.messageId,
                MessageTime  = msg.msgTime,
                MessageText  = msg.msgText,
                PositionText = msg.posText,
                ObjectNumber = msg.objectNo.objectNo,
            };

            SetMessageStatusFromText(result);

            return(result);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Analyzes the MessageText property of the provided WebFleetMessage
        /// and sets the MessageStatus, InformationalStatus, and InformationPosition
        /// information based upon the status string
        /// </summary>
        /// <param name="messageObject"></param>
        private void SetMessageStatusFromText(WebFleetMessage messageObject)
        {
            var messageText = messageObject.MessageText;

            if (messageText.StartsWith("Message \""))
            {
                if (messageText.EndsWith("read"))
                {
                    messageObject.Status      = MessageStatus.Read;
                    messageObject.MessageText = messageText.Substring(9, messageText.Length - (9 + 6));
                }
                else if (messageText.EndsWith("received"))
                {
                    messageObject.Status      = MessageStatus.Received;
                    messageObject.MessageText = messageText.Substring(9, messageText.Length - (9 + 10));
                }
            }
            else if (messageText.Length > 17)
            {
                switch (messageText.Substring(0, 18).ToLower())
                {
                case "destination reache":

                    messageObject.Status = MessageStatus.Informational;
                    messageObject.InformationalStatusType       = InformationalStatusType.DestinationReached;
                    messageObject.InformationStatusPositionText = GetParenthesisText(messageText);
                    messageObject.MessageText = "Destination reached";
                    break;

                case "navigation cancell":
                    messageObject.Status = MessageStatus.Informational;
                    messageObject.InformationalStatusType       = InformationalStatusType.NavigationCancelled;
                    messageObject.InformationStatusPositionText = GetParenthesisText(messageText);
                    messageObject.MessageText = "Navigation cancelled";
                    break;

                case "navigation started":
                    messageObject.Status = MessageStatus.Informational;
                    messageObject.InformationalStatusType       = InformationalStatusType.NavigationStarted;
                    messageObject.InformationStatusPositionText = GetParenthesisText(messageText);
                    messageObject.MessageText = "Navigation started";
                    break;
                }
            }
        }