public override void Load() { Bind <ISettings>().To <Settings>().InSingletonScope(); Bind <IReconnectStrategy>().To <DefaultReconnectStrategy>().InSingletonScope(); Bind <IServiceFacade>().To <UdapiServiceFacade>(); var supervisorStateManager = new SupervisorStateManager(Kernel.Get <ISettings>()); Bind <IObjectProvider <Dictionary <string, FixtureOverview> > >().ToConstant(supervisorStateManager.StateProvider); Bind <IStreamListenerManager>().To <StreamListenerManager>().When(req => Kernel.Get <ISettings>().UseSupervisor == false).InSingletonScope(); Bind <IStreamListenerManager, ISupervisor>().To <Supervisor>().When(req => Kernel.Get <ISettings>().UseSupervisor).InSingletonScope(); }
public override void Load() { Bind <ISettings>().To <Settings>().InSingletonScope(); Bind <IReconnectStrategy>().To <DefaultReconnectStrategy>().InSingletonScope(); Bind <IStateManager, IStateProvider>().To <StateManager>().InSingletonScope() .WithConstructorArgument("settings", Kernel.Get <ISettings>()); Bind <IServiceFacade>().To <UdapiServiceFacade>(); Bind <ISuspensionManager>().To <SuspensionManager>().InSingletonScope() .WithConstructorArgument("stateProvider", Kernel.Get <IStateProvider>()) .WithConstructorArgument("plugin", _platformConnector); Bind <IStreamHealthCheckValidation>().To <StreamHealthCheckValidation>().InSingletonScope() .WithConstructorArgument("settings", Kernel.Get <ISettings>()); Bind <IFixtureValidation>().To <FixtureValidation>().InSingletonScope(); var supervisorStateManager = new SupervisorStateManager(Kernel.Get <ISettings>()); Bind <IObjectProvider <Dictionary <string, FixtureOverview> > >().ToConstant(supervisorStateManager.StateProvider); }