dir watcher and trigger