public FileDiscoveryService(WallpaperManagerContext context) { Context = context; ThemeRepo = new WallpaperThemeRepository(context); DirectoryRepo = new WallpaperDirectoryRepository(context); FileCacheRepo = new FileDiscoveryCacheRepository(context); }
private WallpaperTheme GetTheme(int id) { using (var context = new WallpaperManagerContext()) { var themeRepo = new WallpaperThemeRepository(context); try { return(themeRepo.Find(id)); } catch (Exception) { } } return(null); }
public WallpaperManagerViewModelBase() { // Setup the Repos var context = new WallpaperManagerContext(); ThemeRepository = new WallpaperThemeRepository(context); DirectoryRepository = new WallpaperDirectoryRepository(context); AccessTokenRepository = new FileAccessTokenRepository(context); FileDiscoveryCacheRepository = new FileDiscoveryCacheRepository(context); // Setup the AppProducts try { InAppPurchaseManagerBase.AppProductsChanged += InAppPurchaseManager_AppProductsChanged; var product = InAppPurchaseManagerFactory.Create(true).GetAppProductByStoreID("9nzm4xdbvpk0"); ProductAWMPro = product; Debug.WriteLine($"{nameof(WallpaperManagerViewModelBase)} | {ProductAWMPro}"); } catch (Exception) { } }
public async void Run(IBackgroundTaskInstance taskInstance) { Debug.WriteLine($"{nameof(FileDiscoveryBackgroundTask)} - {nameof(Run)} - Begun"); // Register the Monitoring Events taskInstance.Canceled += TaskInstance_Canceled; taskInstance.Task.Completed += Task_Completed; taskInstance.Task.Progress += Task_Progress; // If the task is not allowed to run, return early if (!IsTaskAllowedToRun()) { return; } // Otherwise, we jump into File Discovery Process _deferral = taskInstance.GetDeferral(); using (var context = new WallpaperManagerContext()) { var themeRepo = new WallpaperThemeRepository(context); var fileDiscoveryService = new FileDiscoveryService(context); // Preform File Discovery for ALL of the themes //_deferral = taskInstance.GetDeferral(); //await fileDiscoveryService.PreformFileDiscoveryAll(null); //_deferral.Complete(); // Preform File Discovery for the Desktop Wallpaper Theme Debug.WriteLine($"{nameof(FileDiscoveryBackgroundTask)} - {nameof(ActiveDesktopThemeSetting)} - Started"); var activeDesktopThemeSetting = new ActiveDesktopThemeSetting(); var activeDesktopThemeSettingValue = activeDesktopThemeSetting.Value; if (activeDesktopThemeSettingValue.HasValue) { var activeWallpaperTheme = themeRepo.Find(activeDesktopThemeSettingValue.Value); await fileDiscoveryService.PreformFileDiscovery(activeWallpaperTheme, null); } Debug.WriteLine($"{nameof(FileDiscoveryBackgroundTask)} - {nameof(ActiveDesktopThemeSetting)} - Completed"); // Preform File Discovery for the Lockscreen Theme Debug.WriteLine($"{nameof(FileDiscoveryBackgroundTask)} - {nameof(ActiveLockscreenThemeSetting)} - Started"); var activeLockscreenThemeSetting = new ActiveLockscreenThemeSetting(); var activeLockscreenThemeSettingValue = activeLockscreenThemeSetting.Value; if (activeLockscreenThemeSettingValue.HasValue && activeLockscreenThemeSettingValue != activeDesktopThemeSettingValue) { var activeLockscreenTheme = themeRepo.Find(activeLockscreenThemeSettingValue.Value); await fileDiscoveryService.PreformFileDiscovery(activeLockscreenTheme, null); } Debug.WriteLine($"{nameof(FileDiscoveryBackgroundTask)} - {nameof(ActiveLockscreenThemeSetting)} - Completed"); } // Update the FileDiscovery Last Run var fileDiscoveryLastRunSetting = new FileDiscoveryLastRunSetting(); fileDiscoveryLastRunSetting.Value = DateTime.UtcNow; // Update the FileDiscovery Background Task Last Run var fileDiscoveryTaskLastRunSetting = new FileDiscoveryTaskLastRunSetting(); fileDiscoveryTaskLastRunSetting.Value = DateTime.UtcNow; Debug.WriteLine($"{nameof(FileDiscoveryBackgroundTask)} - {nameof(Run)} - Completed"); _deferral.Complete(); }