Exemplo n.º 1
0
 private ClassMetadata Read35_ClassMetadata(bool isNullable, bool checkType)
 {
     XmlQualifiedName type = checkType ? base.GetXsiType() : null;
     bool flag = false;
     if (isNullable)
     {
         flag = base.ReadNull();
     }
     if ((checkType && (type != null)) && ((type.Name != this.id3_ClassMetadata) || (type.Namespace != this.id2_Item)))
     {
         throw base.CreateUnknownTypeException(type);
     }
     if (flag)
     {
         return null;
     }
     ClassMetadata o = new ClassMetadata();
     bool[] flagArray = new bool[8];
     while (base.Reader.MoveToNextAttribute())
     {
         if ((!flagArray[5] && (base.Reader.LocalName == this.id109_CmdletAdapter)) && (base.Reader.NamespaceURI == this.id4_Item))
         {
             o.CmdletAdapter = base.Reader.Value;
             flagArray[5] = true;
         }
         else
         {
             if ((!flagArray[6] && (base.Reader.LocalName == this.id110_ClassName)) && (base.Reader.NamespaceURI == this.id4_Item))
             {
                 o.ClassName = base.Reader.Value;
                 flagArray[6] = true;
                 continue;
             }
             if ((!flagArray[7] && (base.Reader.LocalName == this.id111_ClassVersion)) && (base.Reader.NamespaceURI == this.id4_Item))
             {
                 o.ClassVersion = base.Reader.Value;
                 flagArray[7] = true;
                 continue;
             }
             if (!base.IsXmlnsAttribute(base.Reader.Name))
             {
                 base.UnknownNode(o, ":CmdletAdapter, :ClassName, :ClassVersion");
             }
         }
     }
     base.Reader.MoveToElement();
     if (base.Reader.IsEmptyElement)
     {
         base.Reader.Skip();
         return o;
     }
     base.Reader.ReadStartElement();
     base.Reader.MoveToContent();
     int whileIterations = 0;
     int readerCount = base.ReaderCount;
     while ((base.Reader.NodeType != XmlNodeType.EndElement) && (base.Reader.NodeType != XmlNodeType.None))
     {
         if (base.Reader.NodeType == XmlNodeType.Element)
         {
             if ((!flagArray[0] && (base.Reader.LocalName == this.id112_Version)) && (base.Reader.NamespaceURI == this.id2_Item))
             {
                 o.Version = base.Reader.ReadElementString();
                 flagArray[0] = true;
             }
             else if ((!flagArray[1] && (base.Reader.LocalName == this.id113_DefaultNoun)) && (base.Reader.NamespaceURI == this.id2_Item))
             {
                 o.DefaultNoun = base.Reader.ReadElementString();
                 flagArray[1] = true;
             }
             else if ((!flagArray[2] && (base.Reader.LocalName == this.id114_InstanceCmdlets)) && (base.Reader.NamespaceURI == this.id2_Item))
             {
                 o.InstanceCmdlets = this.Read31_ClassMetadataInstanceCmdlets(false, true);
                 flagArray[2] = true;
             }
             else if ((base.Reader.LocalName == this.id115_StaticCmdlets) && (base.Reader.NamespaceURI == this.id2_Item))
             {
                 if (!base.ReadNull())
                 {
                     StaticCmdletMetadata[] a = null;
                     int index = 0;
                     if (base.Reader.IsEmptyElement)
                     {
                         base.Reader.Skip();
                     }
                     else
                     {
                         base.Reader.ReadStartElement();
                         base.Reader.MoveToContent();
                         int num4 = 0;
                         int num5 = base.ReaderCount;
                         while ((base.Reader.NodeType != XmlNodeType.EndElement) && (base.Reader.NodeType != XmlNodeType.None))
                         {
                             if (base.Reader.NodeType == XmlNodeType.Element)
                             {
                                 if ((base.Reader.LocalName == this.id76_Cmdlet) && (base.Reader.NamespaceURI == this.id2_Item))
                                 {
                                     a = (StaticCmdletMetadata[]) base.EnsureArrayIndex(a, index, typeof(StaticCmdletMetadata));
                                     a[index++] = this.Read33_StaticCmdletMetadata(false, true);
                                 }
                                 else
                                 {
                                     base.UnknownNode(null, "http://schemas.microsoft.com/cmdlets-over-objects/2009/11:Cmdlet");
                                 }
                             }
                             else
                             {
                                 base.UnknownNode(null, "http://schemas.microsoft.com/cmdlets-over-objects/2009/11:Cmdlet");
                             }
                             base.Reader.MoveToContent();
                             base.CheckReaderCount(ref num4, ref num5);
                         }
                         base.ReadEndElement();
                     }
                     o.StaticCmdlets = (StaticCmdletMetadata[]) base.ShrinkArray(a, index, typeof(StaticCmdletMetadata), false);
                 }
             }
             else if ((base.Reader.LocalName == this.id116_CmdletAdapterPrivateData) && (base.Reader.NamespaceURI == this.id2_Item))
             {
                 if (!base.ReadNull())
                 {
                     ClassMetadataData[] dataArray = null;
                     int num6 = 0;
                     if (base.Reader.IsEmptyElement)
                     {
                         base.Reader.Skip();
                     }
                     else
                     {
                         base.Reader.ReadStartElement();
                         base.Reader.MoveToContent();
                         int num7 = 0;
                         int num8 = base.ReaderCount;
                         while ((base.Reader.NodeType != XmlNodeType.EndElement) && (base.Reader.NodeType != XmlNodeType.None))
                         {
                             if (base.Reader.NodeType == XmlNodeType.Element)
                             {
                                 if ((base.Reader.LocalName == this.id78_Data) && (base.Reader.NamespaceURI == this.id2_Item))
                                 {
                                     dataArray = (ClassMetadataData[]) base.EnsureArrayIndex(dataArray, num6, typeof(ClassMetadataData));
                                     dataArray[num6++] = this.Read34_ClassMetadataData(false, true);
                                 }
                                 else
                                 {
                                     base.UnknownNode(null, "http://schemas.microsoft.com/cmdlets-over-objects/2009/11:Data");
                                 }
                             }
                             else
                             {
                                 base.UnknownNode(null, "http://schemas.microsoft.com/cmdlets-over-objects/2009/11:Data");
                             }
                             base.Reader.MoveToContent();
                             base.CheckReaderCount(ref num7, ref num8);
                         }
                         base.ReadEndElement();
                     }
                     o.CmdletAdapterPrivateData = (ClassMetadataData[]) base.ShrinkArray(dataArray, num6, typeof(ClassMetadataData), false);
                 }
             }
             else
             {
                 base.UnknownNode(o, "http://schemas.microsoft.com/cmdlets-over-objects/2009/11:Version, http://schemas.microsoft.com/cmdlets-over-objects/2009/11:DefaultNoun, http://schemas.microsoft.com/cmdlets-over-objects/2009/11:InstanceCmdlets, http://schemas.microsoft.com/cmdlets-over-objects/2009/11:StaticCmdlets, http://schemas.microsoft.com/cmdlets-over-objects/2009/11:CmdletAdapterPrivateData");
             }
         }
         else
         {
             base.UnknownNode(o, "http://schemas.microsoft.com/cmdlets-over-objects/2009/11:Version, http://schemas.microsoft.com/cmdlets-over-objects/2009/11:DefaultNoun, http://schemas.microsoft.com/cmdlets-over-objects/2009/11:InstanceCmdlets, http://schemas.microsoft.com/cmdlets-over-objects/2009/11:StaticCmdlets, http://schemas.microsoft.com/cmdlets-over-objects/2009/11:CmdletAdapterPrivateData");
         }
         base.Reader.MoveToContent();
         base.CheckReaderCount(ref whileIterations, ref readerCount);
     }
     base.ReadEndElement();
     return o;
 }
Exemplo n.º 2
0
 private void Write35_ClassMetadata(string n, string ns, ClassMetadata o, bool isNullable, bool needType)
 {
     if (o == null)
     {
         if (isNullable)
         {
             base.WriteNullTagLiteral(n, ns);
         }
     }
     else
     {
         if (!needType && !(o.GetType() == typeof(ClassMetadata)))
         {
             throw base.CreateUnknownTypeException(o);
         }
         base.WriteStartElement(n, ns, o, false, null);
         if (needType)
         {
             base.WriteXsiType("ClassMetadata", "http://schemas.microsoft.com/cmdlets-over-objects/2009/11");
         }
         base.WriteAttribute("CmdletAdapter", "", o.CmdletAdapter);
         base.WriteAttribute("ClassName", "", o.ClassName);
         base.WriteAttribute("ClassVersion", "", o.ClassVersion);
         base.WriteElementString("Version", "http://schemas.microsoft.com/cmdlets-over-objects/2009/11", o.Version);
         base.WriteElementString("DefaultNoun", "http://schemas.microsoft.com/cmdlets-over-objects/2009/11", o.DefaultNoun);
         this.Write31_ClassMetadataInstanceCmdlets("InstanceCmdlets", "http://schemas.microsoft.com/cmdlets-over-objects/2009/11", o.InstanceCmdlets, false, false);
         StaticCmdletMetadata[] staticCmdlets = o.StaticCmdlets;
         if (staticCmdlets != null)
         {
             base.WriteStartElement("StaticCmdlets", "http://schemas.microsoft.com/cmdlets-over-objects/2009/11", null, false);
             for (int i = 0; i < staticCmdlets.Length; i++)
             {
                 this.Write33_StaticCmdletMetadata("Cmdlet", "http://schemas.microsoft.com/cmdlets-over-objects/2009/11", staticCmdlets[i], false, false);
             }
             base.WriteEndElement();
         }
         ClassMetadataData[] cmdletAdapterPrivateData = o.CmdletAdapterPrivateData;
         if (cmdletAdapterPrivateData != null)
         {
             base.WriteStartElement("CmdletAdapterPrivateData", "http://schemas.microsoft.com/cmdlets-over-objects/2009/11", null, false);
             for (int j = 0; j < cmdletAdapterPrivateData.Length; j++)
             {
                 this.Write34_ClassMetadataData("Data", "http://schemas.microsoft.com/cmdlets-over-objects/2009/11", cmdletAdapterPrivateData[j], false, false);
             }
             base.WriteEndElement();
         }
         base.WriteEndElement(o);
     }
 }