private void CreateAndAddConsoleResultHandlerToEventAggregator()
        {
            if (_hasConsoleResultHandlerBeenAddeToEventAgregator == false)
            {
                _hasConsoleResultHandlerBeenAddeToEventAgregator = true;

                _ioc.ResolveAndAddToEventAggregator <ConsoleResultHandler>();
            }
        }
        public StatLightRunnerFactory(ILogger logger, TinyIoCContainer ioc)
        {
            if (logger == null) throw new ArgumentNullException("logger");
            if (ioc == null) throw new ArgumentNullException("ioc");

            _ioc = ioc;
            _logger = logger;

            _eventSubscriptionManager = ioc.Resolve<IEventSubscriptionManager>();
            _eventPublisher = ioc.Resolve<IEventPublisher>();

            _ioc.ResolveAndAddToEventAggregator<ConsoleDebugListener>();

            _ioc.Resolve<ExtensionResolver>().AddExtensionsToEventAggregator();
        }
        public StatLightRunnerFactory(ILogger logger, TinyIoCContainer ioc)
        {
            if (logger == null)
            {
                throw new ArgumentNullException("logger");
            }
            if (ioc == null)
            {
                throw new ArgumentNullException("ioc");
            }

            _ioc    = ioc;
            _logger = logger;

            _eventSubscriptionManager = ioc.Resolve <IEventSubscriptionManager>();
            _eventPublisher           = ioc.Resolve <IEventPublisher>();

            _ioc.ResolveAndAddToEventAggregator <ConsoleDebugListener>();

            _ioc.Resolve <ExtensionResolver>().AddExtensionsToEventAggregator();
        }