Class ProjectPropReaderJson
Reader of properties of project in buildspace
Inheritance
Implements
Namespace: BuildSystem.Project.PropReader.Json
Assembly: BuildSystem.Factories.dll
Syntax
public class ProjectPropReaderJson : Object, IProjectPropReader
Constructors
ProjectPropReaderJson(ILogger?, ReaderJson)
Properties project which are read from .json file
Declaration
public ProjectPropReaderJson(ILogger? logger, ReaderJson reader)
Parameters
Type | Name | Description |
---|---|---|
ILogger | logger | Logging object |
ReaderJson | reader | Reader of global settings file |
Fields
NodeBuildParams
Node in JsonObject with value for BuildParams
Declaration
public const string NodeBuildParams = "build_params"
Field Value
Type | Description |
---|---|
string |
NodeBuildResultDefaultPath
Node in JsonObject with value for BuildResultDefaultPath
Declaration
public const string NodeBuildResultDefaultPath = "build_result_default_path"
Field Value
Type | Description |
---|---|
string |
NodeContent
Node in JsonObject with paths to content files
Declaration
public const string NodeContent = "content"
Field Value
Type | Description |
---|---|
string |
NodeMainFilePath
Node in JsonObject with value for MainFilePath
Declaration
public const string NodeMainFilePath = "project_path"
Field Value
Type | Description |
---|---|
string |
NodePlatforms
Node in JsonObject with value for BuildPlatforms
Declaration
public const string NodePlatforms = "platforms"
Field Value
Type | Description |
---|---|
string |
NodeScope
Node in JsonObject with value for Scope
Declaration
public const string NodeScope = "scope"
Field Value
Type | Description |
---|---|
string |
NodeSources
Node in JsonObject with value for Sources
Declaration
public const string NodeSources = "sources"
Field Value
Type | Description |
---|---|
string |
NodeTestReportPath
Node in JsonObject with path to folder with test results
Declaration
public const string NodeTestReportPath = "test_report_path"
Field Value
Type | Description |
---|---|
string |
NodeTests
Node in JsonObject with value for Tests
Declaration
public const string NodeTests = "tests"
Field Value
Type | Description |
---|---|
string |
NodeType
Node in JsonObject with value for Type
Declaration
public const string NodeType = "type"
Field Value
Type | Description |
---|---|
string |
Properties
BuildParams
List of params provided to Build command
Declaration
public Dictionary<string, string> BuildParams { get; set; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.Dictionary<,><string, string> |
BuildPlatforms
List of platforms supported by project - it can only be build in one of them
Declaration
public HashSet<string> BuildPlatforms { get; set; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.HashSet<><string> |
BuildResultDefaultPath
Default path, where *.stbuildresult.json will be created, if this path is not specified in project
Declaration
public string? BuildResultDefaultPath { get; set; }
Property Value
Type | Description |
---|---|
string |
Constants
String constants to replace when reading values of properties. For a example $project:title$ = "test.project"
Declaration
public Dictionary<string, string> Constants { get; set; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.Dictionary<,><string, string> |
Content
Paths to folders and files, which included in content of project. Content of project:
- Wll be copied as build results into folders of parent projects
Declaration
public List<string> Content { get; set; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.List<><string> |
Dependencies
Duplicate for project dependency in packages. Will help in case if no packages
Declaration
public List<ProjectDependency> Dependencies { get; set; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.List<><ProjectDependency> |
JsonProjectDependencies
Properties how to read project dependencies from the local project file
Declaration
public JsonProjectDependencies? JsonProjectDependencies { get; set; }
Property Value
Type | Description |
---|---|
JsonProjectDependencies |
MainFilePath
Path to main project file (dproj, csproj, etc)
Declaration
public string? MainFilePath { get; set; }
Property Value
Type | Description |
---|---|
string |
ManagersFactory
Objects which contain properties of manager objects
Declaration
public IManagersFactory? ManagersFactory { get; set; }
Property Value
Type | Description |
---|---|
IManagersFactory |
NativeDependencies
Properties how to read dependencies from main project file
Declaration
public NativeDependencies? NativeDependencies { get; set; }
Property Value
Type | Description |
---|---|
NativeDependencies |
ReaderJson
Reader of storage. May contain some rules
Declaration
public ReaderJson ReaderJson { get; }
Property Value
Type | Description |
---|---|
ReaderJson |
Scope
Scope of the project to give the opportunity to filter / group projects
Declaration
public string Scope { get; set; }
Property Value
Type | Description |
---|---|
string |
SourcePath
Path to storage with properties of project
Declaration
public string? SourcePath { get; set; }
Property Value
Type | Description |
---|---|
string |
Sources
Masks to source files of project
Declaration
public List<string> Sources { get; set; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.List<><string> |
TestReportPath
Path to folder with results of testing
Declaration
public string? TestReportPath { get; set; }
Property Value
Type | Description |
---|---|
string |
Tests
Commands for testing project
Declaration
public List<string> Tests { get; set; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.List<><string> |
Type
Type of project
Declaration
public string? Type { get; set; }
Property Value
Type | Description |
---|---|
string |
Methods
Update(string, IManagersFactory)
Update self properties project which are read from .json file
Declaration
public void Update(string filePath, IManagersFactory managerObjects)
Parameters
Type | Name | Description |
---|---|---|
string | filePath | Path to a file with local properties for project |
IManagersFactory | managerObjects | List of manager objects from build space |