public void SubscriberNotification(SubscriberNotification notification)
        {
            log4net.LogicalThreadContext.Properties["TransactionId"] = notification.Event.SourceTransactionId;

            _log.Info($"Notifying Subscriber='{notification.Subscriber.SubscriberName}' via Workflow='{notification.Subscriber.WorkFlowType.FullName}' IdleAction={IdleAction}");

            using (ApplicationHelper application = new ApplicationHelper(notification.Subscriber.GetActivity(), notification.Subscriber.GetIdentity(), notification.Event, notification.Subscriber))
            {
                application.IdleAction = IdleAction;

                if (OperationEndedEvent != null)
                {
                    application.ActivityStartedEvent += (Guid instanceId, System.Activities.Activity activity) =>
                    {
                        OperationStartedEvent?.Invoke(Operation.SubscriberNotification, notification.Event.SourceTransactionId, notification, instanceId.ToString());
                    };

                    application.ActivityUnhandledExceptionEvent += (System.Activities.WorkflowApplicationUnhandledExceptionEventArgs args) =>
                    {
                        OperationEndedEvent?.Invoke(Operation.SubscriberNotification, notification.Event.SourceTransactionId, args.UnhandledException, notification, args.InstanceId.ToString());
                    };

                    application.ActivityCompletedEvent += (System.Activities.WorkflowApplicationCompletedEventArgs args) =>
                    {
                        OperationEndedEvent?.Invoke(Operation.SubscriberNotification, notification.Event.SourceTransactionId, null, notification, args.InstanceId.ToString());
                    };
                }

                application.Run();
            }
        }
 public void SubscriberNotification(SubscriberNotification notification)
 {
     _listner.SubscriberNotification(notification);
     SubscribersNotified++;
 }