Class ProjectListCommon
List of projects
Inheritance
Implements
Namespace: BuildSystem.ProjectList.Common
Assembly: BuildSystem.ProjectList.dll
Syntax
public class ProjectListCommon : List<IProject>, IProjectList, IList<IProject>, ICollection<IProject>, IEnumerable<IProject>, IEnumerable
Constructors
ProjectListCommon(ILogger?, IProjectListProps, string)
List of projects
Declaration
public ProjectListCommon(ILogger? logger, IProjectListProps props, string tempFolder)
Parameters
Type | Name | Description |
---|---|---|
ILogger | logger | |
IProjectListProps | props | |
string | tempFolder |
Properties
Analyzer
Fills dependencies between projects
Declaration
public IAnalyzer? Analyzer { get; set; }
Property Value
Type | Description |
---|---|
IAnalyzer |
BuildInfoSaver
Save build information in some storage
Declaration
public IBuildInfoSaver? BuildInfoSaver { get; set; }
Property Value
Type | Description |
---|---|
IBuildInfoSaver |
Compiler
Proceeds stateless tasks, which should help to build projects
Declaration
public ICompiler? Compiler { get; set; }
Property Value
Type | Description |
---|---|
ICompiler |
CopierBuildResults
Object to copy build results of dependency project into parent project
Declaration
public ICopierBuildResults? CopierBuildResults { get; set; }
Property Value
Type | Description |
---|---|
ICopierBuildResults |
Deployer
Object to execute some tasks for deploying packages of projects
Declaration
public IDeployer? Deployer { get; set; }
Property Value
Type | Description |
---|---|
IDeployer |
ManagersFactory
Factory for generating global managing objects. Their setting set not for project but for whole build space
Declaration
public IManagersFactory? ManagersFactory { get; set; }
Property Value
Type | Description |
---|---|
IManagersFactory |
ProjectRestorer
Object to restore projects by downloading their packages from repository
Declaration
public IProjectRestorer? ProjectRestorer { get; set; }
Property Value
Type | Description |
---|---|
IProjectRestorer |
Props
Properties of project list
Declaration
public IProjectListProps Props { get; }
Property Value
Type | Description |
---|---|
IProjectListProps |
SourceHashCalculator
Calculates hash of source files with some specific logic
Declaration
public ISourceHashCalculator? SourceHashCalculator { get; set; }
Property Value
Type | Description |
---|---|
ISourceHashCalculator |
VariantList
List of configuration of build space
Declaration
public VariantList? VariantList { get; set; }
Property Value
Type | Description |
---|---|
VariantList |
Methods
AnalyzeProjects()
Analyze projects and fill some properties of IProject
Declaration
public void AnalyzeProjects()
Clean(string, ProjectFilter?)
Calls Clean(string) to each project
Declaration
public void Clean(string variantName, ProjectFilter? filter = null)
Parameters
Type | Name | Description |
---|---|---|
string | variantName | Environment params |
ProjectFilter | filter | Filtering processed projects |
Compile(string, bool, ProjectFilter?)
Build project
Declaration
public void Compile(string variantName, bool breakOnError = false, ProjectFilter? filter = null)
Parameters
Type | Name | Description |
---|---|---|
string | variantName | Environment params |
bool | breakOnError | Break compilation if an error found |
ProjectFilter | filter | Filtering processed projects |
Deploy(string, bool, ProjectFilter?)
Creates packages and then pushed them
Declaration
public bool Deploy(string variantName, bool onlyCreate = false, ProjectFilter? filter = null)
Parameters
Type | Name | Description |
---|---|---|
string | variantName | Environment params |
bool | onlyCreate | No need in push |
ProjectFilter | filter | Filtering processed projects |
Returns
Type | Description |
---|---|
bool | Flag, that everything is ok |
FirstOrDefaultByJsonPath(string)
Search project in self list - path to JSON file with settings should be the same as in input param
Declaration
public IProject? FirstOrDefaultByJsonPath(string jsonPath)
Parameters
Type | Name | Description |
---|---|---|
string | jsonPath | Path to JSON file with settings |
Returns
Type | Description |
---|---|
IProject |
FirstOrDefaultByProjectPath(string)
Search project in self list - path to main project file should be the same as in input param
Declaration
public IProject? FirstOrDefaultByProjectPath(string projectPath)
Parameters
Type | Name | Description |
---|---|---|
string | projectPath | Path to main project file |
Returns
Type | Description |
---|---|
IProject |
GenDoc(string, ProjectFilter?)
Generate HTML documentation per each project
Declaration
public void GenDoc(string variantName, ProjectFilter? filter = null)
Parameters
Type | Name | Description |
---|---|---|
string | variantName | Environment params |
ProjectFilter | filter | Filtering processed projects |
GenProjectDependsGraph(string, ProjectFilter?)
Generates a dependency graph of build system projects in .dot format
Declaration
public void GenProjectDependsGraph(string fileName, ProjectFilter? filter = null)
Parameters
Type | Name | Description |
---|---|---|
string | fileName | Path to resulting .dot file |
ProjectFilter | filter | Project filtering |
GetBuildResultPaths(string, ProjectFilter?)
Calls GetBuildResultPath(string, string) to each project
Declaration
public List<string> GetBuildResultPaths(string variantName, ProjectFilter? filter = null)
Parameters
Type | Name | Description |
---|---|---|
string | variantName | Environment params |
ProjectFilter | filter | Filtering processed projects |
Returns
Type | Description |
---|---|
System.Collections.Generic.List<><string> | Flag that everything is ok |
Restore(string, ProjectFilter?)
Restore current project list dependencies
Declaration
public void Restore(string variantName, ProjectFilter? filter = null)
Parameters
Type | Name | Description |
---|---|---|
string | variantName | Environment params |
ProjectFilter | filter | Filter for projects, which dependencies should be restored. If null, all project dependencies will be restored. |
RunTests(string, ProjectFilter?)
Run unit testing for each project
Declaration
public bool RunTests(string variantName, ProjectFilter? filter = null)
Parameters
Type | Name | Description |
---|---|---|
string | variantName | Environment params |
ProjectFilter | filter | Filtering processed projects |
Returns
Type | Description |
---|---|
bool | False, if at least one test failed |
Sign(string, ProjectFilter?)
Calls Sign(string) to each project
Declaration
public bool Sign(string variantName, ProjectFilter? filter = null)
Parameters
Type | Name | Description |
---|---|---|
string | variantName | Environment params |
ProjectFilter | filter | Filtering processed projects |
Returns
Type | Description |
---|---|
bool | Flag, that everything is ok |