public static void deleteAllChunksOfFile(String name) { var fileChunks = (from chunk in DfsWorkerUtils.listWorkingDirectory() where chunk.fileName == name select chunk).ToList(); if (fileChunks.Count == 0) { throw new ArgumentException("No chunk of file exists on this worker!"); } foreach (var chunks in fileChunks) { DfsWorkerUtils.deleteChunk(name, chunks.chunkId); } }
public object Delete(DeleteChunk request) { if (request.chunkId < -1) { throw new Exception("Chunk ID can not be negative! (Eventually use -1 to delete all chunks)"); } if (request.chunkId == -1) //delete all chunks of file { DfsWorkerUtils.deleteAllChunksOfFile(request.FileName); } else { DfsWorkerUtils.deleteChunk(request.FileName, request.chunkId); } return(true); }