Skip to main content

BlueprintApplicationResult

Namespace: Meshmakers.Octo.Runtime.Contracts.Blueprints

Result of applying a blueprint to a tenant

public class BlueprintApplicationResult

Inheritance ObjectBlueprintApplicationResult

Properties

IsSuccess

Indicates if the blueprint was applied successfully

public bool IsSuccess { get; private set; }

Property Value

Boolean

BlueprintId

The blueprint that was applied

public BlueprintId BlueprintId { get; private set; }

Property Value

BlueprintId

TenantId

The tenant that the blueprint was applied to

public string TenantId { get; private set; }

Property Value

String

LoadedCkModels

List of CK models that were loaded (as version ranges)

public List<CkModelIdVersionRange> LoadedCkModels { get; private set; }

Property Value

List<CkModelIdVersionRange>

AppliedSeedDataFiles

List of seed data files that were applied

public List<string> AppliedSeedDataFiles { get; private set; }

Property Value

List<String>

EntitiesCreated

Number of entities created from seed data

public int EntitiesCreated { get; private set; }

Property Value

Int32

OperationResult

Operation result containing messages and errors

public OperationResult OperationResult { get; private set; }

Property Value

OperationResult

WasSkipped

True when the blueprint's requires: preconditions did not match the tenant's variable context, so the apply was a no-op (no seed data was imported, no installation row was recorded). BlueprintApplicationResult.IsSuccess is still true in this case — the apply did not fail, it just had nothing to do.

public bool WasSkipped { get; private set; }

Property Value

Boolean

SkipReason

Human-readable reason why the apply was skipped, populated when BlueprintApplicationResult.WasSkipped is true.

public string SkipReason { get; private set; }

Property Value

String

Methods

Success(String, BlueprintId, List<CkModelIdVersionRange>, List<String>, Int32, OperationResult)

Creates a successful result

public static BlueprintApplicationResult Success(string tenantId, BlueprintId blueprintId, List<CkModelIdVersionRange> loadedCkModels, List<string> appliedSeedDataFiles, int entitiesCreated, OperationResult operationResult)

Parameters

tenantId String
The tenant id

blueprintId BlueprintId
The blueprint id

loadedCkModels List<CkModelIdVersionRange>
List of loaded CK models (as version ranges)

appliedSeedDataFiles List<String>
List of applied seed data files

entitiesCreated Int32
Number of entities created

operationResult OperationResult
Operation result with messages

Returns

BlueprintApplicationResult
A successful result

Failed(OperationResult)

Creates a failed result

public static BlueprintApplicationResult Failed(OperationResult operationResult)

Parameters

operationResult OperationResult
Operation result with error messages

Returns

BlueprintApplicationResult
A failed result

Skipped(String, BlueprintId, String, OperationResult)

Creates a successful no-op result indicating the blueprint was skipped because its requires: preconditions did not match the tenant's variable context. Callers that loop over multiple blueprints can rely on BlueprintApplicationResult.WasSkipped to distinguish "applied" from "skipped" without re-reading the manifest.

public static BlueprintApplicationResult Skipped(string tenantId, BlueprintId blueprintId, string reason, OperationResult operationResult)

Parameters

tenantId String
Target tenant identifier.

blueprintId BlueprintId
Blueprint that was evaluated.

reason String
Human-readable reason why the apply was skipped.

operationResult OperationResult
Operation result with informational messages.

Returns

BlueprintApplicationResult
A skipped result with BlueprintApplicationResult.IsSuccess=true.