Exemple #1
0
        public ObservableCollection<SerialModel> Load(IListFileParser listFileParser)
        {
            var temp = new ObservableCollection<SerialModel>();
            if (File.Exists(cashFileName))
            {
                try
                {
                    using (var fs = new FileStream(cashFileName, FileMode.Open, FileAccess.Read))
                    {
                        using (var bw = new BinaryReader(fs))
                        {
                            while (bw.BaseStream.Position != bw.BaseStream.Length)
                            {
                                var filename = bw.ReadString();
                                var info = bw.ReadString();
                                var referenseTofile = bw.ReadString();
                                var size = bw.ReadString();
                                var title = createImage(bw.ReadBytes(bw.ReadInt32()));
                                var countofseries = bw.ReadInt32();
                                List<FileModel> listofModels = new List<FileModel>();
                                for (int i = 0; i < countofseries; i++)
                                {
                                    var sfName = bw.ReadString();
                                    var sfPathToDownload = bw.ReadString();
                                    var sfSerialName = bw.ReadString();
                                    var sfSerialSize = bw.ReadString();
                                    var sfDownloadStatus = (DownloadStatus)bw.ReadInt32();
                                    listofModels.Add(new FileModel(sfName, sfPathToDownload, sfSerialSize, sfSerialName, subscribeManager.DownLoadManagerModel, sfDownloadStatus));
                                }
                                var sm =
                                    new SerialModel(new SeriaInfo(referenseTofile, filename, size, title, info, true),
                                        subscribeManager, listFileParser);
                                sm.SetSerialListFromCach(listofModels);
                                temp.Add(sm);
                            }
                        }
                    }
                }
                catch (Exception)
                {

                    //TODO
                }

            }
            return temp;
        }