Ejemplo n.º 1
0
 private static void RegistroViewModel(SimpleIoc ioc)
 {
     ioc.Register <DetallesViewModel>();
     ioc.Register <CategoriaViewModel>();
     ioc.Register <MainPageViewModel>();
     ioc.Register <ServiceNavigation>();
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Register the IoC kernel and the common dependencies
        /// </summary>
        /// <param name="iocKernel">The instance of the SimpleIoC container</param>
        public static void RegisterServices(SimpleIoc iocKernel)
        {
            //  Register the Repositories
            iocKernel.Register<IArtistRepository, ArtistRepository>();
            iocKernel.Register<IGenreRepository, GenreRepository>();
            iocKernel.Register<IPlaylistRepository, PlaylistRepository>();
            iocKernel.Register<IAlbumRepository, AlbumRepository>();

            //  A special repository to expose the persistence methods so
            //  the Save method can be called when the application is suspending
            iocKernel.Register<IPersistenceRepository, PersistenceRepository>();

            //  Register the Services
            iocKernel.Register<ILastFMService, LastFmProxy>();
            iocKernel.Register<IMusicFileService, MusicFileService>();

            //  Register the factories
            iocKernel.Register<AbstractFactory<Artist>, ArtistFactory>();
            iocKernel.Register<AbstractFactory<Wiki>, WikiFactory>();
            iocKernel.Register<AbstractFactory<Image>, ImageFactory>();
            iocKernel.Register<AbstractFactory<Genre>, GenreFactory>();
            iocKernel.Register<AbstractFactory<PlayList>, PlaylistFactory>();
            //  register here, it is dependent on the Artist and Wiki factories.
            iocKernel.Register<AbstractFactory<Album>, AlbumFactory>();
            //  regist after album, it is dependent on Album and Artist factories.
            iocKernel.Register<AbstractFactory<Track>, TrackFactory>();
        }
Ejemplo n.º 3
0
        public static void RegisterServices(this SimpleIoc container)
        {
            // Core commands (should be in engine)
            container.Register <CurrentDirectoryCommand>();
            container.Register <TexoCommand>();

            // Simple commands
            container.Register <ReferenceCheckCommand>();
            container.Register <CommandLineCommand>();

            // File manager
            container.Register <ISerialisationService, JsonSerialisationService>();
            container.Register <IStageService, StageService>();
            container.Register <IStashService, StashService>();
            container.Register <FileManagerCommand>();

            // Nuget manager
            container.Register <IProjectManagementService, ProjectManagementService>();
            container.Register <IPackageManagementService, PackageManagementService>();
            container.Register <IConfigManagementService, ConfigManagementService>();
            container.Register <ISourceManagementService, SourceManagementService>();
            container.Register <IManagementService, ManagementService>();
            container.Register <Commands.NugetManager.Stage.IStageService, Commands.NugetManager.Stage.StageService>();
            container.Register <NugetManagerCommand>();

            // View
            container.Register <IMarkdownService, MarkdownService>();
            container.Register <IWpfRenderService, WpfMarkdownRenderService>();
            container.Register <WpfViewService>();
            container.Register <IViewService>(container.GetInstance <WpfViewService>);
            container.Register <IPromptableViewService>(container.GetInstance <WpfViewService>);

            // PowerShell Fallback
            container.Register <IFallbackService, PowerShellFallbackService>();
        }
Ejemplo n.º 4
0
 public static void RegisterIf <TClass>(this SimpleIoc container, Func <TClass> factory) where TClass : class
 {
     if (!container.IsRegistered <TClass>())
     {
         container.Register <TClass>(factory);
     }
 }
Ejemplo n.º 5
0
 public BookmarkedService(Guid accountGuid, SimpleIoc simpleIoc, HttpServerUtilityBase server)
 {
     _accountGuid = accountGuid;
     _server      = server;
     _simpleIoc   = simpleIoc;
     RegisterContainer();
 }
Ejemplo n.º 6
0
 public static void RegisterIf <TClass>(this SimpleIoc container, bool createInstanceImmediately) where TClass : class
 {
     if (!container.IsRegistered <TClass>())
     {
         container.Register <TClass>(createInstanceImmediately);
     }
 }
Ejemplo n.º 7
0
        public static void InitHttpTest(this SimpleIoc simpleIoc)
        {
            var simpleConfigFile = SimpleConfigFactory.ResolveFile();
            var httpTestConfig   = AsyncHelper.RunSync(() => simpleConfigFile.ReadFile <HttpTestConfig>(null));

            if (httpTestConfig == null)
            {
                httpTestConfig = HttpTestConfig.Instance;
                simpleConfigFile.SaveFile(HttpTestConfig.Instance);
            }

            HttpTestConfig.Instance = httpTestConfig;

            simpleIoc.Register <ISimpleConfigFile>(() => simpleConfigFile);
            simpleIoc.Register <HttpTestConfig>(() => HttpTestConfig.Instance);

            simpleIoc.Register <IWebApiTester>(() => WebApiTester.Resolve());
            simpleIoc.Register <WebApiTester>(() => (WebApiTester)simpleIoc.Resolve <IWebApiTester>());

            simpleIoc.Register <TestClientSpanApiVo>(() => new TestClientSpanApiVo(simpleIoc.Resolve <ISimpleConfigFile>(), simpleIoc.Resolve <IWebApiTester>()));
            simpleIoc.Register <MainVo>(() => new MainVo(simpleIoc.Resolve <ISimpleConfigFile>(), simpleIoc.Resolve <IWebApiTester>()));

            var logFileEnabled = httpTestConfig.LogFileEnabled;

            SimpleLogFactory.Instance.LogFileEnabledFunc = (category) => logFileEnabled;
        }
Ejemplo n.º 8
0
 private void InitializeHttpClient(SimpleIoc serviceProvider)
 {
     serviceProvider.Register(() => new HttpClient(new HttpClientHandler(), false)
     {
         BaseAddress = new Uri(ClientConstants.BaseApiUrl)
     });
 }
Ejemplo n.º 9
0
        public static Task InitialiseWithCommandsAsync(this TexoEngine engine, SimpleIoc container)
        {
            TexoConfiguration.Builder configuration = TexoConfiguration.CreateDefault().ToBuilder();

            string solutionFile = container.GetInstance <ISolutionPathProvider>().GetPath();

            if (!string.IsNullOrEmpty(solutionFile))
            {
                configuration.Environment.Variables.Add(VsVariableNames.SOLUTION_FILE, solutionFile);
            }

            configuration.Runtime.Commands.AddRange(new[] {
                ReferenceCheckCommand.BuildConfiguration(),
                CommandLineCommand.BuildConfiguration(),
                FileManagerBuilder.BuildCommand(),
                NugetManagerBuilder.BuildCommand(),
                CalcCommand.BuildConfiguration(),
                //ClipboardBuilder.BuildCommand(),
                FunctionsBuilder.BuildCommand(),
                CodeBaseSearchBuilder.BuildCommand(),
                SpinSportBuilder.BuildCommand()
            });

            return(engine.InitialiseAsync(configuration.ToImmutable()));
        }
Ejemplo n.º 10
0
        public static SimpleServiceLocator BuildAndRegister(SimpleIoc container)
        {
            SimpleServiceLocator locator = new SimpleServiceLocator(container);

            CommonServiceLocator.ServiceLocator.SetLocatorProvider(() => locator);
            return(locator);
        }
Ejemplo n.º 11
0
        private static void RegisterDependencies(SimpleIoc ioc)
        {
            ServiceLocator.SetLocatorProvider(() => ioc);

            ioc.Register <IConfigurationService>(() => XmlDocumentConfigurationService.Instance);

            IConfigurationService configService = ioc.GetInstance <IConfigurationService>();

            if (ViewModelBase.IsInDesignModeStatic || configService.Config.DesignMode)
            {
                // https://olitee.com/2015/01/mvvmlight-simpleioc-design-time-error/
                if (!ioc.IsRegistered <ITeslaTagsService>())
                {
                    ioc.Register <ITeslaTagsService, DesignTeslaTagService>();
                }
            }
            else
            {
                // Create run time view services and models
                ioc.Register <ITeslaTagsService, RealTeslaTagService>();
            }

            ioc.Register <IWindowService, WindowService>();

            ioc.Register <IFileDialogService, ComFileDialogService>();

            ioc.Register <MainViewModel>();
        }
        /// <summary>
        /// Registers FFmpeg classes into SimpleIoc container.
        /// </summary>
        /// <param name="services">The IoC services container.</param>
        public static SimpleIoc AddFFmpeg(this SimpleIoc services)
        {
            if (services == null)
            {
                throw new ArgumentNullException(nameof(services));
            }

            // FFmpeg
            services.Register <IFileInfoParserFactory, FileInfoParserFactory>();
            services.Register <IMediaConfig>(() => new MediaConfig(services.GetInstance <IWindowsApiService>(), services.GetInstance <IFileSystemService>()));
            services.Register <IMediaEncoder, MediaEncoder>();
            services.Register <IMediaInfoReader, MediaInfoReader>();
            services.Register <IMediaMuxer, MediaMuxer>();
            services.Register <IMediaScript, MediaScript>();
            services.Register <IProcessWorkerFactory>(() => new ProcessWorkerFactory(services.GetInstance <IMediaConfig>(), services.GetInstance <IUserInterfaceManager>()));
            services.Register <ITimeLeftCalculatorFactory, TimeLeftCalculatorFactory>();

            // Services
            services.Register <IEnvironmentService, EnvironmentService>();
            services.Register <IFileSystemService, FileSystemService>();
            services.Register <IProcessFactory, ProcessFactory>();
            services.Register <IWindowsApiService, WindowsApiService>();

            return(services);
        }
Ejemplo n.º 13
0
        public AppDependencies()
        {
            dependencies = SimpleIoc.Default;

            /* ------ VIEW MODELS ------ */
            dependencies.Register <MainViewModel>();
            dependencies.Register <GameConfigViewModel>();
            dependencies.Register <HomeViewModel>();
            dependencies.Register <GamePickerViewModel>();
            dependencies.Register <SettingsViewModel>();
            dependencies.Register <GeneralSettingsViewModel>();
            dependencies.Register <EmulatorSettingsViewModel>();
            dependencies.Register <GamesSettingsViewModel>();
            dependencies.Register <FanGameEditorViewModel>();

            /* ------ MODELS ------ */
            dependencies.Register <SettingsAndGamesManager>();
            dependencies.Register <GameConfigService>();
            dependencies.Register <ActiveGameCategory>();
            dependencies.Register <GamePickerList>();
            dependencies.Register <IExecutorService, FileSystemExecutorService>();
            dependencies.Register <GameCategoryService>();
            dependencies.Register <OfficialGamesTemplateService>();
            dependencies.Register <FileSystemBrowserService>();
            dependencies.Register <FileAccessService>();
            dependencies.Register <ISettingsAndGamesRepository, FileSystemSettingsAndGamesRepository>();
            dependencies.Register <LaunchGameService>();
            dependencies.Register <LaunchRandomGameService>();
            dependencies.Register <Random>(() => new());
            dependencies.Register <INp21ntConfigRepository, FileSystemNp21ntConfigRepository>();
            dependencies.Register <Np21ntConfigDefaultsService>();
            dependencies.Register <PathExistanceService>();
            dependencies.Register <FanGameEditingService>();
        }
Ejemplo n.º 14
0
        private static SimpleIoc RegisterInfrastructure(this SimpleIoc simpleIoc)
        {
            simpleIoc.Register <ISoapApiClient, SoapApiClient>();
            simpleIoc.Register <IBackgroundTaskRegistrar, BackgroundTaskRegistrar>();

            return(simpleIoc);
        }
Ejemplo n.º 15
0
        public static void RegisterWithMessageBus(this SimpleIoc container)
        {
            IServiceMessageBusRegister register = container.GetInstance <IServiceMessageBusRegister>();

            register.Register(container.GetInstance <PowerShellFallbackService>());
            //register.Register(container.GetInstance<ClipboardMonitoringService>());
        }
Ejemplo n.º 16
0
            private static ISimpleIoc DefaultServices()
            {
                var container = new SimpleIoc();

                container.Register(() => new PropertyGetterCache());
                return(container);
            }
Ejemplo n.º 17
0
        public ViewModelLocator()
        {
            ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);

            ////if (ViewModelBase.IsInDesignModeStatic)
            ////{
            ////    // Create design time view services and models
            ////    SimpleIoc.Default.Register<IDataService, DesignDataService>();
            ////}
            ////else
            ////{
            ////    // Create run time view services and models
            ////    SimpleIoc.Default.Register<IDataService, DataService>();
            ////}

            SimpleIoc services = SimpleIoc.Default;

            //региструем в контейнере сервиса класс
            services.Register <MainWindowViewModel>();
            services.Register <IRecipientManager, RecipientsManager>();      // регистрируем менеджера  получателей c помощью интерфейса
            services.Register <IRecipientsStore, RecipientsStoreInMemory>(); //регистрируем ср-во хранения данных для менеджера получателей

            /* TODO  Если мы напишем другую реализацию хранения данных например через БД
             * то нужно подменить только в 1 месте
             * services.Register<IRecipientsStore, ТУТ БУДЕТ Метод Хранения данных>();
             */
        }
Ejemplo n.º 18
0
 private static void RegistroViewModel(SimpleIoc ioc)
 {
     ioc.Register <DetailsViewModel>();
     ioc.Register <MoviesViewModel>();
     ioc.Register <MainViewModel>();
     ioc.Register <SettingsViewModel>();
 }
Ejemplo n.º 19
0
        public ViewModelLocator()
        {
            var nuioc = new SimpleIoc();

            ServiceLocator.SetLocatorProvider(() => nuioc);

            // Services

            nuioc.Register <IConsoleService, ConsoleService>();

            if (ViewModelBase.IsInDesignModeStatic)
            {
                nuioc.Register <ISerialPortService>(() => new StubSerialPortService());
            }
            else
            {
                nuioc.Register <ISerialPortService>(() => new SerialPortService());
            }

            nuioc.Register <ISettingsService, SettingsService>();
            nuioc.Register <IClipboardService, ClipboardService>();
            nuioc.Register <IDialogService, DialogService>();
            nuioc.Register <IApplicationServices, ApplicationServices>();
            nuioc.Register <IWindowService, WindowService>();
            nuioc.Register <IPrinterService, PrinterService>();
            nuioc.Register <IConsoleFormatService, ConsoleFormatService>();
            nuioc.Register <ITaskHelpers, TaskHelpers>();

            // ViewModels

            nuioc.Register <ConsoleViewModel, ConsoleViewModel>();

            nuioc.Register <SessionSetupViewModel, SessionSetupViewModel>();
            nuioc.Register <SettingsViewModel, SettingsViewModel>();
        }
Ejemplo n.º 20
0
        private void InitApp()
        {
            var container = new SimpleIoc();

            container.Register <IUserProfileRepository>(
                () => new UserProfileRepository());

            container.Register <INavigationService>(
                () => new NavigationService());

            container.Register(
                () => new EntryViewModel(
                    container.Get <INavigationService>()));

            container.Register(
                () => new UserProfileViewModel(
                    container.Get <IUserProfileRepository>(),
                    container.Get <INavigationService>()));

            container.Register(
                () => new LanguagesViewModel(
                    container.Get <INavigationService>()));

            ViewModelProvider.SetFactory(new DependencyProviderViewModelFactory(container));
        }
Ejemplo n.º 21
0
        public static void RegisterServices(this SimpleIoc container)
        {
            // Visual Studio
            container.Register <ISolutionPathProvider, DteSolutionPathProvider>();

            // Core commands (should be in engine)
            container.Register <CurrentDirectoryCommand>();
            container.Register <TexoCommand>();
            container.Register <HelpCommand>();
            container.Register <ClearCommand>();

            // Simple commands
            container.Register <ReferenceCheckCommand>();
            container.Register <CommandLineCommand>();

            // File manager
            container.Register <ISerialisationService, JsonSerialisationService>();
            container.Register <IStageService, StageService>();
            container.Register <IStashService, StashService>();
            container.Register <FileManagerCommand>();

            // Nuget manager
            container.Register <IProjectManagementService, ProjectManagementService>();
            container.Register <IPackageManagementService, PackageManagementService>();
            container.Register <IConfigManagementService, ConfigManagementService>();
            container.Register <ISourceManagementService, SourceManagementService>();
            container.Register <IManagementService, ManagementService>();
            container.Register <Texo.Commands.NugetManager.Stage.IStageService, Texo.Commands.NugetManager.Stage.StageService>();
            container.Register <NugetManagerCommand>();

            // Calculator
            container.Register <CalcCommand>();

            // Clipboard
            // container.Register<ClipboardMonitoringService>();
            // container.Register<ClipboardCommand>();

            // Developer Functions
            container.Register <FunctionsCommand>();

            // Code-base-search
            container.Register <ICodeBaseSearchService, CodeBaseSearchService>();
            container.Register <CodeBaseSearchCommand>();

            // SpinSport
            container.Register <ISolutionDirectoryProvider, SolutionDirectoryProvider>();
            container.Register <SpinSportCommand>();

            // View
            container.Register <IMarkdownService, MarkdownService>();
            container.Register <IWpfRenderService, WpfMarkdownRenderService>();
            container.Register <WpfViewService>();
            container.Register <IViewService>(container.GetInstance <WpfViewService>);
            container.Register <IPromptableViewService>(container.GetInstance <WpfViewService>);

            // PowerShell Fallback
            container.Register <PowerShellFallbackService>();
            container.Register <IFallbackService>(container.GetInstance <PowerShellFallbackService>);
        }
Ejemplo n.º 22
0
        public static void Initialize(SimpleIoc serviceProvider)
        {
            var adoUnauthorizedCodes = new[] { HttpStatusCode.NonAuthoritativeInformation, HttpStatusCode.Unauthorized };
            var unoHttpClientHandler = new UnoHttpClientHandler();

            // iOS & wasm httpclient enabled by default
#if NETFX_CORE || __ANDROID__
            unoHttpClientHandler.AutomaticDecompression = DecompressionMethods.GZip;
#endif

            // Client wire-up
            serviceProvider.Register(() => new HttpClient(unoHttpClientHandler, false)
            {
                BaseAddress = new Uri(ClientConstants.BaseAzureDevOpsApiUrl)
            }, "VSSPS");

            serviceProvider.Register(() => new HttpClient(unoHttpClientHandler, false)
            {
                BaseAddress = new Uri(ClientConstants.AzureDevOpsRepositoryPath)
            }, "Repo");

            serviceProvider.Register <IHttpRequestService>(
                () => new HttpRequestService(
                    serviceProvider.GetInstance <HttpClient>("VSSPS"),
                    adoUnauthorizedCodes),
                "VSSPSService");

            serviceProvider.Register <IHttpRequestService>(
                () => new HttpRequestService(
                    serviceProvider.GetInstance <HttpClient>("Repo"),
                    adoUnauthorizedCodes),
                "RepoService");

            serviceProvider.Register <IApplicationContext>(() => new ApplicationContext());

            serviceProvider.Register <IOAuthClient>(
                () => new AzureADOAuthClient(
                    serviceProvider.GetInstanceWithoutCaching <IHttpRequestService>("VSSPSService"),
                    serviceProvider.GetInstanceWithoutCaching <IApplicationContext>()));

            serviceProvider.Register <IADOProfileClient>(() => new ADOProfileClient(serviceProvider.GetInstanceWithoutCaching <IHttpRequestService>("VSSPSService")));

            serviceProvider.Register <IADOOrganizationClient>(() => new ADOOrganizationClient(serviceProvider.GetInstanceWithoutCaching <IHttpRequestService>("VSSPSService")));

            serviceProvider.Register <IADOTeamClient>(() => new ADOTeamClient(serviceProvider.GetInstanceWithoutCaching <IHttpRequestService>("RepoService")));

            // Business wire-up
            serviceProvider.Register <ISecureStorage>(() => new SecureStorage());

            serviceProvider.Register <IAuthenticationService>(() => new AuthenticationService(
                                                                  serviceProvider.GetInstanceWithoutCaching <IOAuthClient>(),
                                                                  serviceProvider.GetInstance <ISecureStorage>()));

            serviceProvider.Register <IVSTSRepository>(() => new VSTSRepository(
                                                           serviceProvider.GetInstanceWithoutCaching <IADOProfileClient>(),
                                                           serviceProvider.GetInstanceWithoutCaching <IADOOrganizationClient>(),
                                                           serviceProvider.GetInstanceWithoutCaching <IADOTeamClient>(),
                                                           serviceProvider.GetInstance <IAuthenticationService>()));
        }
Ejemplo n.º 23
0
        public void TestConstructWithServiceLocator()
        {
            var locator = new SimpleIoc();

            var vm = new TestViewModel(locator);

            Assert.AreSame(locator, vm.Services);
        }
Ejemplo n.º 24
0
 public static SimpleIoc ConfigureBusiness(this SimpleIoc simpleIoc)
 {
     return(simpleIoc
            .RegisterInfrastructure()
            .RegisterData()
            .RegisterRepositories()
            .RegisterServices());
 }
 public static void RegisterWithCheck <TClass>(this SimpleIoc ioc)
     where TClass : class
 {
     if (!ioc.IsRegistered <TClass>())
     {
         ioc.Register <TClass>();
     }
 }
Ejemplo n.º 26
0
 internal GMRMainViewModel()
 {
     m_Resolver = new SimpleIoc();
     m_Resolver.Register <IWebCommunitcation>(() => new GiantMultiplayerRobotWebCommunication());
     m_Resolver.Register <AuthenticateCommandResult>(() => new AuthenticateCommandResult());
     m_Resolver.Register <GetGamesPlayersCommandResult>(() => new GetGamesPlayersCommandResult(null));
     m_Resolver.Register <IOSSetting>(() => new OSSetting());
 }
Ejemplo n.º 27
0
 public static void RegisterSafe <TImplementation>(this SimpleIoc ioc)
     where TImplementation : class
 {
     if (!ioc.IsRegistered <TImplementation>())
     {
         ioc.Register <TImplementation>();
     }
 }
Ejemplo n.º 28
0
        private void InitApp()
        {
            var container = new SimpleIoc();

            container.Register(() => new UserProfileViewModel());

            LifecycleViewModelProvider.SetFactory(
                new DefaultLifecycleViewModelFactory(container));
        }
Ejemplo n.º 29
0
 /// <summary>
 /// Tracks instances post-creation.
 /// </summary>
 /// <param name="serviceLocator">The IoC container.</param>
 /// <param name="instance">The instance that was created.</param>
 internal virtual void InstanceCreated(SimpleIoc serviceLocator, object instance)
 {
     this.Instance       = instance;
     this.serviceLocator = serviceLocator;
     if (this.LifetimeManager != null)
     {
         this.LifetimeManager.CreatingInstance(instance);
     }
 }
Ejemplo n.º 30
0
 /// <summary>
 /// Avoids multiple attempts at registering when ViewModelLocator is created by the designer
 /// </summary>
 /// <typeparam name="TInterface"></typeparam>
 /// <typeparam name="TClass"></typeparam>
 public static void RegisterOnce <TInterface, TClass>(this SimpleIoc simpleIoc)
     where TClass : class
     where TInterface : class
 {
     if (!SimpleIoc.Default.IsRegistered <TInterface>())
     {
         SimpleIoc.Default.Register <TInterface, TClass>();
     }
 }
Ejemplo n.º 31
0
 public static void Reregister <TClass>(this SimpleIoc self)
     where TClass : class
 {
     if (self.IsRegistered <TClass>())
     {
         self.Unregister <TClass>();
     }
     self.Register <TClass>();
 }
Ejemplo n.º 32
0
 internal override void InstanceCreated(SimpleIoc serviceLocator, object instance)
 {
     base.InstanceCreated(serviceLocator, instance);
     // Todo: also check for IDisposable
     if (instance is IDestructible)
     {
         var destructible = (IDestructible)instance;
         // inject this as IDestructible instance to create a point for lifetime release.
         destructible.Candidate = this;
     }
 }
Ejemplo n.º 33
0
 /// <summary>
 /// Releases the container-instance by checking the LifetimeManager
 /// for destroyable behaviour and cleans up this lifetime management.
 /// </summary>
 public virtual void Release()
 {
     if (this.LifetimeManager != null)
     {
         this.LifetimeManager.DoDestroy();
     }
     this.LifetimeManager = null;
     this.Instance = null;
     this.serviceLocator = null;
     //throw new NotImplementedException();
 }
        /// <summary>
        ///     Initializes a new instance of the ViewModelLocator class.
        /// </summary>
        public ViewModelLocator()
        {
            var container = new SimpleIoc();
            container.Register<MainViewModel>();
            container.Register<HardLinkToolViewModel>();

            //var builder = new ContainerBuilder();
            //builder.RegisterType<MainViewModel>();

            //IContainer container = builder.Build();
            //var locator = new AutofacServiceLocator(container);

            ServiceLocator.SetLocatorProvider(() => container);
        }
Ejemplo n.º 35
0
        public ViewModelLocator()
        {
            ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);

            if (ViewModelBase.IsInDesignModeStatic)
            {

            }
            else
            {
                _ioc = SimpleIoc.Default;

                RegisterViewModels();
            }
        }
Ejemplo n.º 36
0
		static Ioc()
		{
			Container = new SimpleIoc();
			Container.Register<IDriveService, DriveService>();
			Container.Register<IUpdater, Updater>();
			Container.Register<IMessageBoxService, MessageBoxService>();
			Container.Register<ILogger, Logger>();
			Container.Register<IFileService, FileService>();
			Container.Register<IPresetImportExport, PresetImportExport>();
			Container.Register<IQueueImportExport, QueueImportExport>();
			Container.Register<IProcesses, Processes>();
			Container.Register<IProcessAutoPause, ProcessAutoPause>();
			Container.Register<ISystemOperations, SystemOperations>();
			Container.Register(() => new TrayService());
			Container.Register(() => new ClipboardService());

			Container.Register<OutputPathViewModel>();
			Container.Register<PresetsViewModel>();
			Container.Register<ProcessingViewModel>();
			Container.Register<WindowManagerViewModel>();
		}
Ejemplo n.º 37
0
 /// <summary>
 /// Register the Live instance of the datasource with the SimpleIoC
 /// </summary>
 /// <param name="iocKernel">the instance of the SimpleIoC container</param>
 public static void RegisterDataSource(SimpleIoc iocKernel)
 {
     iocKernel.Register<IUnitOfWork, MusicCollection>(true);
 }
 get { return ParseANID(SimpleIoc.Default.GetInstance<IUserExtendedPropertiesService>().AnonymousUserID); }
Ejemplo n.º 39
0
 /// <summary>
 /// Tracks instances post-creation.
 /// </summary>
 /// <param name="serviceLocator">The IoC container.</param>
 /// <param name="instance">The instance that was created.</param>
 internal virtual void InstanceCreated(SimpleIoc serviceLocator, object instance)
 {
     this.Instance = instance;
     this.serviceLocator = serviceLocator;
     if (this.LifetimeManager != null)
     {
         this.LifetimeManager.CreatingInstance(instance);
     }
 }
 public void Shutdown()
 {
     try
     {
         this.tracer.Debug("Calling custom OnShutdown procedure");
         this.OnShutdown();
     }
     catch (Exception ex)
     {
         this.tracer.Debug("Custom OnShutdown procedure failed");
         if (!this.HandleBootstrappingException(ex))
         {
             throw;
         }
     }
     finally
     {
         applicationLifecycle = ApplicationLifecycle.Uninitialized;
         if (this.simpleIoc != null)
         {
             this.simpleIoc.Reset();
             this.simpleIoc = null;
         }
     }
 }
        /// <summary>
        /// Runs the startup procedure of the bootstrapper.
        /// </summary>
        /// <exception cref="BootstrappingException">An unknown exception occurred during the startup process.</exception>
        public void Startup()
        {
            this.tracer.Debug("Bootstrapper.Startup() called");

            this.simpleIoc = SimpleIoc.Default;

            // The Service container is a service locator too. To be backwards compatible set the ServiceLocator property.
            ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);

            if (applicationLifecycle == ApplicationLifecycle.Uninitialized)
            {
                this.simpleIoc.Reset();

                this.InternalConfigureDefaultTracerFactory();

                this.InternalConfigureExceptionHandling();

                this.InternalConfigureExtensions();

                this.InternalConfigureContainer();

                this.InternalOnStartup();
            }
            else if (applicationLifecycle == ApplicationLifecycle.Sleep)
            {
                this.InternalOnResume();
            }
            else if(applicationLifecycle == ApplicationLifecycle.Running)
            {
                this.tracer.Info($"ApplicationLifecycle is already in state {ApplicationLifecycle.Running}.");
            }
        }
Ejemplo n.º 42
0
 /// <summary>
 /// Initializes a new instance of the ViewModelLocator class.
 /// </summary>
 public ViewModelLocator()
 {
     var ioc = new SimpleIoc();
     ioc.Register<MainViewModel>();
     ServiceLocator.SetLocatorProvider(() => ioc);
 }