public void RecordNewFile(FileDescription fd)
        {
            lock (masterFileStream) {
                SetStreamEnd();
                WriteFileDescription(fd);
            }

            FileDescriptions.Add(fd.FileId, fd);
        }
Exemple #2
0
            private FileDesc GetFileDesc(string ext)
            {
                FileDesc res;

                if (FileDescriptions.TryGetValue(ext, out res))
                {
                    return(res);
                }
                else
                {
                    return(FileDescriptions[""]);
                }
            }
        private void LoadFileDescriptions()
        {
            if (masterFileStream != null)
            {
                int offset = 4;

                int fileSize = (int)masterFileStream.Length;
                while (offset + Sizes.FileDescriptionDriveSize <= fileSize)
                {
                    FileDescription fd = ReadFileDescription(offset);
                    if (fd != null && !FileDescriptions.ContainsKey(fd.FileId) && fd.Fts != FileTransferState.Deleted)
                    {
                        FileDescriptions.Add(fd.FileId, fd);
                        Debug.WriteLine("offset:" + offset);
                        Debug.WriteLine("file:" + fd.FileId);
                    }
                    offset += Sizes.FileDescriptionDriveSize;
                }
            }
        }