cowbird.monitoring.monitor

Module Contents

Classes

Monitor

Implementation of the watchdog FileSystemEventHandler class Allows to start/stop directory monitoring and

Attributes

LOGGER

cowbird.monitoring.monitor.LOGGER[source]
exception cowbird.monitoring.monitor.MonitorException[source]

Bases: Exception

Error indicating that a Monitor cannot be started because of an invalid path or callback.

Initialize self. See help(type(self)) for accurate signature.

class cowbird.monitoring.monitor.Monitor(path: str, recursive: bool, callback: Union[cowbird.monitoring.fsmonitor.FSMonitor, Type[cowbird.monitoring.fsmonitor.FSMonitor], str])[source]

Bases: watchdog.events.FileSystemEventHandler

Implementation of the watchdog FileSystemEventHandler class Allows to start/stop directory monitoring and send events to FSMonitor callback.

Initialize the path monitoring and ready to be started.

Parameters
  • path – Path to monitor

  • recursive – Monitor subdirectory recursively?

  • callback – Events are sent to this FSMonitor. Can be an object, a class type implementing FSMonitor or a string containing module and class name. The class type or string is used to instantiate an object using the class method FSMonitor.get_instance()

static get_fsmonitor_instance(callback: Union[cowbird.monitoring.fsmonitor.FSMonitor, Type[cowbird.monitoring.fsmonitor.FSMonitor], str])cowbird.monitoring.fsmonitor.FSMonitor[source]

Return a FSMonitor instance from multiple possible forms including the FSMonitor type, the FSMonitor full qualified class name or a direct instance which is returned as is.

static get_qualified_class_name(monitor: cowbird.monitoring.fsmonitor.FSMonitor)str[source]

Returns the full qualified class name of the FSMonitor object (string of the form module.class_name)

property recursive[source]
property path[source]
property callback[source]
property callback_instance[source]
property keyDict[source]

Return a dict that can be used as a unique key to identify this Monitor in a BD.

property is_alivebool[source]

Returns true if the monitor observer exists and is currently running.

params()Dict[source]

Return a dict serializing this object from which a new Monitor can be recreated using the init function.

start()[source]

Start the monitoring so that events can be fired.

stop()[source]

Stop the monitoring so that events stop to be fired.

on_moved(event: Union[watchdog.events.DirMovedEvent, watchdog.events.FileMovedEvent])None[source]

Called when a file or a directory is moved or renamed.

Parameters

event – Event representing file/directory movement.

on_created(event: Union[watchdog.events.DirCreatedEvent, watchdog.events.FileCreatedEvent])None[source]

Called when a file or directory is created.

Parameters

event – Event representing file/directory creation.

on_deleted(event: Union[watchdog.events.DirDeletedEvent, watchdog.events.FileDeletedEvent])None[source]

Called when a file or directory is deleted.

Parameters

event – Event representing file/directory deletion.

on_modified(event: Union[watchdog.events.DirModifiedEvent, watchdog.events.FileModifiedEvent])None[source]

Called when a file or directory is modified.

Parameters

event – Event representing file/directory modification.