Enterra.V8x1C.DOM.TypeDescription.IV8XmlSerializable C# (CSharp) Method

IV8XmlSerializable() private method

Load from V8 xml
private IV8XmlSerializable ( XmlNode node ) : void
node System.Xml.XmlNode
return void
        void IV8XmlSerializable.LoadFromV8Xml(XmlNode node)
        {
            XmlElement typeDescTag = (XmlElement)node;

            List<TypeInfo> typesList = new List<TypeInfo>();


            foreach (var nd1 in typeDescTag.ChildNodes)
            {
                XmlElement typesTag = nd1 as XmlElement;
                
               
                if (typesTag == null || 
                    !(typesTag.Name == V8XmlTypesTagName ||
                    typesTag.Name == V8XmlD2P1NamespaceName + ":" + V8XmlTypesTagName ||
                    typesTag.Name == V8XmlP1NamespaceName + ":" + V8XmlTypesTagName
                    )
                    )
                {
                    continue;
                }


                foreach (var nd2  in typesTag.ChildNodes)
                {
                    XmlElement typeTag = nd2 as XmlElement;

                    if (typeTag == null ||
                        !(typeTag.Name == V8XmlTypeTagName ||
                        typeTag.Name == V8XmlD2P1NamespaceName + ":" + V8XmlTypeTagName ||
                        typeTag.Name == V8XmlP1NamespaceName + ":" + V8XmlTypeTagName
                        )
                        )
                    {
                        continue;
                    }

                    TypeInfo typeInfo = TypeInfo.LoadFromV8Xml(typeTag.InnerXml);
                    if (typeInfo != null)
                    {
                        typesList.Add(typeInfo);
                    }
                }
            }
            
            _types = typesList.ToArray();
        }