Table of Contents

Class LoggingMessageQueue

Namespace
Hi.Common.Messages
Assembly
HiGeom.dll

A queue for logging messages with multi-tag support and file output capabilities.

public class LoggingMessageQueue : IMultiTagMessageQueue, IDisposable
Inheritance
LoggingMessageQueue
Implements
Inherited Members
Extension Methods

Properties

Capacity

Gets or sets the maximum number of messages to keep in the queue.

public int Capacity { get; set; }

Property Value

int

MessageFile

Gets the path to the log file where messages are being written.

public string MessageFile { get; }

Property Value

string

Methods

Clear()

Clears the message queue and closes the log file.

public void Clear()

Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

public void Dispose()

Dispose(bool)

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

Enqueue(MultiTagMessage)

Adds a message to the queue and writes it to the log file.

public MultiTagMessage Enqueue(MultiTagMessage multiTagMessage)

Parameters

multiTagMessage MultiTagMessage

The message to enqueue

Returns

MultiTagMessage

The enqueued message

GetLastMessages()

Gets all messages currently in the queue as a single string.

public string GetLastMessages()

Returns

string

A string containing all messages in the queue, separated by newlines

Events

ClearEvent

Event triggered when the queue is cleared.

public event Action ClearEvent

Event Type

Action

MessageEvent

Event triggered when a new message is added to the queue.

public event Action<string> MessageEvent

Event Type

Action<string>