Table of Contents

Interface IMessage

Namespace
Hi.Common.Messages
Assembly
HiGeom.dll

Common contract for a single reportable item on an IProgress<T> channel — an NC diagnostic, a step-anchored notice, a simple message, or a progress fraction. Consumers (GUI / log) treat every kind uniformly through this view, while each concrete kind is still stored by its own owner (e.g. NcDiagnostic by NcDiagnosticProgress, ClStripPos by ClStrip) rather than being mixed into one shared collection.

public interface IMessage
Extension Methods

Methods

GetArgs()

Gets the values interpolated into GetFormat(); null when GetFormat() is null, possibly empty for a hole-less template. Default interface method so external implementers are unaffected.

object[] GetArgs()

Returns

object[]

The interpolation arguments, or null when untemplated.

GetCategory()

Gets the classification — see Category.

Category GetCategory()

Returns

Category

The category of this message.

GetDetail()

Gets the optional detail payload or exception; null when not applicable.

object GetDetail()

Returns

object

The detail object, or null.

GetFormat()

Gets the composite-format template behind GetNotification() — a {0}-style .NET format string — when this message was produced from an interpolated template; null when the notification has no structured template. Together with GetArgs() this lets a consumer re-render the message in another language without losing the interpolated live values, while GetNotification() stays the invariant English rendering. Default interface method so external implementers are unaffected.

string GetFormat()

Returns

string

The composite format string, or null when untemplated.

GetId()

Gets the structured id used for filtering / suppression; may be null.

string GetId()

Returns

string

The message id, or null when not applicable.

GetNotification()

Gets the end-user friendly notification text.

string GetNotification()

Returns

string

The notification text.

GetSeverity()

Gets the importance level — see Severity.

Severity GetSeverity()

Returns

Severity

The severity of this message.