Table of Contents

Class StepConsignmentWriteException

Namespace
Hi.MachiningSteps
Assembly
HiMech.dll

A batch of step consignments whose write to the step cache failed: the store's exception (InnerException) with the batch's step range in the text, so that the report names the steps concerned. The batch may not be committed (the store threw before its commit, as a rule), so the writer leaves the published steps' creation caches in place (StepConsignment): their luggage and briefs stay readable from them for the life of the step on the strip, until the next runtime reset, and the step cache holds their rows only if the store committed before it threw; a luggage-only consignment in the batch has no step and no cache, so its luggage is lost with the batch. The runner's luggage writer builds it on its flush thread and hands it to the exception reporter the runner was constructed with, anchored on FirstPublishedStepIndex, else on FirstStepIndex.

public sealed class StepConsignmentWriteException : Exception, ISerializable
Inheritance
StepConsignmentWriteException
Implements
Inherited Members
Extension Methods

Constructors

StepConsignmentWriteException(IReadOnlyList<StepConsignment>, Exception)

Wraps what the store threw with the batch it did not take.

public StepConsignmentWriteException(IReadOnlyList<StepConsignment> batch, Exception inner)

Parameters

batch IReadOnlyList<StepConsignment>

The consignments of the batch, as handed to the store; null entries are skipped.

inner Exception

What the store threw; null leaves the text without a cause.

Properties

Count

How many consignments the batch held.

public int Count { get; }

Property Value

int

FirstPublishedStepIndex

The step index of the first published consignment in the batch's order, which is the steps' order: the step the fault is anchored to. Null when the batch holds luggage-only consignments alone (the report is then anchored on FirstStepIndex) or none (no step is named; the runner's writer never hands over an empty batch).

public int? FirstPublishedStepIndex { get; }

Property Value

int?

FirstStepIndex

The lowest step index in the batch, a luggage-only consignment's included; null for an empty batch.

public int? FirstStepIndex { get; }

Property Value

int?

LastStepIndex

The highest step index in the batch; null for an empty batch.

public int? LastStepIndex { get; }

Property Value

int?

PublishedCount

How many of them are published steps (HasStep); the rest are luggage-only.

public int PublishedCount { get; }

Property Value

int