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

SaveVsaItems() private method

private SaveVsaItems ( XmlDocument project, XmlElement parent ) : void
project System.Xml.XmlDocument
parent System.Xml.XmlElement
return void
      private void SaveVsaItems(XmlDocument project, XmlElement parent){
        XmlElement vsaItems = project.CreateElement("VsaItems");
        foreach (IVsaItem item in this.vsaItems){
          XmlElement vsaItem = project.CreateElement("IVsaItem");
          this.CreateAttribute(project, vsaItem, "Name", item.Name);
          this.CreateAttribute(project, vsaItem, "ItemType", item.ItemType.ToString(CultureInfo.InvariantCulture));
          XmlElement vsaItemOptions = project.CreateElement("Options");
          if (item is VsaHostObject){
            // VsaItemType.AppGlobal
            this.CreateAttribute(project, vsaItem, "TypeString", ((VsaHostObject)item).TypeString);
            this.CreateAttribute(project, vsaItem, "ExposeMembers", ((VsaHostObject)item).ExposeMembers.ToString(CultureInfo.InvariantCulture));
          }else if (item is VsaReference){
            // VsaItemType.Reference
            CreateAttribute(project, vsaItem, "AssemblyName", ((VsaReference)item).AssemblyName);
          }else if (item is VsaStaticCode){
            // VsaItemType.Code
            string escapedText = ((VsaStaticCode)item).SourceText.Replace(">", " >");
            XmlCDataSection source = project.CreateCDataSection(escapedText);
            vsaItem.AppendChild(source);
            string codebase = (string)item.GetOption("codebase");
            if (codebase != null)
              this.AddChildAndValue(project, vsaItemOptions, "codebase", codebase);
          }else
            throw new VsaException(VsaError.SaveElementFailed);
          ((VsaItem)item).IsDirty = false;
          vsaItem.AppendChild(vsaItemOptions);
          vsaItems.AppendChild(vsaItem);
        }
        parent.AppendChild(vsaItems);
      }