Пример #1
0
        private void ConfigureIOC()
        {
            IUnityContainer container = new UnityContainer();

            container.AddCommunicationServices()
            .AddAudioServices();

            var binder = new JsonBinder <ActionDescriptionOption>();
            var option = binder.BindFromAssemblyResources(R_173.Properties.Resources.JsonRadioStationAssemblyName);

            container.RegisterInstance(option, new SingletonLifetimeManager());
            container.RegisterType <IRadioManager, RadioManager>(new SingletonLifetimeManager());
            container.RegisterType <IAudioReaderAndSender <SendableRadioModel>, AudioReaderAndSender>(new SingletonLifetimeManager());
            container.RegisterType <IAudioReceiverAndPlayer <ReceivableRadioModel>, AudioReceiverAndPlayer>(new SingletonLifetimeManager());
            container.RegisterType <IMicrophone, Microphone>(new SingletonLifetimeManager());
            container.RegisterType <KeyboardHandler>(new SingletonLifetimeManager());
            container.RegisterType <MainWindow>(new SingletonLifetimeManager());
            container.RegisterType <IMessageBox, MessageBoxViewModel>(new SingletonLifetimeManager());
            var handler = new NetworkTaskPipelineHandler();

            container.RegisterInstance <INetworkTaskListener>(handler, new SingletonLifetimeManager());
            container.RegisterInstance(handler, new SingletonLifetimeManager());
            container.RegisterType <INetworkTaskManager, NetworkTaskManager>(new SingletonLifetimeManager());
            ServiceCollection = container;
        }