Class ProjectCacheCommon
Managing cache of the project
Inheritance
Namespace: BuildSystem.ProjectCache.Common
Assembly: BuildSystem.Core.dll
Syntax
public class ProjectCacheCommon : Object, IProjectCache, IManager
Constructors
ProjectCacheCommon(ILogger?, ProjectCacheCommonProps, string)
Managing cache of the project
Declaration
public ProjectCacheCommon(ILogger? logger, ProjectCacheCommonProps props, string tempDir)
Parameters
Type | Name | Description |
---|---|---|
ILogger | logger | Logging object |
ProjectCacheCommonProps | props | Properties of creating object |
string | tempDir | Path to folder where temporary folders can be created |
Fields
ClassIdent
Unique ident of class
Declaration
public const string ClassIdent = "ProjectCache.Common"
Field Value
Type | Description |
---|---|
string |
KeyBuildVersion
Key in json which stores information about version provided to builder when project was built
Declaration
public const string KeyBuildVersion = "build_version"
Field Value
Type | Description |
---|---|
string |
KeyDependencies
Key in json which stores information about project dependencies
Declaration
public const string KeyDependencies = "dependencies"
Field Value
Type | Description |
---|---|
string |
KeyDepHash
Key in json which stores information about project dependency sources hash
Declaration
public const string KeyDepHash = "hash"
Field Value
Type | Description |
---|---|
string |
KeyDepVariant
Key in json which stores information about project dependency variant it was compiled
Declaration
public const string KeyDepVariant = "variant"
Field Value
Type | Description |
---|---|
string |
KeyPackageDeps
Key in json which stores information about package dependencies
Declaration
public const string KeyPackageDeps = "dependencies"
Field Value
Type | Description |
---|---|
string |
KeyPackageGetNextVersion
How version of project was calculated, when it was build
Declaration
public const string KeyPackageGetNextVersion = "get_next_version"
Field Value
Type | Description |
---|---|
string |
KeyPackageHash
Key in json which stores information about package hash
Declaration
public const string KeyPackageHash = "hash"
Field Value
Type | Description |
---|---|
string |
KeyPackageVersion
Key in json which stores information about package version
Declaration
public const string KeyPackageVersion = "version"
Field Value
Type | Description |
---|---|
string |
KeySourcesHash
Key in json which stores information about project sources hash
Declaration
public const string KeySourcesHash = "sources_hash"
Field Value
Type | Description |
---|---|
string |
KeyTestSourcesHash
Key in json which stores information about project test sources hash
Declaration
public const string KeyTestSourcesHash = "test_sources_hash"
Field Value
Type | Description |
---|---|
string |
KeyVariant
Key in json which stores information about configuration variant when project was built
Declaration
public const string KeyVariant = "variant"
Field Value
Type | Description |
---|---|
string |
Properties
Logger
Declaration
public ILogger? Logger { get; }
Property Value
Type | Description |
---|---|
ILogger |
Props
Declaration
public IManagerProp Props { get; }
Property Value
Type | Description |
---|---|
IManagerProp |
Methods
Clean(string, string, List<IPackageProps>)
Clean cache info
Declaration
public void Clean(string projectIdent, string variant, List<IPackageProps> packagePropsList)
Parameters
Type | Name | Description |
---|---|---|
string | projectIdent | |
string | variant | |
System.Collections.Generic.List<><IPackageProps> | packagePropsList |
Read(string, string, List<IPackageProps>)
Read files and fill info object
Declaration
public CacheProjectInfo Read(string projectIdent, string variant, List<IPackageProps> packagePropsList)
Parameters
Type | Name | Description |
---|---|---|
string | projectIdent | Unique ident of project |
string | variant | Unique name of group of settings |
System.Collections.Generic.List<><IPackageProps> | packagePropsList | List of packages, which cache should be read |
Returns
Type | Description |
---|---|
CacheProjectInfo |
Save(string, string, CacheProjectInfo?, List<IPackageProps>)
Save into storage cache projectInfo
Declaration
public void Save(string projectIdent, string variant, CacheProjectInfo? projectInfo, List<IPackageProps> packagePropsList)
Parameters
Type | Name | Description |
---|---|---|
string | projectIdent | Unique identifier of project among all another projects |
string | variant | Unique set of settings |
CacheProjectInfo | projectInfo | List of updating properties |
System.Collections.Generic.List<><IPackageProps> | packagePropsList | Packages, which cache stored in CacheInfo will be modified |