/// <summary> /// Initializes a new instance of the <see cref="EventPublishedEventArgs"/> class. /// </summary> /// <param name="scope">Scope used to resolve subscribers.</param> /// <param name="applicationEvent">Published event.</param> /// <param name="successful">All handlers processed the event successfully.</param> /// <exception cref="System.ArgumentNullException"> /// scope /// or /// applicationEvent /// </exception> public EventPublishedEventArgs(IContainerScope scope, ApplicationEvent applicationEvent, bool successful) { if (scope == null) throw new ArgumentNullException("scope"); if (applicationEvent == null) throw new ArgumentNullException("applicationEvent"); Scope = scope; ApplicationEvent = applicationEvent; Successful = successful; }
/// <summary> /// Initializes a new instance of the <see cref="EventPublishedEventArgs" /> class. /// </summary> /// <param name="scope">Scope used to resolve subscribers.</param> /// <param name="applicationEvent">Published event.</param> /// <param name="successful">All handlers processed the event successfully.</param> /// <param name="eventInfo"></param> /// <exception cref="System.ArgumentNullException"> /// scope /// or /// applicationEvent /// </exception> public EventPublishedEventArgs(IContainerScope scope, ApplicationEvent applicationEvent, bool successful, IReadOnlyCollection<EventHandlerInfo> eventInfo) { if (applicationEvent == null) throw new ArgumentNullException("applicationEvent"); Scope = scope; ApplicationEvent = applicationEvent; Successful = successful; Handlers = eventInfo; }
/// <summary> /// Initializes a new instance of the <see cref="EventHandlerFailedEventArgs"/> class. /// </summary> /// <param name="applicationEvent">The application event that one or more subscribers failed to process.</param> /// <param name="failures">One instance per handler.</param> /// <param name="handlerCount">Total amount of subscribers (and not just the amount of failed handlers).</param> /// <exception cref="System.ArgumentNullException"> /// applicationEvent /// or /// failures /// </exception> /// <exception cref="System.ArgumentOutOfRangeException">handlerCount;Suspicions handler count</exception> public EventHandlerFailedEventArgs(ApplicationEvent applicationEvent, IReadOnlyList<HandlerFailure> failures, int handlerCount) { if (applicationEvent == null) throw new ArgumentNullException("applicationEvent"); if (failures == null) throw new ArgumentNullException("failures"); if (handlerCount < 0 || handlerCount > 1000) throw new ArgumentOutOfRangeException("handlerCount", handlerCount, "Suspicions handler count"); ApplicationEvent = applicationEvent; Failures = failures; HandlerCount = handlerCount; }