コード例 #1
0
        public override void ConfigureTaskImplementation(AsyncTaskSequence sequence)
        {
            var books = LibraryManager.Value.BookSource;

            foreach (var book in books)
            {
                ContentsLoadTask.FillContents(LibraryManager.Value, book);
                var images = book.Contents;
                foreach (var image in images)
                {
                    ContentsLoadTask.Load(image);
                    sequence.Add(() => _TargetEncryptImage = EncryptImageFacade.FindBy(image.Image.ID));
                    sequence.Add(() => Encryptor.Decrypt(_TargetEncryptImage.EncryptFilePath, image.Image.AbsoluteMasterPath, Password));
                    sequence.Add(() => File.Delete($"{Configuration.ApplicationConfiguration.WorkingDirectory}\\{Specifications.MASTER_DIRECTORY}\\{image.Image.ID}{Path.GetExtension(image.Image.AbsoluteMasterPath)}"));
                    sequence.Add(() => EncryptImageFacade.DeleteBy(image.Image.ID));
                }
            }
            sequence.Add(() => OnmemoryImageManager.Instance.Clear());
            sequence.Add(() => Configuration.ApplicationConfiguration.Password           = null);
            sequence.Add(() => Configuration.ApplicationConfiguration.LibraryIsEncrypted = false);
        }