コード例 #1
0
        /// <summary>
        /// Creates the name generator
        /// </summary>
        /// <param name="fallbackGenerator">Fallback name generator to be used when the set of projects is not a special case
        /// handled by this name generator.</param>
        /// <param name="analyzer">Solution analyzer to be used to find special cases.</param>
        public ReadableSlnNameGenerator(ISlnNameGenerator fallbackGenerator, ISuiteContentsAnalyzer analyzer)
        {
            Contract.Requires(fallbackGenerator != null);
            Contract.Requires(analyzer != null);

            this.fallbackGenerator = fallbackGenerator;
            this.analyzer          = analyzer;
        }
コード例 #2
0
        /// <summary>
        /// Creates the name generator
        /// </summary>
        /// <param name="fallbackGenerator">Fallback name generator to be used when the set of projects is not a special case
        /// handled by this name generator.</param>
        /// <param name="analyzer">Solution analyzer to be used to find special cases.</param>
        public ReadableSlnNameGenerator(ISlnNameGenerator fallbackGenerator, ISuiteContentsAnalyzer analyzer)
        {
            Contract.Requires(fallbackGenerator != null);
            Contract.Requires(analyzer != null);

            this.fallbackGenerator = fallbackGenerator;
            this.analyzer = analyzer;
        }
コード例 #3
0
        /// <summary>
        /// Creates the builder
        /// </summary>
        /// <param name="projectGuidManagement">The project-guid mapper to use</param>
        /// <param name="projectPlatformManagement">Interface for getting default project configuration names</param>
        /// <param name="supportedSlnProjects">Supported project types</param>
        /// <param name="projects">The projects to be included to the solution</param>
        /// <param name="suiteRoot">Suite's root directory </param>
        /// <param name="targetDir">The target directory where the sln file should be put</param>
        /// <param name="slnNameGenerator">Name generator implementation for the sln file </param>
        /// <param name="inSolutionReferenceBuilderFactory">Interface to create new in-solution reference builder instances</param>
        /// <param name="solutionItemProviders">List of registered solution item providers</param>
        public SlnBuilder(IProjectGuidManagement projectGuidManagement, IProjectPlatformManagement projectPlatformManagement, IEnumerable <ISlnProject> supportedSlnProjects, IEnumerable <Project> projects, [SuiteRoot] IFileSystemDirectory suiteRoot, [TargetRoot] IFileSystemDirectory targetDir, ISlnNameGenerator slnNameGenerator, IInSolutionReferenceBuilderFactory inSolutionReferenceBuilderFactory, IEnumerable <ISolutionItemProvider> solutionItemProviders)
        {
            Contract.Requires(projectGuidManagement != null);
            Contract.Requires(projectPlatformManagement != null);
            Contract.Requires(supportedSlnProjects != null);
            Contract.Requires(projects != null);
            Contract.Requires(targetDir != null);
            Contract.Requires(suiteRoot != null);
            Contract.Requires(slnNameGenerator != null);
            Contract.Requires(inSolutionReferenceBuilderFactory != null);
            Contract.Requires(solutionItemProviders != null);

            this.projectGuidManagement = projectGuidManagement;
            this.supportedSlnProjects  = supportedSlnProjects;
            this.suiteRoot             = suiteRoot;
            this.projects         = projects.ToList();
            this.targetDir        = targetDir;
            this.slnNameGenerator = slnNameGenerator;
            this.inSolutionReferenceBuilderFactory = inSolutionReferenceBuilderFactory;
            this.solutionItemProviders             = solutionItemProviders;
            this.projectPlatformManagement         = projectPlatformManagement;
        }