public static Container Register()
        {
            _log.Info("Registering FE container");

            Container container = CommonContainerRegistrator.Register();

            container.Register <INodeQueueManager, NodeQueueManager>(Lifestyle.Singleton);
            container.Register <IRestExecutor, RestExecutor>(Lifestyle.Scoped);
            container.Register <IFQueueController, NodeController>(Lifestyle.Scoped);

            container.RegisterSingleton <IWatchdogThread, NodeWatchdogThread>();

            container.RegisterSingleton <IEngine, NodeEngine>();

            _log.Debug("Container verification attempt");
            container.Verify();

            return(container);
        }
Beispiel #2
0
        public static Container Register()
        {
            _log.Info("Registering BE container");

            Container container = CommonContainerRegistrator.Register();

            container.RegisterSingleton <IEtcdCompoundClientFactory, EtcdCompoundClientFactory>();
            container.RegisterSingleton <IEtcdWrapper, EtcdWrapper>(); // singleton because this wrapper is using IEtcdCompoundClientFactory every time

            container.Register <ILeaderElectionChecker, LeaderElectionChecker>();
            container.RegisterSingleton <IEtcdLeaseBackgroundTask, EtcdLeaseBackgroundTask>();
            container.RegisterSingleton <IWatchdogThread, SynchronizerWatchdogThread>();

            container.Register <IFQueueController, SynchronizerController>(Lifestyle.Scoped);

            container.RegisterSingleton <IEngine, SynchronizerEngine>();

            _log.Debug("Container verification attempt");
            container.Verify();

            return(container);
        }