contentmonster/classes/doghandler.py
2021-11-25 10:40:25 +01:00

28 lines
929 B
Python

from watchdog.events import FileSystemEventHandler
import os.path
class DogHandler(FileSystemEventHandler):
def __init__(self, directory, queue, *args, **kwargs):
print("Initialized")
super().__init__(*args, **kwargs)
self._directory = directory
self._queue = queue
def dispatch(self, event):
if not event.is_directory:
super().dispatch(event)
def on_created(self, event):
self._queue.put((self._directory, os.path.basename(event.src_path)))
def on_modified(self, event):
self._queue.put((self._directory, os.path.basename(event.src_path)))
def on_moved(self, event):
self._queue.put((self._directory, os.path.basename(event.src_path)))
self._queue.put((self._directory, os.path.basename(event.dest_path)))
def on_deleted(self, event):
self._queue.put((self._directory, os.path.basename(event.src_path)))