Interface IMessageManager
Represents a service that manages client specific message & header information.
public interface IMessageManager
Properties
Available
Gets whether message information is available.
bool Available { get; }
Property Value
Methods
InitializeAsync(CancellationToken)
Initializes the message manager.
Task InitializeAsync(CancellationToken cancellationToken)
Parameters
cancellationTokenCancellationToken
Returns
Is(Header, ReadOnlySpan<Identifier>)
Gets whether the header matches any of the specified identifiers.
bool Is(Header header, ReadOnlySpan<Identifier> identifiers)
Parameters
headerHeaderidentifiersReadOnlySpan<Identifier>
Returns
LoadMessages(IEnumerable<ClientMessage>)
Loads the specified client messages.
void LoadMessages(IEnumerable<ClientMessage> messages)
Parameters
messagesIEnumerable<ClientMessage>
Resolve(ReadOnlySpan<Identifier>)
Resolves the specified identifiers to an array of headers.
Headers Resolve(ReadOnlySpan<Identifier> identifiers)
Parameters
identifiersReadOnlySpan<Identifier>
Returns
Exceptions
- ArgumentException
If no identifiers were specified.
- UnresolvedIdentifiersException
If any of the identifiers could not be resolved.
Resolve(Identifier)
Resolves the specified identifier to a header.
Header Resolve(Identifier identifier)
Parameters
identifierIdentifier
Returns
Exceptions
- UnresolvedIdentifiersException
If the identifier could not be resolved.
TryGetHeader(Identifier, out Header)
Attempts to get a header by its identifier.
bool TryGetHeader(Identifier identifier, out Header header)
Parameters
identifierIdentifierheaderHeader
Returns
TryGetNames(Header, out MessageNames)
Attempts to get the associated message names for the specified header.
bool TryGetNames(Header header, out MessageNames names)
Parameters
headerHeadernamesMessageNames
Returns
TryGetNames(Identifier, out MessageNames)
Attempts to get the associated message names for the specified identifier.
bool TryGetNames(Identifier identifier, out MessageNames names)
Parameters
identifierIdentifiernamesMessageNames
Returns
TryResolve(ReadOnlySpan<Identifier>, out Headers?, out Identifiers?)
Attempts to resolve the specified identifiers to an array of headers.
bool TryResolve(ReadOnlySpan<Identifier> identifiers, out Headers? headers, out Identifiers? unresolved)
Parameters
identifiersReadOnlySpan<Identifier>headersHeadersunresolvedIdentifiers
Returns
Exceptions
- ArgumentException
If no identifiers were specified.
Events
Loaded
Notifies listeners when messages have been loaded.
event Action? Loaded