Esempio n. 1
0
        public virtual ChunkDataDescriptor SaveChunkDataDescriptor(ChunkDataDescriptor xref)
        {
            ChunkDataDescriptor existingXref = Repository
                                               .Query <ChunkDataDescriptor>(
                Filter.Where(nameof(ChunkDataDescriptor.FileHash)) == xref.FileHash &&
                Filter.Where(nameof(ChunkDataDescriptor.ChunkHash)) == xref.ChunkHash &&
                Filter.Where(nameof(ChunkDataDescriptor.ChunkIndex)) == xref.ChunkIndex)
                                               .FirstOrDefault();

            if (existingXref == null)
            {
                existingXref = Repository.Save(xref);
            }
            return(existingXref);
        }
Esempio n. 2
0
        public ChunkedFileDescriptor StoreFileChunks(FileInfo file, string description = null)
        {
            ChunkedFileReader     chunked = new ChunkedFileReader(file, ChunkLength);
            ChunkedFileDescriptor chunkedFileDescriptor = chunked.ToChunkedFileDescriptor(description);

            SaveFileDescriptor(chunkedFileDescriptor);

            foreach (ChunkedFileDataDescriptor chunkFileDataDescriptor in chunked.ToChunkedFileDataDescriptor())
            {
                ChunkData chunk = chunkFileDataDescriptor.ChunkData;
                SaveChunkData(chunk);
                ChunkDataDescriptor xref = chunkFileDataDescriptor.ChunkDataDescriptor;
                SaveChunkDataDescriptor(xref);
            }
            return(chunkedFileDescriptor);
        }
Esempio n. 3
0
 public ChunkDataDescriptor SaveChunkDataDescriptor(ChunkDataDescriptor xref)
 {
     throw new NotImplementedException();
 }