Skip to main content

ArchiveSchemaDto

Namespace: Meshmakers.Octo.Communication.Contracts.DataTransferObjects

SDK projection of an archive's schema as returned by the asset-repo archives/{archiveRtId}/schema endpoint. Mirrors the metadata.archive block of the export ZIP exactly (see concept §3.1) so the SDK layer is a thin transport. Consumed by the bot export/import jobs for pre-flight schema-match validation (§6). Archive data export/import concept (AB#4230).

public record ArchiveSchemaDto : IEquatable<ArchiveSchemaDto>

Inheritance ObjectArchiveSchemaDto
Implements IEquatable<ArchiveSchemaDto>

Properties

RtId

Runtime id of the CkArchive entity (string form of OctoObjectId).

public string RtId { get; set; }

Property Value

String

RtWellKnownName

Optional well-known name of the archive.

public string RtWellKnownName { get; set; }

Property Value

String

Kind

Archive kind — raw / timeRange / rollup.

public string Kind { get; set; }

Property Value

String

TargetCkTypeId

The archived CK type id (== rtCkTypeId); import match key #1.

public string TargetCkTypeId { get; set; }

Property Value

String

Columns

The user-configured columns; import match key #2.

public IReadOnlyList<ArchiveColumnDto> Columns { get; set; }

Property Value

IReadOnlyList<ArchiveColumnDto>

RollupAggregations

Aggregation specs; populated only when ArchiveSchemaDto.Kind is rollup.

public IReadOnlyList<ArchiveRollupAggregationDto> RollupAggregations { get; set; }

Property Value

IReadOnlyList<ArchiveRollupAggregationDto>

PeriodMs

Advisory window period in milliseconds; populated only when ArchiveSchemaDto.Kind is timeRange. Wire form matches the asset-repo periodMs field (portable numeric, not a .NET TimeSpan string).

public Nullable<long> PeriodMs { get; set; }

Property Value

Nullable<Int64>

Constructors

ArchiveSchemaDto(String, String, String, String, IReadOnlyList<ArchiveColumnDto>, IReadOnlyList<ArchiveRollupAggregationDto>, Nullable<Int64>)

SDK projection of an archive's schema as returned by the asset-repo archives/{archiveRtId}/schema endpoint. Mirrors the metadata.archive block of the export ZIP exactly (see concept §3.1) so the SDK layer is a thin transport. Consumed by the bot export/import jobs for pre-flight schema-match validation (§6). Archive data export/import concept (AB#4230).

public ArchiveSchemaDto(string RtId, string RtWellKnownName, string Kind, string TargetCkTypeId, IReadOnlyList<ArchiveColumnDto> Columns, IReadOnlyList<ArchiveRollupAggregationDto> RollupAggregations, Nullable<long> PeriodMs)

Parameters

RtId String
Runtime id of the CkArchive entity (string form of OctoObjectId).

RtWellKnownName String
Optional well-known name of the archive.

Kind String
Archive kind — raw / timeRange / rollup.

TargetCkTypeId String
The archived CK type id (== rtCkTypeId); import match key #1.

Columns IReadOnlyList<ArchiveColumnDto>
The user-configured columns; import match key #2.

RollupAggregations IReadOnlyList<ArchiveRollupAggregationDto>
Aggregation specs; populated only when ArchiveSchemaDto.Kind is rollup.

PeriodMs Nullable<Int64>
Advisory window period in milliseconds; populated only when ArchiveSchemaDto.Kind is timeRange. Wire form matches the asset-repo periodMs field (portable numeric, not a .NET TimeSpan string).