using MxGateway.Contracts.Proto; namespace MxGateway.Client; /// Exception thrown when a session is not found, not ready, or invalid. public sealed class MxGatewaySessionException : MxGatewayException { /// Initializes a new instance with the given details. /// The error message describing the session failure. /// The session ID, if available. /// The correlation ID for tracing, if available. /// The protocol status details, if available. /// The HResult code, if available. /// The MXAccess statuses, if available. /// The underlying exception, if any. public MxGatewaySessionException( string message, string? sessionId = null, string? correlationId = null, ProtocolStatus? protocolStatus = null, int? hResult = null, IReadOnlyList? statuses = null, Exception? innerException = null) : base( message, sessionId, correlationId, protocolStatus, hResult, statuses ?? [], innerException) { } }