Microsoft.JScript.Vsa.VsaEngine.LoadVsaItems C# (CSharp) Method

LoadVsaItems() private method

private LoadVsaItems ( XmlElement parent ) : void
parent System.Xml.XmlElement
return void
      private void LoadVsaItems(XmlElement parent){
        XmlNodeList vsaItems = parent["VsaItems"].ChildNodes;
        string itemType;
        IVsaItem item;
        string reference = VsaItemType.Reference.ToString();
        string appGlobal = VsaItemType.AppGlobal.ToString();
        string code = VsaItemType.Code.ToString();
        foreach (XmlElement vsaItem in vsaItems){
          string name = vsaItem.GetAttribute("Name");
          itemType = vsaItem.GetAttribute("ItemType");
          if (String.Compare(itemType, reference, StringComparison.OrdinalIgnoreCase) == 0){
            item = this.vsaItems.CreateItem(name, VsaItemType.Reference, VsaItemFlag.None);
            ((IVsaReferenceItem)item).AssemblyName = vsaItem.GetAttribute("AssemblyName");
          }else if (String.Compare(itemType, appGlobal, StringComparison.OrdinalIgnoreCase) == 0){
            item = this.vsaItems.CreateItem(name, VsaItemType.AppGlobal, VsaItemFlag.None);
            ((IVsaGlobalItem)item).ExposeMembers = Boolean.Parse(vsaItem.GetAttribute("ExposeMembers"));
            ((IVsaGlobalItem)item).TypeString = vsaItem.GetAttribute("TypeString");
          }else if (String.Compare(itemType, code, StringComparison.OrdinalIgnoreCase) == 0){
            item = this.vsaItems.CreateItem(name, VsaItemType.Code, VsaItemFlag.None);
            XmlCDataSection sourceText = (XmlCDataSection)vsaItem.FirstChild;
            string unescapedText = sourceText.Value.Replace(" >", ">");
            ((IVsaCodeItem)item).SourceText = unescapedText;
          }else
            throw new VsaException(VsaError.LoadElementFailed);
          XmlNodeList vsaItemOptions = vsaItem["Options"].ChildNodes;
          foreach (XmlElement option in vsaItemOptions){
            item.SetOption(option.Name, option.GetAttribute("Value"));
          }
          ((VsaItem)item).IsDirty = false;
        }
      }