private void UserInterfaceThreadStart() { var clientConfiguration = ryu.Get <IClientConfiguration>(); var fileSystemProxy = ryu.Get <IFileSystemProxy>(); var driveNodeFactory = new DriveNodeFactory(ryu.Get <IStreamFactory>()); var pofContext = ryu.Get <IPofContext>(); var pofSerializer = ryu.Get <IPofSerializer>(); var temporaryFileService = ryu.Get <ServiceClient>().GetService <TemporaryFileService>(); var exeggutorService = ryu.Get <ServiceClient>().GetService <ExeggutorService>(); var riotSolutionLoader = ryu.Get <RiotSolutionLoader>(); var modificationLoader = ryu.Get <ModificationLoader>(); var leagueBuildUtilities = ryu.Get <LeagueBuildUtilities>(); application = Application.Current ?? new Application(); var dispatcher = application.Dispatcher; var window = new MainWindow(); var repositoriesDirectory = Path.Combine(clientConfiguration.UserDataDirectoryPath, kRepositoryDirectoryName); var modificationImportViewModelFactory = new ModificationImportViewModelFactory(fileSystemProxy, driveNodeFactory); ModificationComponentFactory modificationComponentFactory = new ModificationComponentFactory(fileSystemProxy, pofContext, new SlotSourceFactoryImpl(), pofSerializer); ObservableCollection <ModificationViewModel> modificationViewModels = new ObservableCollection <ModificationViewModel>(); var rootViewModelCommandFactory = new ModificationImportController(pofSerializer, repositoriesDirectory, temporaryFileService, exeggutorService, modificationComponentFactory, fileSystemProxy, riotSolutionLoader, modificationImportViewModelFactory, modificationViewModels, modificationLoader, leagueBuildUtilities); var modificationListingSynchronizer = new ModificationListingSynchronizer(pofSerializer, fileSystemProxy, clientConfiguration, temporaryFileService, exeggutorService, modificationLoader, modificationViewModels, leagueBuildUtilities); modificationListingSynchronizer.Initialize(); var rootViewModel = new RootViewModel(rootViewModelCommandFactory, window, modificationViewModels); window.DataContext = rootViewModel; application.Run(window); host?.Shutdown(ShutdownReason.None); }
private void UserInterfaceThreadStart() { var clientConfiguration = ryu.Get<IClientConfiguration>(); var fileSystemProxy = ryu.Get<IFileSystemProxy>(); var driveNodeFactory = new DriveNodeFactory(ryu.Get<IStreamFactory>()); var pofContext = ryu.Get<IPofContext>(); var pofSerializer = ryu.Get<IPofSerializer>(); var temporaryFileService = ryu.Get<ServiceClient>().GetService<TemporaryFileService>(); var exeggutorService = ryu.Get<ServiceClient>().GetService<ExeggutorService>(); var riotSolutionLoader = ryu.Get<RiotSolutionLoader>(); var modificationLoader = ryu.Get<ModificationLoader>(); var leagueBuildUtilities = ryu.Get<LeagueBuildUtilities>(); application = Application.Current ?? new Application(); var dispatcher = application.Dispatcher; var window = new MainWindow(); var repositoriesDirectory = Path.Combine(clientConfiguration.UserDataDirectoryPath, kRepositoryDirectoryName); var modificationImportViewModelFactory = new ModificationImportViewModelFactory(fileSystemProxy, driveNodeFactory); ModificationComponentFactory modificationComponentFactory = new ModificationComponentFactory(fileSystemProxy, pofContext, new SlotSourceFactoryImpl(), pofSerializer); ObservableCollection<ModificationViewModel> modificationViewModels = new ObservableCollection<ModificationViewModel>(); var rootViewModelCommandFactory = new ModificationImportController(pofSerializer, repositoriesDirectory, temporaryFileService, exeggutorService, modificationComponentFactory, fileSystemProxy, riotSolutionLoader, modificationImportViewModelFactory, modificationViewModels, modificationLoader, leagueBuildUtilities); var modificationListingSynchronizer = new ModificationListingSynchronizer(pofSerializer, fileSystemProxy, clientConfiguration, temporaryFileService, exeggutorService, modificationLoader, modificationViewModels, leagueBuildUtilities); modificationListingSynchronizer.Initialize(); var rootViewModel = new RootViewModel(rootViewModelCommandFactory, window, modificationViewModels); window.DataContext = rootViewModel; application.Run(window); host?.Shutdown(ShutdownReason.None); }