Zum Hauptinhalt springen

CkModelDependencyDto

Namespace: Meshmakers.Octo.ConstructionKit.Contracts.DataTransferObjects

A range-retaining dependency of a compiled model (CK v2, AB#5664): the declared range, preserved verbatim, and the floor, the lowest acceptable version. An installed dependency satisfies it when its version is inside CkModelDependencyDto.Range and at or above CkModelDependencyDto.Floor.

public class CkModelDependencyDto

Inheritance Object → CkModelDependencyDto

Properties​

Range​

The declared dependency range, e.g. System-[2.4,3.0).

public CkModelIdVersionRange Range { get; set; }

Property Value​

CkModelIdVersionRange

Floor​

The floor as version string, e.g. 2.4.0. Taken from the declared range lower bound, not from the highest catalog version the model happened to be compiled against.

public string Floor { get; set; }

Property Value​

String

UsedSurface​

CK v2 (AB#4472): the elements and members of this dependency the model uses, as sorted, de-duplicated, major-qualified, version-less ids — element level for references (System@2/Entity-1, a base type, an implemented interface, a reused attribute definition, a record or enum value type, an association role or target) and member level for attribute paths into an inherited dependency type (System@2/Entity-1.Name). null when not computed (models compiled before AB#4472).

public List<string> UsedSurface { get; set; }

Property Value​

List<String>

UsedSurfaceHash​

CK v2 (AB#4472): sha256:<hex> over CkModelDependencyDto.UsedSurface (one id per line, UTF-8). Lets a consumer compare two surfaces without the list; the list stays authoritative.

public string UsedSurfaceHash { get; set; }

Property Value​

String

FloorVersion​

CkModelDependencyDto.Floor as CkVersion.

public CkVersion FloorVersion { get; }

Property Value​

CkVersion

Constructors​

CkModelDependencyDto()​

public CkModelDependencyDto()

Methods​

GetEffectiveRange()​

The range a resolver must satisfy: CkModelDependencyDto.Range with its lower bound raised to CkModelDependencyDto.Floor (they are equal unless the floor was raised above the declared lower bound).

public CkModelIdVersionRange GetEffectiveRange()

Returns​

CkModelIdVersionRange

IsSatisfiedBy(CkModelId)​

True when installed satisfies range and floor.

public bool IsSatisfiedBy(CkModelId installed)

Parameters​

installed CkModelId

Returns​

Boolean

ToString()​

public string ToString()

Returns​

String