예제 #1
0
        public IWorkspaceService CreateService(HostWorkspaceServices workspaceServices)
        {
            var optionService = workspaceServices.GetRequiredService <IOptionService>();
            var database      = optionService.GetOption(StorageOptions.Database);

            switch (database)
            {
            case StorageDatabase.SQLite:
                if (!SQLitePersistentStorageService.TryInitializeLibraries())
                {
                    break;
                }

                var locationService = workspaceServices.GetService <IPersistentStorageLocationService>();

                if (locationService != null)
                {
                    return(new SQLitePersistentStorageService(optionService, locationService, _solutionSizeTracker));
                }

                break;
            }

            return(NoOpPersistentStorageService.Instance);
        }
 static SQLitePersistentStorageTests()
 {
     Assert.True(SQLitePersistentStorageService.TryInitializeLibraries());
 }