public override WebServiceResponse Unmarshall()

in aliyun-net-sdk-dybaseapi/Dybaseapi/MNS/Model/Internal/MarshallTransformations/ReceiveMessageResponseUnmarshaller.cs [16:73]


        public override WebServiceResponse Unmarshall(XmlUnmarshallerContext context)
        {
            System.Xml.XmlTextReader reader = new System.Xml.XmlTextReader(context.ResponseStream);
            Message message = new Message();

            while (reader.Read())
            {
                switch (reader.NodeType)
                {
                    case System.Xml.XmlNodeType.Element:
                        switch (reader.LocalName)
                        {
                            case MNSConstants.XML_ELEMENT_MESSAGE_ID:
                                reader.Read();
                                message.Id = reader.Value;
                                break;
                            case MNSConstants.XML_ELEMENT_RECEIPT_HANDLE:
                                reader.Read();
                                message.ReceiptHandle = reader.Value;
                                break;
                            case MNSConstants.XML_ELEMENT_MESSAGE_BODY_MD5:
                                reader.Read();
                                message.BodyMD5 = reader.Value;
                                break;
                            case MNSConstants.XML_ELEMENT_MESSAGE_BODY:
                                reader.Read();
                                message.Body = reader.Value;
                                break;
                            case MNSConstants.XML_ELEMENT_ENQUEUE_TIME:
                                reader.Read();
                                message.EnqueueTime = AliyunSDKUtils.ConvertFromUnixEpochSeconds(long.Parse(reader.Value));
                                break;
                            case MNSConstants.XML_ELEMENT_NEXT_VISIBLE_TIME:
                                reader.Read();
                                message.NextVisibleTime = AliyunSDKUtils.ConvertFromUnixEpochSeconds(long.Parse(reader.Value));
                                break;
                            case MNSConstants.XML_ELEMENT_FIRST_DEQUEUE_TIME:
                                reader.Read();
                                message.FirstDequeueTime = AliyunSDKUtils.ConvertFromUnixEpochSeconds(long.Parse(reader.Value));
                                break;
                            case MNSConstants.XML_ELEMENT_DEQUEUE_COUNT:
                                reader.Read();
                                message.DequeueCount = uint.Parse(reader.Value);
                                break;
                            case MNSConstants.XML_ELEMENT_PRIORITY:
                                reader.Read();
                                message.Priority = uint.Parse(reader.Value);
                                break;
                        }
                        break;
                }
            }
            reader.Close();
            return new ReceiveMessageResponse()
            {
                Message = message
            };
        }