/// <summary> /// Creates an encrypted Halva package in memory. This is used to update an archive or export some files. /// </summary> /// <param name="source">The archive you want to open.</param> /// <param name="pwsd">The password of the archive (if it's encrypted).</param> public EncryptedHalvaPackage(string source, string pwsd) { WorkingArchive = ReserveRandomArchive(); Password = pwsd; SourceLocation = new StringBuilder(Path.GetDirectoryName(source)); DestinationLocation = new StringBuilder(source); EncryptedPackageUtilities.DecompressArchive(DestinationLocation.ToString(), Password, WorkingArchive); ArchiveMemoryStream = ZipFile.Open(WorkingArchive, ZipArchiveMode.Update); PullFiles(ArchiveMemoryStream); }
/// <summary> /// Reloads the archive for editing. /// </summary> public void ReloadArchive() { EncryptedPackageUtilities.DecompressArchive(DestinationLocation.ToString(), Password); ArchiveMemoryStream = ZipFile.Open(PackageUtilities.TempArchive, ZipArchiveMode.Update); }