RaumfeldNET.ZoneManager.createRoomForXMLNode C# (CSharp) Метод

createRoomForXMLNode() приватный Метод

private createRoomForXMLNode ( XmlNode _roomNode ) : Room
_roomNode System.Xml.XmlNode
Результат Room
        private Room createRoomForXMLNode(XmlNode _roomNode)
        {
            if (_roomNode == null)
                return null;

            try
            {
                Room  newRoom = new Room();

                newRoom.udn = xmlDocumentHelper.getNodeAttributeValue(_roomNode, "udn");
                newRoom.uuid = newRoom.udn.Substring(5);
                newRoom.name = xmlDocumentHelper.getNodeAttributeValue(_roomNode, "name");
                newRoom.color = xmlDocumentHelper.getNodeAttributeValue(_roomNode, "color");
                // we store real UDN of renderer and this is the same but without the uuid!
                newRoom.rendererUDN = xmlDocumentHelper.getChildNodeAttributeValue(_roomNode, "renderer", "udn");
                newRoom.rendererUDN = newRoom.rendererUDN.Substring(5);

                // if room has no color assigned, then give him some white painting
                if (String.IsNullOrWhiteSpace(newRoom.color))
                    newRoom.color = "#FFFFFF";

                if (String.IsNullOrWhiteSpace(newRoom.udn))
                    throw new Exception("Raum hat keinen UDN Identifier");

                this.writeLog(LogType.Info, String.Format("Raum UDN: '{0}' erstellt", newRoom.udn));
                return newRoom;
            }
            catch (Exception e)
            {
                this.writeLog(LogType.Error, "Fehler beim erstellen von Raum aus XML-Knoten", e, _roomNode.InnerXml);
                return null;
            }
        }