public static Chunk FromCompletedFile(string filename, ChunkManager chunkManager, ChunkManagerConfig config, bool isMemoryChunk) { var chunk = new Chunk(filename, chunkManager, config, isMemoryChunk); try { chunk.InitCompleted(); } catch (OutOfMemoryException) { chunk.Dispose(); throw; } catch (Exception ex) { QueueService.Log.Info(string.Format("Chunk {0} init from completed file failed.", chunk)); XTrace.WriteException(ex); chunk.Dispose(); throw; } return(chunk); }
public static Chunk FromOngoingFile <T>(string filename, ChunkManager chunkManager, ChunkManagerConfig config, Func <byte[], T> readRecordFunc, bool isMemoryChunk) where T : ILogRecord { var chunk = new Chunk(filename, chunkManager, config, isMemoryChunk); try { chunk.InitOngoing(readRecordFunc); } catch (OutOfMemoryException) { chunk.Dispose(); throw; } catch (Exception ex) { QueueService.Log.Info(string.Format("Chunk {0} init from ongoing file failed.", chunk)); XTrace.WriteException(ex); chunk.Dispose(); throw; } return(chunk); }
public static Chunk CreateNew(string filename, int chunkNumber, ChunkManager chunkManager, ChunkManagerConfig config, bool isMemoryChunk) { var chunk = new Chunk(filename, chunkManager, config, isMemoryChunk); try { chunk.InitNew(chunkNumber); } catch (OutOfMemoryException) { chunk.Dispose(); throw; } catch (Exception ex) { QueueService.Log.Info(string.Format("Chunk {0} create failed.", chunk)); XTrace.WriteException(ex); chunk.Dispose(); throw; } return(chunk); }
public ChunkWriter(ChunkManager chunkManager) { Ensure.NotNull(chunkManager, "chunkManager"); _chunkManager = chunkManager; }