public DownloadedFileHandler(string tiddlyWikiFullpath, string tiddlyWikiFilenameWithoutExtension, string tiddlyWikiExtension, ITiddlyWikiWatcherLogger logger) { _tiddlyWikiFullpath = tiddlyWikiFullpath; _tiddlyWikiFilenameWithoutExtension = tiddlyWikiFilenameWithoutExtension; _tiddlyWikiExtension = tiddlyWikiExtension; _logger = logger; _threadContinue = new Semaphore(0, int.MaxValue); _thread = new Thread(new ThreadStart(Main)); _thread.Start(); }
public void Start(string tiddlyWikiFullpath, string downloadsPath, ITiddlyWikiWatcherLogger logger) { if (_watcher != null) { throw new Exception("Already started, can't start again"); } string tiddlyWikiFilenameWithoutExtension = Path.GetFileNameWithoutExtension(tiddlyWikiFullpath); string tiddlyWikiExtension = Path.GetExtension(tiddlyWikiFullpath); //Glue watcher and handler together. Handler on seperate thread, to make watching fast. _handler = new DownloadedFileHandler(tiddlyWikiFullpath, tiddlyWikiFilenameWithoutExtension, tiddlyWikiExtension, logger); _watcher = new DownloadsWatcher(downloadsPath, tiddlyWikiFilenameWithoutExtension + "*" + tiddlyWikiExtension, _handler); }
protected void Dispose(bool disposing) { if (_isDisposed) { return; } _isDisposed = true; /* * if (disposing) * { * } */ _terminate = true; _threadContinue.Release(); _logger = null; }