From 6efd877017a1f25e23f1a5e49cc7ccff1512226d Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Fri, 9 Aug 2013 20:46:34 -0400 Subject: Removed dependency from user repository --- MediaBrowser.ServerApplication/ApplicationHost.cs | 29 ++++++++++------------- 1 file changed, 13 insertions(+), 16 deletions(-) (limited to 'MediaBrowser.ServerApplication') diff --git a/MediaBrowser.ServerApplication/ApplicationHost.cs b/MediaBrowser.ServerApplication/ApplicationHost.cs index af719a07c1..52c01d4a9d 100644 --- a/MediaBrowser.ServerApplication/ApplicationHost.cs +++ b/MediaBrowser.ServerApplication/ApplicationHost.cs @@ -247,7 +247,7 @@ namespace MediaBrowser.ServerApplication UserDataRepository = new SqliteUserDataRepository(ApplicationPaths, JsonSerializer, LogManager); RegisterSingleInstance(UserDataRepository); - UserRepository = new SqliteUserRepository(ApplicationPaths, JsonSerializer, LogManager); + UserRepository = await GetUserRepository().ConfigureAwait(false); RegisterSingleInstance(UserRepository); DisplayPreferencesRepository = new SqliteDisplayPreferencesRepository(ApplicationPaths, JsonSerializer, LogManager); @@ -256,7 +256,7 @@ namespace MediaBrowser.ServerApplication ItemRepository = new SqliteItemRepository(ApplicationPaths, JsonSerializer, LogManager); RegisterSingleInstance(ItemRepository); - UserManager = new UserManager(Logger, ServerConfigurationManager); + UserManager = new UserManager(Logger, ServerConfigurationManager, UserRepository); RegisterSingleInstance(UserManager); LibraryManager = new LibraryManager(Logger, TaskManager, UserManager, ServerConfigurationManager, UserDataRepository, () => DirectoryWatchers); @@ -288,11 +288,10 @@ namespace MediaBrowser.ServerApplication var displayPreferencesTask = Task.Run(async () => await ConfigureDisplayPreferencesRepositories().ConfigureAwait(false)); var itemsTask = Task.Run(async () => await ConfigureItemRepositories().ConfigureAwait(false)); var userdataTask = Task.Run(async () => await ConfigureUserDataRepositories().ConfigureAwait(false)); - var userTask = Task.Run(async () => await ConfigureUserRepositories().ConfigureAwait(false)); await ConfigureNotificationsRepository().ConfigureAwait(false); - await Task.WhenAll(itemsTask, userTask, displayPreferencesTask, userdataTask).ConfigureAwait(false); + await Task.WhenAll(itemsTask, displayPreferencesTask, userdataTask).ConfigureAwait(false); SetKernelProperties(); } @@ -312,6 +311,15 @@ namespace MediaBrowser.ServerApplication ); } + private async Task GetUserRepository() + { + var dbFile = Path.Combine(ApplicationPaths.DataPath, "users.db"); + + var connection = await ConnectToDb(dbFile).ConfigureAwait(false); + + return new SqliteUserRepository(connection, ApplicationPaths, JsonSerializer, LogManager); + } + /// /// Configures the repositories. /// @@ -358,18 +366,7 @@ namespace MediaBrowser.ServerApplication private Task ConfigureUserDataRepositories() { return UserDataRepository.Initialize(); - } - - /// - /// Configures the user repositories. - /// - /// Task. - private async Task ConfigureUserRepositories() - { - await UserRepository.Initialize().ConfigureAwait(false); - - ((UserManager)UserManager).UserRepository = UserRepository; - } + } /// /// Connects to db. -- cgit v1.2.3