/// <summary> /// Initializes a new instance of the <see cref="Project"/> class. /// </summary> /// <param name="guid">The unique identifier.</param> /// <param name="typeGuid">The type unique identifier.</param> /// <param name="name">The name.</param> /// <param name="fullPath">The relative path.</param> /// <param name="parentGuid">The parent unique identifier.</param> /// <param name="projectSections">The project sections.</param> /// <param name="versionControlLines">The version control lines.</param> /// <param name="projectConfigurationPlatformsLines">The project configuration platforms lines.</param> /// <exception cref="System.ArgumentNullException"> /// solution /// or /// guid /// or /// typeGuid /// or /// name /// </exception> public Project( Guid guid, Guid typeGuid, [NotNull] string name, string fullPath, Guid parentGuid, IEnumerable <Section> projectSections, IEnumerable <PropertyItem> versionControlLines, IEnumerable <PropertyItem> projectConfigurationPlatformsLines) { if (guid == null) { throw new ArgumentNullException(nameof(guid)); } if (typeGuid == null) { throw new ArgumentNullException(nameof(typeGuid)); } if (name == null) { throw new ArgumentNullException(nameof(name)); } this.guid = guid; TypeGuid = typeGuid; Name = name; FullPath = fullPath; ParentGuid = parentGuid; sections = new SectionCollection(projectSections); versionControlProperties = new PropertyItemCollection(versionControlLines); platformProperties = new PropertyItemCollection(projectConfigurationPlatformsLines); }
/// <summary> /// Initializes a new instance of the <see cref="Solution" /> class. /// </summary> /// <param name="fullpath">The fullpath.</param> /// <param name="headers">The headers.</param> /// <param name="projects">The projects.</param> /// <param name="globalSections">The global sections.</param> /// <param name="properties">The properties.</param> public Solution(string fullpath, [NotNull] IEnumerable <string> headers, IEnumerable <Project> projects, IEnumerable <Section> globalSections, IEnumerable <PropertyItem> properties) { FullPath = fullpath; this.headers = new List <string>(headers); this.projects = new ProjectCollection(this, projects); this.globalSections = new SectionCollection(globalSections); Properties = new PropertyItemCollection(properties); }
/// <summary> /// Initializes a new instance of the <see cref="Solution"/> class. /// </summary> public Solution() { FullPath = null; headers = new List <string>(); projects = new ProjectCollection(this); globalSections = new SectionCollection(); Properties = new PropertyItemCollection(); }
/// <summary> /// Initializes a new instance of the <see cref="Section"/> class. /// </summary> /// <param name="name">The name.</param> /// <param name="sectionType">Type of the section.</param> /// <param name="step">The step.</param> /// <param name="properties">The property lines.</param> public Section([NotNull] string name, string sectionType, string step, IEnumerable <PropertyItem> properties) { if (name == null) { throw new ArgumentNullException(nameof(name)); } this.name = name; SectionType = sectionType; Step = step; this.properties = new PropertyItemCollection(properties); }