LiveCodingChat.Xmpp.XmppTest.XMPP_Message C# (CSharp) Method

XMPP_Message() private method

private XMPP_Message ( XmlElement element ) : void
element System.Xml.XmlElement
return void
        private void XMPP_Message(XmlElement element)
        {
            if (element.Attributes.GetNamedItem ("to").Value == JID) {
                string frm = element.Attributes.GetNamedItem ("from").Value;
                string key = frm.Split ('/') [0];
                if (Rooms.ContainsKey(key)){
                    Room r = Rooms [key];
                    string user = frm.Substring (key.Length+1), message = "";
                    DateTime stamp = DateTime.Now;
                    foreach (XmlElement el in element.ChildNodes) {
                        if (el.Name == "body") {
                            message = el.InnerXml;
                        } else if (el.Name == "delay") {
                            string stmp = el.Attributes.GetNamedItem ("stamp").Value;
                            stamp = DateTime.Parse (stmp);
                        }
                    }
                    if (MessageReceived != null) {
                        User userObj = null;
                        if (r.Users.ContainsKey (user)) {
                            userObj = r.Users [user];
                            MessageReceived (r, new MessageReceivedEventArgs (r.Users [user], message,stamp));//TODO: stamp
                        } else {
                            MessageReceived (r, new MessageReceivedEventArgs (user, message,stamp));
                        }
                    }
                }
            }
        }