示例#1
0
        /// <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);
        }
示例#2
0
文件: Solution.cs 项目: vvvv/stride
 /// <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);
 }
示例#3
0
文件: Solution.cs 项目: vvvv/stride
 /// <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();
 }
示例#4
0
 /// <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);
 }