using System; using ICSharpCode.SharpZipLib.Core; using static ICSharpCode.SharpZipLib.Zip.ZipEntryFactory; namespace ICSharpCode.SharpZipLib.Zip { /// /// Defines factory methods for creating new values. /// public interface IEntryFactory { /// /// Create a for a file given its name /// /// The name of the file to create an entry for. /// Returns a file entry based on the passed. ZipEntry MakeFileEntry(string fileName); /// /// Create a for a file given its name /// /// The name of the file to create an entry for. /// If true get details from the file system if the file exists. /// Returns a file entry based on the passed. ZipEntry MakeFileEntry(string fileName, bool useFileSystem); /// /// Create a for a file given its actual name and optional override name /// /// The name of the file to create an entry for. /// An alternative name to be used for the new entry. Null if not applicable. /// If true get details from the file system if the file exists. /// Returns a file entry based on the passed. ZipEntry MakeFileEntry(string fileName, string entryName, bool useFileSystem); /// /// Create a for a directory given its name /// /// The name of the directory to create an entry for. /// Returns a directory entry based on the passed. ZipEntry MakeDirectoryEntry(string directoryName); /// /// Create a for a directory given its name /// /// The name of the directory to create an entry for. /// If true get details from the file system for this directory if it exists. /// Returns a directory entry based on the passed. ZipEntry MakeDirectoryEntry(string directoryName, bool useFileSystem); /// /// Get/set the applicable. /// INameTransform NameTransform { get; set; } /// /// Get the in use. /// TimeSetting Setting { get; } /// /// Get the value to use when is set to , /// or if not specified, the value of when the class was the initialized /// DateTime FixedDateTime { get; } } }