Esempio n. 1
0
        public async Task FindFileChanges()
        {
            var addedFiles = await FileTracker.FindChanges();

            if (!(addedFiles.Count == 0))
            {
                var reader = new FileReader();
                reader.ProgressUpdated += Reader_ProgressUpdated;
                reader.Completed       += Reader_Completed;
                await reader.ReadFileandSave(addedFiles);
            }
        }
Esempio n. 2
0
        private async Task FindFileChangesAsync()
        {
            var foldersDB = await SQLOperator.Current().GetAllAsync <FOLDER>();

            var filtered = new List <string>();
            var folders  = FileReader.InitFolderList();

            foreach (var fo in foldersDB)
            {
                var folder = await fo.GetFolderAsync();

                if (folders.Exists(a => a.Path == folder.Path))
                {
                    continue;
                }
                if (fo.IsFiltered)
                {
                    filtered.Add(folder.DisplayName);
                }
                else
                {
                    folders.Add(folder);
                }
            }
            try
            {
                folders.Remove(folders.Find(a => a.Path == ApplicationData.Current.LocalFolder.Path));
            }
            catch (Exception)
            {
            }

            foreach (var item in folders)
            {
                trackers.Add(new FileTracker(item, filtered));
            }

            var files = new List <StorageFile>();

            foreach (var item in trackers)
            {
                files.AddRange(await item.SearchFolder());
            }

            var addedFiles = await FileTracker.FindChanges(files);

            if (!(addedFiles.Count == 0))
            {
                await FileReader.ReadFileandSaveAsync(addedFiles);
            }
        }