public override void SetUp()
        {
            base.SetUp();

            workitemWriterMock = Repository.StrictMock<WorkitemWriter>();
            eventManagerMock = Repository.StrictMock<IEventManager>();

            eventManager = new EventManager();
            service = new WorkitemWriterHostedService();

            service.Initialize(null, eventManager, null);
        }
コード例 #2
0
        public void Initialize(IEnumerable <TypeNameReference> typeList)
        {
            lock (this.syncRoot)
            {
                if (this.State == RunState.Created)
                {
                    if (ConfigurationManager.Instance.State == RunState.Created)
                    {
                        ConfigurationManager.Instance.Bootstrap();
                        ConfigurationManager.Instance.Initialize();
                    }
                    if (ConfigurationManager.Instance.State == RunState.Initialized)
                    {
                        ConfigurationManager.Instance.Start();
                    }
                    if (LogManager.Instance.State == RunState.Created)
                    {
                        LogManager.Instance.Bootstrap();
                        LogManager.Instance.Initialize();
                    }
                    if (LogManager.Instance.State == RunState.Initialized)
                    {
                        LogManager.Instance.Start(); //make sure we have something to log to
                    }
                    this.logger = null;

                    GetLogger();
                    this.logger.Log(0, "Initialize: Called");
                    //at this point, the logging and configuration services are running

                    if (typeList == null)
                    {
                        this.logger.Log(0, "Initialize: Null typeList, exiting");
                        return;
                    }

                    if (ConfigurationManager.Instance.State != RunState.Running)
                    {
                        this.logger.Log(100, "Initialize: ConfigurationManager failed to initialize");
                    }
                    if (LogManager.Instance.State != RunState.Running)
                    {
                        this.logger.Log(100, "Initialize: LogManager failed to initialize");
                    }

                    foreach (TypeNameReference cur in typeList)
                    {
                        try
                        {
                            IHostedService b = ReflectionUtils.Get <IHostedService>(cur);
                            if (b != null)
                            {
                                this.hostedServices.Add(b);
                                b.Initialize();
                                if (b.State != RunState.Initialized)
                                {
                                    this.logger.Log(5, "Initialize: Init failed for " + NameReflectionUtils.GetName(b).ToString());
                                }
                            }
                            else
                            {
                                this.logger.Log(5, "Initialize: Load failed for " + cur);
                            }
                        }
                        catch
                        { }
                    }

                    this.logger.Log(0, "Initialize: Succeeded");
                    this.State = RunState.Initialized;
                }
                else
                {
                    this.logger.Log(0, "Initialize: Called from improper state: " + this.State.ToString());
                }
            }
        }