public static void SaveTo(this IWritableArchive writableArchive, Stream stream, CompressionType compressionType) { writableArchive.SaveTo(stream, new CompressionInfo { Type = compressionType }); }
public static void SaveTo(this IWritableArchive writableArchive, FileInfo fileInfo, WriterOptions options) { using (var stream = fileInfo.Open(FileMode.Create, FileAccess.Write)) { writableArchive.SaveTo(stream, options); } }
public static void SaveTo(this IWritableArchive writableArchive, string filePath, CompressionType compressionType) { writableArchive.SaveTo(new FileInfo(filePath), new CompressionInfo { Type = compressionType }); }
public static void SaveTo(IWritableArchive writableArchive, Stream stream, CompressionType compressionType) { CompressionInfo info = new CompressionInfo(); info.Type = compressionType; writableArchive.SaveTo(stream, info); }
public static IArchiveEntry AddEntry(this IWritableArchive writableArchive, string key, FileInfo fileInfo) { if (!fileInfo.Exists) { throw new ArgumentException("FileInfo does not exist."); } return(writableArchive.AddEntry(key, fileInfo.OpenRead(), true, fileInfo.Length, fileInfo.LastWriteTime)); }
public static void SaveTo(this IWritableArchive writableArchive, FileInfo fileInfo, CompressionInfo compressionInfo) { using (var stream = fileInfo.Open(FileMode.Create, FileAccess.Write)) { writableArchive.SaveTo(stream, compressionInfo); } }
private string CreatePDDZip(string path) { string destination = Path.Combine(path, string.Format("pacchetto di distribuzione_{0:ddMMyyyyHHmmss}.zip", DateTime.Now)); using (IWritableArchive archive = ArchiveFactory.Create(ArchiveType.Zip)) { archive.AddAllFromDirectory(path); archive.SaveTo(destination, CompressionType.Deflate); } return(destination); }
public static void AddAllFromDirectory( this IWritableArchive writableArchive, string filePath, string searchPattern = "*.*", SearchOption searchOption = SearchOption.AllDirectories) { foreach (var path in Directory.EnumerateFiles(filePath, searchPattern, searchOption)) { var fileInfo = new FileInfo(path); writableArchive.AddEntry(path.Substring(filePath.Length), fileInfo.OpenRead(), true, fileInfo.Length, fileInfo.LastWriteTime); } }
public static void AddEntry(this IWritableArchive writableArchive, string entryPath, string filePath) { var fileInfo = new FileInfo(filePath); if (!fileInfo.Exists) { throw new FileNotFoundException("Could not AddEntry: " + filePath); } writableArchive.AddEntry(entryPath, new FileInfo(filePath).OpenRead(), true, fileInfo.Length, fileInfo.LastWriteTime); }
private string CreatePreservationZipToDownload(List <Preservation> preservations) { string destination = Path.Combine(ConfigurationHelper.GetAppDataPath(), string.Format("Preservation_{0:yyyyMMddHHmmss}.zip", DateTime.Now)); using (IWritableArchive archive = ArchiveFactory.Create(ArchiveType.Zip)) { foreach (Preservation preservation in preservations) { string file = IpdaUtil.GetIpdaXmlFile(preservation.Path); archive.AddEntry(string.Concat(preservation.IdPreservation, "_", Path.GetFileName(file)), file); } archive.SaveTo(destination, CompressionType.Deflate); } return(destination); }
private static void SafeAddAllFromDirectory( this IWritableArchive writableArchive, string filePath, string searchPattern = "*.*", SearchOption searchOption = SearchOption.AllDirectories) { foreach (var path in Directory.EnumerateFiles(filePath, searchPattern, searchOption)) { // On Unix we can get FileNotFoundException when getting FileInfo on symlink try { var fileInfo = new FileInfo(path); writableArchive.AddEntry(path.Substring(filePath.Length), fileInfo.OpenRead(), true, fileInfo.Length, fileInfo.LastWriteTime); } catch (Exception e) { Log.Warn("Can't access file at " + path, e); } } }
private string CreateRDVToSignZipToDownload(ICollection <Guid> awardBatchIds) { string destination = Path.Combine(ConfigurationHelper.GetAppDataPath(), string.Format("RDVToSign_{0:yyyyMMddHHmmss}.zip", DateTime.Now)); string folderDestination = Path.Combine(ConfigurationHelper.GetAppDataPath(), Guid.NewGuid().ToString()); try { Directory.CreateDirectory(folderDestination); using (IWritableArchive archive = ArchiveFactory.Create(ArchiveType.Zip)) using (DocumentsClient client = new DocumentsClient()) { Parallel.ForEach(awardBatchIds, (idAwardBatch) => { AwardBatch awardBatch = _preservationService.GetAwardBatch(idAwardBatch); if (!awardBatch.IdRDVDocument.HasValue) { _logger.WarnFormat("CreateRDVToSignZipToDownload -> RDV document not found for award batch {0}", idAwardBatch); return; } DocumentContent content = client.GetDocumentContentById(awardBatch.IdRDVDocument.Value); System.IO.File.WriteAllBytes(Path.Combine(folderDestination, string.Concat(idAwardBatch, "_", UtilityService.GetSafeFileName(content.Description))), content.Blob); }); archive.AddAllFromDirectory(folderDestination); archive.SaveTo(destination, CompressionType.Deflate); } } finally { if (Directory.Exists(folderDestination)) { Directory.Delete(folderDestination, true); } } return(destination); }
public static void SaveTo(this IWritableArchive writableArchive, string filePath, CompressionInfo compressionInfo) { writableArchive.SaveTo(new FileInfo(filePath), compressionInfo); }
public static void SaveTo(this IWritableArchive writableArchive, string filePath, WriterOptions options) { writableArchive.SaveTo(new FileInfo(filePath), options); }