DeltaZip.ArchiveReader.ArchiveReader C# (CSharp) Method

ArchiveReader() public method

public ArchiveReader ( string filename, Stats stats ) : System
filename string
stats Stats
return System
        public ArchiveReader(string filename, Stats stats)
        {
            this.ArchiveName = Path.GetFileName(filename);
            this.stats = stats;

            this.stats.Status = "Opening " + ArchiveName;
            this.stats.EndTime = null;

            zipFile = new ZipFile(filename);
            info = (Info)new XmlSerializer(typeof(Info)).Deserialize(Util.ExtractMetaData(zipFile, Settings.MetaDataInfo));

            if (info.ReaderVersion == null) info.ReaderVersion = info.Version;
            if (info.ReaderVersion.Major > Settings.VersionMajor || (info.ReaderVersion.Major == Settings.VersionMajor && info.ReaderVersion.Minor > Settings.VersionMinor)) {
                throw new Exception("The archive was created by newer version of the program: " + info.Version);
            }

            hashes  = Util.ReadArray<HashSource>(Util.ExtractMetaData(zipFile, Settings.MetaDataHashes));
            strings = Util.ReadStream(Util.ExtractMetaData(zipFile, Settings.MetaDataStrings));
            files   = (List<File>)Util.FileSerializer.Deserialize(new StreamReader(Util.ExtractMetaData(zipFile, Settings.MetaDataFiles), Encoding.UTF8));
        }