internal ReliableWrapper(ReliableWrapperConfiguration config, ILoggingEventWriter logger) { Contract.Requires(config != null); Contract.Requires(logger != null); _logger = logger; string newFolderForTemporaryStore = TemporaryStoreLockFile.FindNotLockedDirectory(config.FolderForTemporaryStore, out _tempStoreLock); _reader = new TemporaryStoreReader(newFolderForTemporaryStore); _writer = new TemporaryStoreWriter(newFolderForTemporaryStore, config.MaxFileSize); _tokenSource = new CancellationTokenSource(); _readerThread = new Thread(new ParameterizedThreadStart(TemporaryReaderLoop)); _readerThread.IsBackground = true; _readerThread.Name = "AsyncQueueWithReliableSending (reader loop) for logger"; _readerThread.Start(_tokenSource.Token); }
public ReliableWrapper(ReliableWrapperConfiguration config) : this(config, LoggerFactory.CreateWriter(config.InnerWriter)) { }