// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. using MQTTnet.Internal; namespace MQTTnet.Server.Internal { public sealed class MqttServerEventContainer { public AsyncEvent ApplicationMessageNotConsumedEvent { get; } = new AsyncEvent(); public AsyncEvent ClientAcknowledgedPublishPacketEvent { get; } = new AsyncEvent(); public AsyncEvent ClientConnectedEvent { get; } = new AsyncEvent(); public AsyncEvent ClientDisconnectedEvent { get; } = new AsyncEvent(); public AsyncEvent ClientSubscribedTopicEvent { get; } = new AsyncEvent(); public AsyncEvent ClientUnsubscribedTopicEvent { get; } = new AsyncEvent(); public AsyncEvent InterceptingClientEnqueueEvent { get; } = new AsyncEvent(); public AsyncEvent ApplicationMessageEnqueuedOrDroppedEvent { get; } = new AsyncEvent(); public AsyncEvent QueuedApplicationMessageOverwrittenEvent { get; } = new AsyncEvent(); public AsyncEvent InterceptingInboundPacketEvent { get; } = new AsyncEvent(); public AsyncEvent InterceptingOutboundPacketEvent { get; } = new AsyncEvent(); public AsyncEvent InterceptingPublishEvent { get; } = new AsyncEvent(); public AsyncEvent InterceptingSubscriptionEvent { get; } = new AsyncEvent(); public AsyncEvent InterceptingUnsubscriptionEvent { get; } = new AsyncEvent(); public AsyncEvent LoadingRetainedMessagesEvent { get; } = new AsyncEvent(); public AsyncEvent PreparingSessionEvent { get; } = new AsyncEvent(); public AsyncEvent RetainedMessageChangedEvent { get; } = new AsyncEvent(); public AsyncEvent RetainedMessagesClearedEvent { get; } = new AsyncEvent(); public AsyncEvent SessionDeletedEvent { get; } = new AsyncEvent(); public AsyncEvent StartedEvent { get; } = new AsyncEvent(); public AsyncEvent StoppedEvent { get; } = new AsyncEvent(); public AsyncEvent ValidatingConnectionEvent { get; } = new AsyncEvent(); } }