Exemplo n.º 1
0
        void WriteObject_AddinInfo(Mono.Addins.Setup.AddinInfo ob, string element, string namesp, bool isNullable, bool needType, bool writeWrappingElem)
        {
            if (((object)ob) == null)
            {
                if (isNullable)
                {
                    WriteNullTagLiteral(element, namesp);
                }
                return;
            }

            System.Type type = ob.GetType();
            if (type == typeof(Mono.Addins.Setup.AddinInfo))
            {
            }
            else
            {
                throw CreateUnknownTypeException(ob);
            }

            if (writeWrappingElem)
            {
                WriteStartElement(element, namesp, ob);
            }

            if (needType)
            {
                WriteXsiType("AddinInfo", "");
            }

            WriteElementString("Id", "", ob.@LocalId);
            WriteElementString("Namespace", "", ob.@Namespace);
            WriteElementString("Name", "", ob.@Name);
            WriteElementString("Version", "", ob.@Version);
            WriteElementString("BaseVersion", "", ob.@BaseVersion);
            WriteElementString("Author", "", ob.@Author);
            WriteElementString("Copyright", "", ob.@Copyright);
            WriteElementString("Url", "", ob.@Url);
            WriteElementString("Description", "", ob.@Description);
            WriteElementString("Category", "", ob.@Category);
            if (ob.@Dependencies != null)
            {
                WriteStartElement("Dependencies", "", ob.@Dependencies);
                for (int n32 = 0; n32 < [email protected]; n32++)
                {
                    if (((object)ob.@Dependencies[n32]) == null)
                    {
                    }
                    else if (ob.@Dependencies[n32].GetType() == typeof(Mono.Addins.Description.AssemblyDependency))
                    {
                        WriteObject_AssemblyDependency(((Mono.Addins.Description.AssemblyDependency)ob.@Dependencies[n32]), "AssemblyDependency", "", false, false, true);
                    }
                    else if (ob.@Dependencies[n32].GetType() == typeof(Mono.Addins.Description.NativeDependency))
                    {
                        WriteObject_NativeReference(((Mono.Addins.Description.NativeDependency)ob.@Dependencies[n32]), "NativeDependency", "", false, false, true);
                    }
                    else if (ob.@Dependencies[n32].GetType() == typeof(Mono.Addins.Description.AddinDependency))
                    {
                        WriteObject_AddinReference(((Mono.Addins.Description.AddinDependency)ob.@Dependencies[n32]), "AddinDependency", "", false, false, true);
                    }
                    else
                    {
                        throw CreateUnknownTypeException(ob.@Dependencies[n32]);
                    }
                }
                WriteEndElement(ob.@Dependencies);
            }
            if (ob.@OptionalDependencies != null)
            {
                WriteStartElement("OptionalDependencies", "", ob.@OptionalDependencies);
                for (int n33 = 0; n33 < [email protected]; n33++)
                {
                    if (((object)ob.@OptionalDependencies[n33]) == null)
                    {
                    }
                    else if (ob.@OptionalDependencies[n33].GetType() == typeof(Mono.Addins.Description.AssemblyDependency))
                    {
                        WriteObject_AssemblyDependency(((Mono.Addins.Description.AssemblyDependency)ob.@OptionalDependencies[n33]), "AssemblyDependency", "", false, false, true);
                    }
                    else if (ob.@OptionalDependencies[n33].GetType() == typeof(Mono.Addins.Description.NativeDependency))
                    {
                        WriteObject_NativeReference(((Mono.Addins.Description.NativeDependency)ob.@OptionalDependencies[n33]), "NativeDependency", "", false, false, true);
                    }
                    else if (ob.@OptionalDependencies[n33].GetType() == typeof(Mono.Addins.Description.AddinDependency))
                    {
                        WriteObject_AddinReference(((Mono.Addins.Description.AddinDependency)ob.@OptionalDependencies[n33]), "AddinDependency", "", false, false, true);
                    }
                    else
                    {
                        throw CreateUnknownTypeException(ob.@OptionalDependencies[n33]);
                    }
                }
                WriteEndElement(ob.@OptionalDependencies);
            }
            if (writeWrappingElem)
            {
                WriteEndElement(ob);
            }
        }
Exemplo n.º 2
0
        public Mono.Addins.Setup.AddinInfo ReadObject_AddinInfo(bool isNullable, bool checkType)
        {
            Mono.Addins.Setup.AddinInfo ob = null;
            if (isNullable && ReadNull())
            {
                return(null);
            }

            if (checkType)
            {
                System.Xml.XmlQualifiedName t = GetXsiType();
                if (t == null)
                {
                }
                else if (t.Name != "AddinInfo" || t.Namespace != "")
                {
                    throw CreateUnknownTypeException(t);
                }
            }

            ob = (Mono.Addins.Setup.AddinInfo)Activator.CreateInstance(typeof(Mono.Addins.Setup.AddinInfo), true);

            Reader.MoveToElement();

            while (Reader.MoveToNextAttribute())
            {
                if (IsXmlnsAttribute(Reader.Name))
                {
                }
                else
                {
                    UnknownNode(ob);
                }
            }

            Reader.MoveToElement();
            Reader.MoveToElement();
            if (Reader.IsEmptyElement)
            {
                Reader.Skip();
                return(ob);
            }

            Reader.ReadStartElement();
            Reader.MoveToContent();

            bool b17 = false, b18 = false, b19 = false, b20 = false, b21 = false, b22 = false, b23 = false, b24 = false, b25 = false, b26 = false, b27 = false, b28 = false, b29 = false;

            while (Reader.NodeType != System.Xml.XmlNodeType.EndElement)
            {
                if (Reader.NodeType == System.Xml.XmlNodeType.Element)
                {
                    if (Reader.LocalName == "Version" && Reader.NamespaceURI == "" && !b20)
                    {
                        b20 = true;
                        string s30 = Reader.ReadElementString();
                        ob.@Version = s30;
                    }
                    else if (Reader.LocalName == "Dependencies" && Reader.NamespaceURI == "" && !b27)
                    {
                        if (((object)ob.@Dependencies) == null)
                        {
                            throw CreateReadOnlyCollectionException("Mono.Addins.Description.DependencyCollection");
                        }
                        if (Reader.IsEmptyElement)
                        {
                            Reader.Skip();
                        }
                        else
                        {
                            int n31 = 0;
                            Reader.ReadStartElement();
                            Reader.MoveToContent();

                            while (Reader.NodeType != System.Xml.XmlNodeType.EndElement)
                            {
                                if (Reader.NodeType == System.Xml.XmlNodeType.Element)
                                {
                                    if (Reader.LocalName == "AssemblyDependency" && Reader.NamespaceURI == "")
                                    {
                                        if (((object)ob.@Dependencies) == null)
                                        {
                                            throw CreateReadOnlyCollectionException("Mono.Addins.Description.DependencyCollection");
                                        }
                                        [email protected](ReadObject_AssemblyDependency(false, true));
                                        n31++;
                                    }
                                    else if (Reader.LocalName == "NativeDependency" && Reader.NamespaceURI == "")
                                    {
                                        if (((object)ob.@Dependencies) == null)
                                        {
                                            throw CreateReadOnlyCollectionException("Mono.Addins.Description.DependencyCollection");
                                        }
                                        [email protected](ReadObject_NativeReference(false, true));
                                        n31++;
                                    }
                                    else if (Reader.LocalName == "AddinDependency" && Reader.NamespaceURI == "")
                                    {
                                        if (((object)ob.@Dependencies) == null)
                                        {
                                            throw CreateReadOnlyCollectionException("Mono.Addins.Description.DependencyCollection");
                                        }
                                        [email protected](ReadObject_AddinReference(false, true));
                                        n31++;
                                    }
                                    else
                                    {
                                        UnknownNode(null);
                                    }
                                }
                                else
                                {
                                    UnknownNode(null);
                                }

                                Reader.MoveToContent();
                            }
                            ReadEndElement();
                        }
                        b27 = true;
                    }
                    else if (Reader.LocalName == "Name" && Reader.NamespaceURI == "" && !b19)
                    {
                        b19 = true;
                        string s32 = Reader.ReadElementString();
                        ob.@Name = s32;
                    }
                    else if (Reader.LocalName == "BaseVersion" && Reader.NamespaceURI == "" && !b21)
                    {
                        b21 = true;
                        string s33 = Reader.ReadElementString();
                        ob.@BaseVersion = s33;
                    }
                    else if (Reader.LocalName == "Id" && Reader.NamespaceURI == "" && !b17)
                    {
                        b17 = true;
                        string s34 = Reader.ReadElementString();
                        ob.@LocalId = s34;
                    }
                    else if (Reader.LocalName == "Url" && Reader.NamespaceURI == "" && !b24)
                    {
                        b24 = true;
                        string s35 = Reader.ReadElementString();
                        ob.@Url = s35;
                    }
                    else if (Reader.LocalName == "Copyright" && Reader.NamespaceURI == "" && !b23)
                    {
                        b23 = true;
                        string s36 = Reader.ReadElementString();
                        ob.@Copyright = s36;
                    }
                    else if (Reader.LocalName == "Description" && Reader.NamespaceURI == "" && !b25)
                    {
                        b25 = true;
                        string s37 = Reader.ReadElementString();
                        ob.@Description = s37;
                    }
                    else if (Reader.LocalName == "Author" && Reader.NamespaceURI == "" && !b22)
                    {
                        b22 = true;
                        string s38 = Reader.ReadElementString();
                        ob.@Author = s38;
                    }
                    else if (Reader.LocalName == "OptionalDependencies" && Reader.NamespaceURI == "" && !b28)
                    {
                        if (((object)ob.@OptionalDependencies) == null)
                        {
                            throw CreateReadOnlyCollectionException("Mono.Addins.Description.DependencyCollection");
                        }
                        if (Reader.IsEmptyElement)
                        {
                            Reader.Skip();
                        }
                        else
                        {
                            int n39 = 0;
                            Reader.ReadStartElement();
                            Reader.MoveToContent();

                            while (Reader.NodeType != System.Xml.XmlNodeType.EndElement)
                            {
                                if (Reader.NodeType == System.Xml.XmlNodeType.Element)
                                {
                                    if (Reader.LocalName == "AssemblyDependency" && Reader.NamespaceURI == "")
                                    {
                                        if (((object)ob.@OptionalDependencies) == null)
                                        {
                                            throw CreateReadOnlyCollectionException("Mono.Addins.Description.DependencyCollection");
                                        }
                                        [email protected](ReadObject_AssemblyDependency(false, true));
                                        n39++;
                                    }
                                    else if (Reader.LocalName == "NativeDependency" && Reader.NamespaceURI == "")
                                    {
                                        if (((object)ob.@OptionalDependencies) == null)
                                        {
                                            throw CreateReadOnlyCollectionException("Mono.Addins.Description.DependencyCollection");
                                        }
                                        [email protected](ReadObject_NativeReference(false, true));
                                        n39++;
                                    }
                                    else if (Reader.LocalName == "AddinDependency" && Reader.NamespaceURI == "")
                                    {
                                        if (((object)ob.@OptionalDependencies) == null)
                                        {
                                            throw CreateReadOnlyCollectionException("Mono.Addins.Description.DependencyCollection");
                                        }
                                        [email protected](ReadObject_AddinReference(false, true));
                                        n39++;
                                    }
                                    else
                                    {
                                        UnknownNode(null);
                                    }
                                }
                                else
                                {
                                    UnknownNode(null);
                                }

                                Reader.MoveToContent();
                            }
                            ReadEndElement();
                        }
                        b28 = true;
                    }
                    else if (Reader.LocalName == "Properties" && Reader.NamespaceURI == "" && !b29)
                    {
                        if (((object)ob.@Properties) == null)
                        {
                            throw CreateReadOnlyCollectionException("Mono.Addins.Setup.AddinPropertyCollectionImpl");
                        }
                        if (Reader.IsEmptyElement)
                        {
                            Reader.Skip();
                        }
                        else
                        {
                            int n40 = 0;
                            Reader.ReadStartElement();
                            Reader.MoveToContent();

                            while (Reader.NodeType != System.Xml.XmlNodeType.EndElement)
                            {
                                if (Reader.NodeType == System.Xml.XmlNodeType.Element)
                                {
                                    if (Reader.LocalName == "Property" && Reader.NamespaceURI == "")
                                    {
                                        if (((object)ob.@Properties) == null)
                                        {
                                            throw CreateReadOnlyCollectionException("Mono.Addins.Setup.AddinPropertyCollectionImpl");
                                        }
                                        [email protected](ReadObject_AddinProperty(false, true));
                                        n40++;
                                    }
                                    else
                                    {
                                        UnknownNode(null);
                                    }
                                }
                                else
                                {
                                    UnknownNode(null);
                                }

                                Reader.MoveToContent();
                            }
                            ReadEndElement();
                        }
                        b29 = true;
                    }
                    else if (Reader.LocalName == "Namespace" && Reader.NamespaceURI == "" && !b18)
                    {
                        b18 = true;
                        string s41 = Reader.ReadElementString();
                        ob.@Namespace = s41;
                    }
                    else if (Reader.LocalName == "Category" && Reader.NamespaceURI == "" && !b26)
                    {
                        b26 = true;
                        string s42 = Reader.ReadElementString();
                        ob.@Category = s42;
                    }
                    else
                    {
                        UnknownNode(ob);
                    }
                }
                else
                {
                    UnknownNode(ob);
                }

                Reader.MoveToContent();
            }

            ReadEndElement();

            return(ob);
        }
Exemplo n.º 3
0
        public Mono.Addins.Setup.AddinInfo ReadObject_AddinInfo(bool isNullable, bool checkType)
        {
            Mono.Addins.Setup.AddinInfo ob = null;
            if (isNullable && ReadNull())
            {
                return(null);
            }

            if (checkType)
            {
                System.Xml.XmlQualifiedName t = GetXsiType();
                if (t == null)
                {
                }
                else if (t.Name != "AddinInfo" || t.Namespace != "")
                {
                    throw CreateUnknownTypeException(t);
                }
            }

            ob = new Mono.Addins.Setup.AddinInfo();

            Reader.MoveToElement();

            while (Reader.MoveToNextAttribute())
            {
                if (IsXmlnsAttribute(Reader.Name))
                {
                }
                else
                {
                    UnknownNode(ob);
                }
            }

            Reader.MoveToElement();
            if (Reader.IsEmptyElement)
            {
                Reader.Skip();
                return(ob);
            }

            Reader.ReadStartElement();
            Reader.MoveToContent();

            bool b12 = false, b13 = false, b14 = false, b15 = false, b16 = false, b17 = false, b18 = false, b19 = false, b20 = false, b21 = false, b22 = false, b23 = false;

            while (Reader.NodeType != System.Xml.XmlNodeType.EndElement)
            {
                if (Reader.NodeType == System.Xml.XmlNodeType.Element)
                {
                    if (Reader.LocalName == "Version" && Reader.NamespaceURI == "" && !b15)
                    {
                        b15         = true;
                        ob.@Version = Reader.ReadElementString();
                    }
                    else if (Reader.LocalName == "Dependencies" && Reader.NamespaceURI == "" && !b22)
                    {
                        if (((object)ob.@Dependencies) == null)
                        {
                            throw CreateReadOnlyCollectionException("Mono.Addins.Setup.DependencyCollection");
                        }
                        if (Reader.IsEmptyElement)
                        {
                            Reader.Skip();
                        }
                        else
                        {
                            int n24 = 0;
                            Reader.ReadStartElement();
                            Reader.MoveToContent();

                            while (Reader.NodeType != System.Xml.XmlNodeType.EndElement)
                            {
                                if (Reader.NodeType == System.Xml.XmlNodeType.Element)
                                {
                                    if (Reader.LocalName == "AssemblyDependency" && Reader.NamespaceURI == "")
                                    {
                                        if (((object)ob.@Dependencies) == null)
                                        {
                                            throw CreateReadOnlyCollectionException("Mono.Addins.Setup.DependencyCollection");
                                        }
                                        [email protected](ReadObject_AssemblyDependency(false, true));
                                        n24++;
                                    }
                                    else if (Reader.LocalName == "NativeDependency" && Reader.NamespaceURI == "")
                                    {
                                        if (((object)ob.@Dependencies) == null)
                                        {
                                            throw CreateReadOnlyCollectionException("Mono.Addins.Setup.DependencyCollection");
                                        }
                                        [email protected](ReadObject_NativeReference(false, true));
                                        n24++;
                                    }
                                    else if (Reader.LocalName == "AddinDependency" && Reader.NamespaceURI == "")
                                    {
                                        if (((object)ob.@Dependencies) == null)
                                        {
                                            throw CreateReadOnlyCollectionException("Mono.Addins.Setup.DependencyCollection");
                                        }
                                        [email protected](ReadObject_AddinReference(false, true));
                                        n24++;
                                    }
                                    else
                                    {
                                        UnknownNode(null);
                                    }
                                }
                                else
                                {
                                    UnknownNode(null);
                                }

                                Reader.MoveToContent();
                            }
                            ReadEndElement();
                        }
                        b22 = true;
                    }
                    else if (Reader.LocalName == "Name" && Reader.NamespaceURI == "" && !b14)
                    {
                        b14      = true;
                        ob.@Name = Reader.ReadElementString();
                    }
                    else if (Reader.LocalName == "BaseVersion" && Reader.NamespaceURI == "" && !b16)
                    {
                        b16             = true;
                        ob.@BaseVersion = Reader.ReadElementString();
                    }
                    else if (Reader.LocalName == "Id" && Reader.NamespaceURI == "" && !b12)
                    {
                        b12         = true;
                        ob.@LocalId = Reader.ReadElementString();
                    }
                    else if (Reader.LocalName == "Url" && Reader.NamespaceURI == "" && !b19)
                    {
                        b19     = true;
                        ob.@Url = Reader.ReadElementString();
                    }
                    else if (Reader.LocalName == "Copyright" && Reader.NamespaceURI == "" && !b18)
                    {
                        b18           = true;
                        ob.@Copyright = Reader.ReadElementString();
                    }
                    else if (Reader.LocalName == "Description" && Reader.NamespaceURI == "" && !b20)
                    {
                        b20             = true;
                        ob.@Description = Reader.ReadElementString();
                    }
                    else if (Reader.LocalName == "Author" && Reader.NamespaceURI == "" && !b17)
                    {
                        b17        = true;
                        ob.@Author = Reader.ReadElementString();
                    }
                    else if (Reader.LocalName == "OptionalDependencies" && Reader.NamespaceURI == "" && !b23)
                    {
                        if (((object)ob.@OptionalDependencies) == null)
                        {
                            throw CreateReadOnlyCollectionException("Mono.Addins.Setup.DependencyCollection");
                        }
                        if (Reader.IsEmptyElement)
                        {
                            Reader.Skip();
                        }
                        else
                        {
                            int n25 = 0;
                            Reader.ReadStartElement();
                            Reader.MoveToContent();

                            while (Reader.NodeType != System.Xml.XmlNodeType.EndElement)
                            {
                                if (Reader.NodeType == System.Xml.XmlNodeType.Element)
                                {
                                    if (Reader.LocalName == "AssemblyDependency" && Reader.NamespaceURI == "")
                                    {
                                        if (((object)ob.@OptionalDependencies) == null)
                                        {
                                            throw CreateReadOnlyCollectionException("Mono.Addins.Setup.DependencyCollection");
                                        }
                                        [email protected](ReadObject_AssemblyDependency(false, true));
                                        n25++;
                                    }
                                    else if (Reader.LocalName == "NativeDependency" && Reader.NamespaceURI == "")
                                    {
                                        if (((object)ob.@OptionalDependencies) == null)
                                        {
                                            throw CreateReadOnlyCollectionException("Mono.Addins.Setup.DependencyCollection");
                                        }
                                        [email protected](ReadObject_NativeReference(false, true));
                                        n25++;
                                    }
                                    else if (Reader.LocalName == "AddinDependency" && Reader.NamespaceURI == "")
                                    {
                                        if (((object)ob.@OptionalDependencies) == null)
                                        {
                                            throw CreateReadOnlyCollectionException("Mono.Addins.Setup.DependencyCollection");
                                        }
                                        [email protected](ReadObject_AddinReference(false, true));
                                        n25++;
                                    }
                                    else
                                    {
                                        UnknownNode(null);
                                    }
                                }
                                else
                                {
                                    UnknownNode(null);
                                }

                                Reader.MoveToContent();
                            }
                            ReadEndElement();
                        }
                        b23 = true;
                    }
                    else if (Reader.LocalName == "Namespace" && Reader.NamespaceURI == "" && !b13)
                    {
                        b13           = true;
                        ob.@Namespace = Reader.ReadElementString();
                    }
                    else if (Reader.LocalName == "Category" && Reader.NamespaceURI == "" && !b21)
                    {
                        b21          = true;
                        ob.@Category = Reader.ReadElementString();
                    }
                    else
                    {
                        UnknownNode(ob);
                    }
                }
                else
                {
                    UnknownNode(ob);
                }

                Reader.MoveToContent();
            }

            ReadEndElement();

            return(ob);
        }
		public Mono.Addins.Setup.AddinInfo ReadObject_AddinInfo (bool isNullable, bool checkType)
		{
			Mono.Addins.Setup.AddinInfo ob = null;
			if (isNullable && ReadNull()) return null;

			if (checkType) 
			{
				System.Xml.XmlQualifiedName t = GetXsiType();
				if (t == null)
				{ }
				else if (t.Name != "AddinInfo" || t.Namespace != "")
					throw CreateUnknownTypeException(t);
			}

			ob = new Mono.Addins.Setup.AddinInfo ();

			Reader.MoveToElement();

			while (Reader.MoveToNextAttribute())
			{
				if (IsXmlnsAttribute (Reader.Name)) {
				}
				else {
					UnknownNode (ob);
				}
			}

			Reader.MoveToElement();
			if (Reader.IsEmptyElement) {
				Reader.Skip ();
				return ob;
			}

			Reader.ReadStartElement();
			Reader.MoveToContent();

			bool b12=false, b13=false, b14=false, b15=false, b16=false, b17=false, b18=false, b19=false, b20=false, b21=false, b22=false, b23=false;

			while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
			{
				if (Reader.NodeType == System.Xml.XmlNodeType.Element) 
				{
					if (Reader.LocalName == "Version" && Reader.NamespaceURI == "" && !b15) {
						b15 = true;
						ob.@Version = Reader.ReadElementString ();
					}
					else if (Reader.LocalName == "Dependencies" && Reader.NamespaceURI == "" && !b22) {
						if (((object)ob.@Dependencies) == null)
							throw CreateReadOnlyCollectionException ("Mono.Addins.Setup.DependencyCollection");
						if (Reader.IsEmptyElement) {
							Reader.Skip();
						} else {
							int n24 = 0;
							Reader.ReadStartElement();
							Reader.MoveToContent();

							while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
							{
								if (Reader.NodeType == System.Xml.XmlNodeType.Element) 
								{
									if (Reader.LocalName == "AssemblyDependency" && Reader.NamespaceURI == "") {
										if (((object)ob.@Dependencies) == null)
											throw CreateReadOnlyCollectionException ("Mono.Addins.Setup.DependencyCollection");
										[email protected] (ReadObject_AssemblyDependency (false, true));
										n24++;
									}
									else if (Reader.LocalName == "NativeDependency" && Reader.NamespaceURI == "") {
										if (((object)ob.@Dependencies) == null)
											throw CreateReadOnlyCollectionException ("Mono.Addins.Setup.DependencyCollection");
										[email protected] (ReadObject_NativeReference (false, true));
										n24++;
									}
									else if (Reader.LocalName == "AddinDependency" && Reader.NamespaceURI == "") {
										if (((object)ob.@Dependencies) == null)
											throw CreateReadOnlyCollectionException ("Mono.Addins.Setup.DependencyCollection");
										[email protected] (ReadObject_AddinReference (false, true));
										n24++;
									}
									else UnknownNode (null);
								}
								else UnknownNode (null);

								Reader.MoveToContent();
							}
							ReadEndElement();
						}
						b22 = true;
					}
					else if (Reader.LocalName == "Name" && Reader.NamespaceURI == "" && !b14) {
						b14 = true;
						ob.@Name = Reader.ReadElementString ();
					}
					else if (Reader.LocalName == "BaseVersion" && Reader.NamespaceURI == "" && !b16) {
						b16 = true;
						ob.@BaseVersion = Reader.ReadElementString ();
					}
					else if (Reader.LocalName == "Id" && Reader.NamespaceURI == "" && !b12) {
						b12 = true;
						ob.@LocalId = Reader.ReadElementString ();
					}
					else if (Reader.LocalName == "Url" && Reader.NamespaceURI == "" && !b19) {
						b19 = true;
						ob.@Url = Reader.ReadElementString ();
					}
					else if (Reader.LocalName == "Copyright" && Reader.NamespaceURI == "" && !b18) {
						b18 = true;
						ob.@Copyright = Reader.ReadElementString ();
					}
					else if (Reader.LocalName == "Description" && Reader.NamespaceURI == "" && !b20) {
						b20 = true;
						ob.@Description = Reader.ReadElementString ();
					}
					else if (Reader.LocalName == "Author" && Reader.NamespaceURI == "" && !b17) {
						b17 = true;
						ob.@Author = Reader.ReadElementString ();
					}
					else if (Reader.LocalName == "OptionalDependencies" && Reader.NamespaceURI == "" && !b23) {
						if (((object)ob.@OptionalDependencies) == null)
							throw CreateReadOnlyCollectionException ("Mono.Addins.Setup.DependencyCollection");
						if (Reader.IsEmptyElement) {
							Reader.Skip();
						} else {
							int n25 = 0;
							Reader.ReadStartElement();
							Reader.MoveToContent();

							while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
							{
								if (Reader.NodeType == System.Xml.XmlNodeType.Element) 
								{
									if (Reader.LocalName == "AssemblyDependency" && Reader.NamespaceURI == "") {
										if (((object)ob.@OptionalDependencies) == null)
											throw CreateReadOnlyCollectionException ("Mono.Addins.Setup.DependencyCollection");
										[email protected] (ReadObject_AssemblyDependency (false, true));
										n25++;
									}
									else if (Reader.LocalName == "NativeDependency" && Reader.NamespaceURI == "") {
										if (((object)ob.@OptionalDependencies) == null)
											throw CreateReadOnlyCollectionException ("Mono.Addins.Setup.DependencyCollection");
										[email protected] (ReadObject_NativeReference (false, true));
										n25++;
									}
									else if (Reader.LocalName == "AddinDependency" && Reader.NamespaceURI == "") {
										if (((object)ob.@OptionalDependencies) == null)
											throw CreateReadOnlyCollectionException ("Mono.Addins.Setup.DependencyCollection");
										[email protected] (ReadObject_AddinReference (false, true));
										n25++;
									}
									else UnknownNode (null);
								}
								else UnknownNode (null);

								Reader.MoveToContent();
							}
							ReadEndElement();
						}
						b23 = true;
					}
					else if (Reader.LocalName == "Namespace" && Reader.NamespaceURI == "" && !b13) {
						b13 = true;
						ob.@Namespace = Reader.ReadElementString ();
					}
					else if (Reader.LocalName == "Category" && Reader.NamespaceURI == "" && !b21) {
						b21 = true;
						ob.@Category = Reader.ReadElementString ();
					}
					else {
						UnknownNode (ob);
					}
				}
				else
					UnknownNode(ob);

				Reader.MoveToContent();
			}

			ReadEndElement();

			return ob;
		}