internal static Message Decode()

in netmf/NetMFLite/Message.cs [140:173]


        internal static Message Decode(ByteBuffer buffer)
        {
            Message message = new Message();
            while (buffer.Length > 0)
            {
                var section = (DescribedValue)Encoder.ReadObject(buffer);
                if (section.Descriptor.Equals(0x72ul))
                {
                    message.MessageAnnotations = (Map)section.Value;
                }
                else if (section.Descriptor.Equals(0x73ul))
                {
                    List list = (List)section.Value;
                    for (int i = list.Count; i < 13; i++)
                    {
                        list.Add(null);
                    }
                    
                    message.properties = list;
                }
                else if (section.Descriptor.Equals(0x74ul))
                {
                    message.ApplicationProperties = (Map)section.Value;
                }
                else if (section.Descriptor.Equals(0x75ul) ||
                    section.Descriptor.Equals(0x76ul) ||
                    section.Descriptor.Equals(0x77ul))
                {
                    message.Body = section.Value;
                }
            }

            return message;
        }