CkTypeAttributeGraph
Namespace: Meshmakers.Octo.ConstructionKit.Contracts.DependencyGraph
Represents a construction kit attribute of a type, record or association role in the dependency graph
public class CkTypeAttributeGraph
Inheritance Object → CkTypeAttributeGraph
Properties
CkAttributeId
Gets or sets the CK attribute id.
public CkId<CkAttributeId> CkAttributeId { get; }
Property Value
AttributeName
Gets or sets the name of the attribute.
public string AttributeName { get; }
Property Value
AutoCompleteValues
Gets or sets a list of values that are used for auto completion.
public IReadOnlyCollection<object> AutoCompleteValues { get; }
Property Value
AutoIncrementReference
If auto completion is enabled, this property defines the attribute that is used as a reference for the auto completion values.
public string AutoIncrementReference { get; }
Property Value
ValueType
Value type of the attribute
public AttributeValueTypesDto ValueType { get; }
Property Value
ValueCkRecordId
Defines the record of the attribute if the value type is a model.
public CkId<CkRecordId> ValueCkRecordId { get; }
Property Value
ValueCkEnumId
Defines the record of the attribute if the value type is a model.
public CkId<CkEnumId> ValueCkEnumId { get; }
Property Value
DefaultValues
Default value of the attribute
public ICollection<object> DefaultValues { get; }
Property Value
Ownership
EFFECTIVE ownership of this attribute assignment (AB#5187): the assignment's
CkTypeAttributeDto.Ownership override when declared, otherwise the
attribute definition's CkAttributeGraph.Ownership. This is the value both
consumers read — upsert preservation and ExportRt exclusion — each through its
own predicate.
public AttributeOwnershipDto Ownership { get; set; }
Property Value
Remarks:
A AttributeValueTypesDto.Secret attribute is always AttributeOwnershipDto.Secret (AB#5528): the setter coerces any other value, so neither an unset ownership nor a stale cache entry can turn a credential into a seed-owned, exported value. The compiler reports a declared non-Secret ownership on a Secret attribute as an error.
IsRuntimeState
DEPRECATED mirror of CkTypeAttributeGraph.Ownership meaning "preserved on Upsert". Kept for
the JSON cache wire format and for consumers that pre-date AB#5187. NOTE it is NOT the
export predicate any more: a AttributeOwnershipDto.TenantOwned attribute
mirrors as true here and is still exported. Use
AttributeOwnership.IsExcludedFromExport(AttributeOwnershipDto) for that question.
public bool IsRuntimeState { get; }
Property Value
IsOptional
If true, the attribute is optional, that means it can be null
public bool IsOptional { get; }
Property Value
MetaData
Optional meta data of the attribute
public ICollection<CkAttributeMetaDataDto> MetaData { get; }
Property Value
ICollection<CkAttributeMetaDataDto>
Description
An optional description of the attribute
public string Description { get; }
Property Value
Constructors
CkTypeAttributeGraph(CkId<CkAttributeId>, CkTypeAttributeDto, CkAttributeGraph)
Creates a new instance of CkTypeAttributeGraph.
public CkTypeAttributeGraph(CkId<CkAttributeId> ckAttributeId, CkTypeAttributeDto ckTypeAttributeDto, CkAttributeGraph ckAttributeGraph)
Parameters
ckAttributeId CkId<CkAttributeId>
ckTypeAttributeDto CkTypeAttributeDto
ckAttributeGraph CkAttributeGraph
CkTypeAttributeGraph(CkId<CkAttributeId>, String, IReadOnlyCollection<Object>, AttributeValueTypesDto, CkId<CkRecordId>, CkId<CkEnumId>, String, ICollection<CkAttributeMetaDataDto>, ICollection<Object>, Boolean, String, Boolean)
Creates a new instance of CkTypeAttributeGraph.
public CkTypeAttributeGraph(CkId<CkAttributeId> ckAttributeId, string attributeName, IReadOnlyCollection<object> autoCompleteValues, AttributeValueTypesDto valueType, CkId<CkRecordId> valueCkRecordId, CkId<CkEnumId> valueCkEnumId, string autoIncrementReference, ICollection<CkAttributeMetaDataDto> metaData, ICollection<object> defaultValues, bool isOptional, string description, bool isRuntimeState)
Parameters
ckAttributeId CkId<CkAttributeId>
attributeName String
autoCompleteValues IReadOnlyCollection<Object>
valueType AttributeValueTypesDto
valueCkRecordId CkId<CkRecordId>
valueCkEnumId CkId<CkEnumId>
autoIncrementReference String
metaData ICollection<CkAttributeMetaDataDto>
defaultValues ICollection<Object>
isOptional Boolean
description String
isRuntimeState Boolean
DEPRECATED alias for CkTypeAttributeGraph.Ownership, kept so CK caches and callers that pre-date
AB#5187 keep working: it seeds CkTypeAttributeGraph.Ownership, and a deserialized ownership
key, when present, then overwrites it.
Trailing + defaulted so existing positional callers (e.g. the mesh-adapter SDK tests
that build a CkTypeAttributeGraph directly) compile unchanged. STJ binds
the constructor by parameter name, so the JSON wire format is unaffected.