f40409a688
Tracking IDs are review bookkeeping that rots in shipped source; the rationale they tagged is kept. Comment-only change (CommentChecker 458 -> 16 false positives).
30 lines
1.4 KiB
C#
30 lines
1.4 KiB
C#
using ZB.MOM.WW.MxGateway.Contracts.Proto;
|
|
|
|
namespace ZB.MOM.WW.MxGateway.Server.Alarms;
|
|
|
|
/// <summary>
|
|
/// The outcome of one subtag watch-list resolution: the composed targets plus enough
|
|
/// provenance for the caller to tell an empty list that means "nothing was configured"
|
|
/// from one that means "discovery was configured and silently produced nothing".
|
|
/// <see cref="IAlarmWatchListResolver.ResolveAsync"/> deliberately never throws
|
|
/// on a discovery failure, so without this the two are indistinguishable at the call site
|
|
/// and a Galaxy Repository outage at startup can only be found in a log line.
|
|
/// </summary>
|
|
/// <param name="Targets">The resolved watch-list, in order; possibly empty.</param>
|
|
/// <param name="DiscoveryAttempted">
|
|
/// Galaxy Repository discovery was enabled for this resolution
|
|
/// (<c>Fallback:Discovery:UseGalaxyRepository</c>).
|
|
/// </param>
|
|
/// <param name="DiscoveryFailed">
|
|
/// Discovery was attempted and failed, so <paramref name="Targets"/> holds only what
|
|
/// configuration contributed.
|
|
/// </param>
|
|
/// <param name="DiscoveryFailureMessage">
|
|
/// The discovery failure's message, or <c>null</c> when discovery did not fail.
|
|
/// </param>
|
|
public sealed record AlarmWatchListResolution(
|
|
IReadOnlyList<AlarmSubtagTarget> Targets,
|
|
bool DiscoveryAttempted,
|
|
bool DiscoveryFailed,
|
|
string? DiscoveryFailureMessage);
|