| Server IP : 54.37.205.81 / Your IP : 216.73.216.76 Web Server : nginx/1.22.1 System : Linux vps-249481fa 6.1.0-50-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.176-1 (2026-07-02) x86_64 User : debian ( 1000) PHP Version : 8.2.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/share/doc/python3-watchdog/html/ |
Upload File : |
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
<title>API Reference — watchdog 2.2.1 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/pyramid.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
<script src="_static/jquery.js"></script>
<script src="_static/underscore.js"></script>
<script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
<script src="_static/doctools.js"></script>
<script src="_static/sphinx_highlight.js"></script>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Contributing" href="hacking.html" />
<link rel="prev" title="Quickstart" href="quickstart.html" />
<!--[if lte IE 6]>
<link rel="stylesheet" href="_static/ie6.css" type="text/css" media="screen" charset="utf-8" />
<![endif]-->
</head><body>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="hacking.html" title="Contributing"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="quickstart.html" title="Quickstart"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">watchdog 2.2.1 documentation</a> »</li>
<li class="nav-item nav-item-this"><a href="">API Reference</a></li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<section id="api-reference">
<h1>API Reference<a class="headerlink" href="#api-reference" title="Permalink to this heading">¶</a></h1>
<section id="module-watchdog.events">
<span id="watchdog-events"></span><h2><cite>watchdog.events</cite><a class="headerlink" href="#module-watchdog.events" title="Permalink to this heading">¶</a></h2>
<dl class="field-list simple">
<dt class="field-odd">module</dt>
<dd class="field-odd"><p>watchdog.events</p>
</dd>
<dt class="field-even">synopsis</dt>
<dd class="field-even"><p>File system events and event handlers.</p>
</dd>
<dt class="field-odd">author</dt>
<dd class="field-odd"><p><a class="reference external" href="mailto:yesudeep%40google.com">yesudeep<span>@</span>google<span>.</span>com</a> (Yesudeep Mangalapilly)</p>
</dd>
<dt class="field-even">author</dt>
<dd class="field-even"><p><a class="reference external" href="mailto:contact%40tiger-222.fr">contact<span>@</span>tiger-222<span>.</span>fr</a> (Mickaël Schoentgen)</p>
</dd>
</dl>
<section id="event-classes">
<h3>Event Classes<a class="headerlink" href="#event-classes" title="Permalink to this heading">¶</a></h3>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.FileSystemEvent">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">FileSystemEvent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">src_path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileSystemEvent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileSystemEvent" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>Immutable type that represents a file system event that is triggered
when a change occurs on the monitored file system.</p>
<p>All FileSystemEvent objects are required to be immutable and hence
can be used as keys in dictionaries or be added to sets.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.FileSystemEvent.event_type">
<span class="sig-name descname"><span class="pre">event_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">None</span></em><a class="headerlink" href="#watchdog.events.FileSystemEvent.event_type" title="Permalink to this definition">¶</a></dt>
<dd><p>The type of the event as a string.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.FileSystemEvent.is_directory">
<span class="sig-name descname"><span class="pre">is_directory</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">False</span></em><a class="headerlink" href="#watchdog.events.FileSystemEvent.is_directory" title="Permalink to this definition">¶</a></dt>
<dd><p>True if event was emitted for a directory; False otherwise.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.FileSystemEvent.is_synthetic">
<span class="sig-name descname"><span class="pre">is_synthetic</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">False</span></em><a class="headerlink" href="#watchdog.events.FileSystemEvent.is_synthetic" title="Permalink to this definition">¶</a></dt>
<dd><p>True if event was synthesized; False otherwise.</p>
<p>These are events that weren’t actually broadcast by the OS, but
are presumed to have happened based on other, actual events.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.events.FileSystemEvent.src_path">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">src_path</span></span><a class="headerlink" href="#watchdog.events.FileSystemEvent.src_path" title="Permalink to this definition">¶</a></dt>
<dd><p>Source path of the file system object that triggered this event.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.FileSystemMovedEvent">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">FileSystemMovedEvent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">src_path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dest_path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileSystemMovedEvent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileSystemMovedEvent" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.FileSystemEvent" title="watchdog.events.FileSystemEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code></a></p>
<p>File system event representing any kind of file system movement.</p>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.events.FileSystemMovedEvent.dest_path">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">dest_path</span></span><a class="headerlink" href="#watchdog.events.FileSystemMovedEvent.dest_path" title="Permalink to this definition">¶</a></dt>
<dd><p>The destination path of the move event.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.FileSystemMovedEvent.event_type">
<span class="sig-name descname"><span class="pre">event_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'moved'</span></em><a class="headerlink" href="#watchdog.events.FileSystemMovedEvent.event_type" title="Permalink to this definition">¶</a></dt>
<dd><p>The type of the event as a string.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.FileMovedEvent">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">FileMovedEvent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">src_path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dest_path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileMovedEvent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileMovedEvent" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.FileSystemMovedEvent" title="watchdog.events.FileSystemMovedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemMovedEvent</span></code></a></p>
<p>File system event representing file movement on the file system.</p>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.DirMovedEvent">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">DirMovedEvent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">src_path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dest_path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#DirMovedEvent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.DirMovedEvent" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.FileSystemMovedEvent" title="watchdog.events.FileSystemMovedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemMovedEvent</span></code></a></p>
<p>File system event representing directory movement on the file system.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.DirMovedEvent.is_directory">
<span class="sig-name descname"><span class="pre">is_directory</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">True</span></em><a class="headerlink" href="#watchdog.events.DirMovedEvent.is_directory" title="Permalink to this definition">¶</a></dt>
<dd><p>True if event was emitted for a directory; False otherwise.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.FileModifiedEvent">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">FileModifiedEvent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">src_path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileModifiedEvent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileModifiedEvent" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.FileSystemEvent" title="watchdog.events.FileSystemEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code></a></p>
<p>File system event representing file modification on the file system.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.FileModifiedEvent.event_type">
<span class="sig-name descname"><span class="pre">event_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'modified'</span></em><a class="headerlink" href="#watchdog.events.FileModifiedEvent.event_type" title="Permalink to this definition">¶</a></dt>
<dd><p>The type of the event as a string.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.DirModifiedEvent">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">DirModifiedEvent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">src_path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#DirModifiedEvent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.DirModifiedEvent" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.FileSystemEvent" title="watchdog.events.FileSystemEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code></a></p>
<p>File system event representing directory modification on the file system.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.DirModifiedEvent.event_type">
<span class="sig-name descname"><span class="pre">event_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'modified'</span></em><a class="headerlink" href="#watchdog.events.DirModifiedEvent.event_type" title="Permalink to this definition">¶</a></dt>
<dd><p>The type of the event as a string.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.DirModifiedEvent.is_directory">
<span class="sig-name descname"><span class="pre">is_directory</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">True</span></em><a class="headerlink" href="#watchdog.events.DirModifiedEvent.is_directory" title="Permalink to this definition">¶</a></dt>
<dd><p>True if event was emitted for a directory; False otherwise.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.FileCreatedEvent">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">FileCreatedEvent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">src_path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileCreatedEvent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileCreatedEvent" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.FileSystemEvent" title="watchdog.events.FileSystemEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code></a></p>
<p>File system event representing file creation on the file system.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.FileCreatedEvent.event_type">
<span class="sig-name descname"><span class="pre">event_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'created'</span></em><a class="headerlink" href="#watchdog.events.FileCreatedEvent.event_type" title="Permalink to this definition">¶</a></dt>
<dd><p>The type of the event as a string.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.FileClosedEvent">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">FileClosedEvent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">src_path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileClosedEvent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileClosedEvent" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.FileSystemEvent" title="watchdog.events.FileSystemEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code></a></p>
<p>File system event representing file close on the file system.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.FileClosedEvent.event_type">
<span class="sig-name descname"><span class="pre">event_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'closed'</span></em><a class="headerlink" href="#watchdog.events.FileClosedEvent.event_type" title="Permalink to this definition">¶</a></dt>
<dd><p>The type of the event as a string.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.DirCreatedEvent">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">DirCreatedEvent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">src_path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#DirCreatedEvent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.DirCreatedEvent" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.FileSystemEvent" title="watchdog.events.FileSystemEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code></a></p>
<p>File system event representing directory creation on the file system.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.DirCreatedEvent.event_type">
<span class="sig-name descname"><span class="pre">event_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'created'</span></em><a class="headerlink" href="#watchdog.events.DirCreatedEvent.event_type" title="Permalink to this definition">¶</a></dt>
<dd><p>The type of the event as a string.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.DirCreatedEvent.is_directory">
<span class="sig-name descname"><span class="pre">is_directory</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">True</span></em><a class="headerlink" href="#watchdog.events.DirCreatedEvent.is_directory" title="Permalink to this definition">¶</a></dt>
<dd><p>True if event was emitted for a directory; False otherwise.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.FileDeletedEvent">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">FileDeletedEvent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">src_path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileDeletedEvent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileDeletedEvent" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.FileSystemEvent" title="watchdog.events.FileSystemEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code></a></p>
<p>File system event representing file deletion on the file system.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.FileDeletedEvent.event_type">
<span class="sig-name descname"><span class="pre">event_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'deleted'</span></em><a class="headerlink" href="#watchdog.events.FileDeletedEvent.event_type" title="Permalink to this definition">¶</a></dt>
<dd><p>The type of the event as a string.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.DirDeletedEvent">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">DirDeletedEvent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">src_path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#DirDeletedEvent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.DirDeletedEvent" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.FileSystemEvent" title="watchdog.events.FileSystemEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code></a></p>
<p>File system event representing directory deletion on the file system.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.DirDeletedEvent.event_type">
<span class="sig-name descname"><span class="pre">event_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'deleted'</span></em><a class="headerlink" href="#watchdog.events.DirDeletedEvent.event_type" title="Permalink to this definition">¶</a></dt>
<dd><p>The type of the event as a string.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.events.DirDeletedEvent.is_directory">
<span class="sig-name descname"><span class="pre">is_directory</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">True</span></em><a class="headerlink" href="#watchdog.events.DirDeletedEvent.is_directory" title="Permalink to this definition">¶</a></dt>
<dd><p>True if event was emitted for a directory; False otherwise.</p>
</dd></dl>
</dd></dl>
</section>
<section id="event-handler-classes">
<h3>Event Handler Classes<a class="headerlink" href="#event-handler-classes" title="Permalink to this heading">¶</a></h3>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.FileSystemEventHandler">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">FileSystemEventHandler</span></span><a class="reference internal" href="_modules/watchdog/events.html#FileSystemEventHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileSystemEventHandler" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>Base file system event handler that you can override methods from.</p>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.events.FileSystemEventHandler.dispatch">
<span class="sig-name descname"><span class="pre">dispatch</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileSystemEventHandler.dispatch"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileSystemEventHandler.dispatch" title="Permalink to this definition">¶</a></dt>
<dd><p>Dispatches events to the appropriate methods.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<a class="reference internal" href="#watchdog.events.FileSystemEvent" title="watchdog.events.FileSystemEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code></a>) – The event object representing the file system event.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.events.FileSystemEventHandler.on_any_event">
<span class="sig-name descname"><span class="pre">on_any_event</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileSystemEventHandler.on_any_event"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileSystemEventHandler.on_any_event" title="Permalink to this definition">¶</a></dt>
<dd><p>Catch-all event handler.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<a class="reference internal" href="#watchdog.events.FileSystemEvent" title="watchdog.events.FileSystemEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code></a>) – The event object representing the file system event.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.events.FileSystemEventHandler.on_closed">
<span class="sig-name descname"><span class="pre">on_closed</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileSystemEventHandler.on_closed"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileSystemEventHandler.on_closed" title="Permalink to this definition">¶</a></dt>
<dd><p>Called when a file opened for writing is closed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<a class="reference internal" href="#watchdog.events.FileClosedEvent" title="watchdog.events.FileClosedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileClosedEvent</span></code></a>) – Event representing file closing.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.events.FileSystemEventHandler.on_created">
<span class="sig-name descname"><span class="pre">on_created</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileSystemEventHandler.on_created"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileSystemEventHandler.on_created" title="Permalink to this definition">¶</a></dt>
<dd><p>Called when a file or directory is created.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<a class="reference internal" href="#watchdog.events.DirCreatedEvent" title="watchdog.events.DirCreatedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">DirCreatedEvent</span></code></a> or <a class="reference internal" href="#watchdog.events.FileCreatedEvent" title="watchdog.events.FileCreatedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileCreatedEvent</span></code></a>) – Event representing file/directory creation.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.events.FileSystemEventHandler.on_deleted">
<span class="sig-name descname"><span class="pre">on_deleted</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileSystemEventHandler.on_deleted"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileSystemEventHandler.on_deleted" title="Permalink to this definition">¶</a></dt>
<dd><p>Called when a file or directory is deleted.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<a class="reference internal" href="#watchdog.events.DirDeletedEvent" title="watchdog.events.DirDeletedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">DirDeletedEvent</span></code></a> or <a class="reference internal" href="#watchdog.events.FileDeletedEvent" title="watchdog.events.FileDeletedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileDeletedEvent</span></code></a>) – Event representing file/directory deletion.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.events.FileSystemEventHandler.on_modified">
<span class="sig-name descname"><span class="pre">on_modified</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileSystemEventHandler.on_modified"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileSystemEventHandler.on_modified" title="Permalink to this definition">¶</a></dt>
<dd><p>Called when a file or directory is modified.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<a class="reference internal" href="#watchdog.events.DirModifiedEvent" title="watchdog.events.DirModifiedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">DirModifiedEvent</span></code></a> or <a class="reference internal" href="#watchdog.events.FileModifiedEvent" title="watchdog.events.FileModifiedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileModifiedEvent</span></code></a>) – Event representing file/directory modification.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.events.FileSystemEventHandler.on_moved">
<span class="sig-name descname"><span class="pre">on_moved</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#FileSystemEventHandler.on_moved"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.FileSystemEventHandler.on_moved" title="Permalink to this definition">¶</a></dt>
<dd><p>Called when a file or a directory is moved or renamed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<a class="reference internal" href="#watchdog.events.DirMovedEvent" title="watchdog.events.DirMovedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">DirMovedEvent</span></code></a> or <a class="reference internal" href="#watchdog.events.FileMovedEvent" title="watchdog.events.FileMovedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileMovedEvent</span></code></a>) – Event representing file/directory movement.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.PatternMatchingEventHandler">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">PatternMatchingEventHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">patterns</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_patterns</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_directories</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">case_sensitive</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#PatternMatchingEventHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.PatternMatchingEventHandler" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.FileSystemEventHandler" title="watchdog.events.FileSystemEventHandler"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEventHandler</span></code></a></p>
<p>Matches given patterns with file paths associated with occurring events.</p>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.events.PatternMatchingEventHandler.case_sensitive">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">case_sensitive</span></span><a class="headerlink" href="#watchdog.events.PatternMatchingEventHandler.case_sensitive" title="Permalink to this definition">¶</a></dt>
<dd><p>(Read-only)
<code class="docutils literal notranslate"><span class="pre">True</span></code> if path names should be matched sensitive to case; <code class="docutils literal notranslate"><span class="pre">False</span></code>
otherwise.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.events.PatternMatchingEventHandler.dispatch">
<span class="sig-name descname"><span class="pre">dispatch</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#PatternMatchingEventHandler.dispatch"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.PatternMatchingEventHandler.dispatch" title="Permalink to this definition">¶</a></dt>
<dd><p>Dispatches events to the appropriate methods.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<a class="reference internal" href="#watchdog.events.FileSystemEvent" title="watchdog.events.FileSystemEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code></a>) – The event object representing the file system event.</p>
</dd>
</dl>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.events.PatternMatchingEventHandler.ignore_directories">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">ignore_directories</span></span><a class="headerlink" href="#watchdog.events.PatternMatchingEventHandler.ignore_directories" title="Permalink to this definition">¶</a></dt>
<dd><p>(Read-only)
<code class="docutils literal notranslate"><span class="pre">True</span></code> if directories should be ignored; <code class="docutils literal notranslate"><span class="pre">False</span></code> otherwise.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.events.PatternMatchingEventHandler.ignore_patterns">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">ignore_patterns</span></span><a class="headerlink" href="#watchdog.events.PatternMatchingEventHandler.ignore_patterns" title="Permalink to this definition">¶</a></dt>
<dd><p>(Read-only)
Patterns to ignore matching event paths.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.events.PatternMatchingEventHandler.patterns">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">patterns</span></span><a class="headerlink" href="#watchdog.events.PatternMatchingEventHandler.patterns" title="Permalink to this definition">¶</a></dt>
<dd><p>(Read-only)
Patterns to allow matching event paths.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.RegexMatchingEventHandler">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">RegexMatchingEventHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">regexes</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_regexes</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_directories</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">case_sensitive</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#RegexMatchingEventHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.RegexMatchingEventHandler" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.FileSystemEventHandler" title="watchdog.events.FileSystemEventHandler"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEventHandler</span></code></a></p>
<p>Matches given regexes with file paths associated with occurring events.</p>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.events.RegexMatchingEventHandler.case_sensitive">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">case_sensitive</span></span><a class="headerlink" href="#watchdog.events.RegexMatchingEventHandler.case_sensitive" title="Permalink to this definition">¶</a></dt>
<dd><p>(Read-only)
<code class="docutils literal notranslate"><span class="pre">True</span></code> if path names should be matched sensitive to case; <code class="docutils literal notranslate"><span class="pre">False</span></code>
otherwise.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.events.RegexMatchingEventHandler.dispatch">
<span class="sig-name descname"><span class="pre">dispatch</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#RegexMatchingEventHandler.dispatch"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.RegexMatchingEventHandler.dispatch" title="Permalink to this definition">¶</a></dt>
<dd><p>Dispatches events to the appropriate methods.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<a class="reference internal" href="#watchdog.events.FileSystemEvent" title="watchdog.events.FileSystemEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code></a>) – The event object representing the file system event.</p>
</dd>
</dl>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.events.RegexMatchingEventHandler.ignore_directories">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">ignore_directories</span></span><a class="headerlink" href="#watchdog.events.RegexMatchingEventHandler.ignore_directories" title="Permalink to this definition">¶</a></dt>
<dd><p>(Read-only)
<code class="docutils literal notranslate"><span class="pre">True</span></code> if directories should be ignored; <code class="docutils literal notranslate"><span class="pre">False</span></code> otherwise.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.events.RegexMatchingEventHandler.ignore_regexes">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">ignore_regexes</span></span><a class="headerlink" href="#watchdog.events.RegexMatchingEventHandler.ignore_regexes" title="Permalink to this definition">¶</a></dt>
<dd><p>(Read-only)
Regexes to ignore matching event paths.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.events.RegexMatchingEventHandler.regexes">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">regexes</span></span><a class="headerlink" href="#watchdog.events.RegexMatchingEventHandler.regexes" title="Permalink to this definition">¶</a></dt>
<dd><p>(Read-only)
Regexes to allow matching event paths.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.events.LoggingEventHandler">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.events.</span></span><span class="sig-name descname"><span class="pre">LoggingEventHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">logger</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#LoggingEventHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.LoggingEventHandler" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.FileSystemEventHandler" title="watchdog.events.FileSystemEventHandler"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEventHandler</span></code></a></p>
<p>Logs all the events captured.</p>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.events.LoggingEventHandler.on_created">
<span class="sig-name descname"><span class="pre">on_created</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#LoggingEventHandler.on_created"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.LoggingEventHandler.on_created" title="Permalink to this definition">¶</a></dt>
<dd><p>Called when a file or directory is created.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<a class="reference internal" href="#watchdog.events.DirCreatedEvent" title="watchdog.events.DirCreatedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">DirCreatedEvent</span></code></a> or <a class="reference internal" href="#watchdog.events.FileCreatedEvent" title="watchdog.events.FileCreatedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileCreatedEvent</span></code></a>) – Event representing file/directory creation.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.events.LoggingEventHandler.on_deleted">
<span class="sig-name descname"><span class="pre">on_deleted</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#LoggingEventHandler.on_deleted"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.LoggingEventHandler.on_deleted" title="Permalink to this definition">¶</a></dt>
<dd><p>Called when a file or directory is deleted.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<a class="reference internal" href="#watchdog.events.DirDeletedEvent" title="watchdog.events.DirDeletedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">DirDeletedEvent</span></code></a> or <a class="reference internal" href="#watchdog.events.FileDeletedEvent" title="watchdog.events.FileDeletedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileDeletedEvent</span></code></a>) – Event representing file/directory deletion.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.events.LoggingEventHandler.on_modified">
<span class="sig-name descname"><span class="pre">on_modified</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#LoggingEventHandler.on_modified"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.LoggingEventHandler.on_modified" title="Permalink to this definition">¶</a></dt>
<dd><p>Called when a file or directory is modified.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<a class="reference internal" href="#watchdog.events.DirModifiedEvent" title="watchdog.events.DirModifiedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">DirModifiedEvent</span></code></a> or <a class="reference internal" href="#watchdog.events.FileModifiedEvent" title="watchdog.events.FileModifiedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileModifiedEvent</span></code></a>) – Event representing file/directory modification.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.events.LoggingEventHandler.on_moved">
<span class="sig-name descname"><span class="pre">on_moved</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/events.html#LoggingEventHandler.on_moved"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.events.LoggingEventHandler.on_moved" title="Permalink to this definition">¶</a></dt>
<dd><p>Called when a file or a directory is moved or renamed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<a class="reference internal" href="#watchdog.events.DirMovedEvent" title="watchdog.events.DirMovedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">DirMovedEvent</span></code></a> or <a class="reference internal" href="#watchdog.events.FileMovedEvent" title="watchdog.events.FileMovedEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">FileMovedEvent</span></code></a>) – Event representing file/directory movement.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
</section>
</section>
<section id="module-watchdog.observers.api">
<span id="watchdog-observers-api"></span><h2><cite>watchdog.observers.api</cite><a class="headerlink" href="#module-watchdog.observers.api" title="Permalink to this heading">¶</a></h2>
<section id="immutables">
<h3>Immutables<a class="headerlink" href="#immutables" title="Permalink to this heading">¶</a></h3>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.observers.api.ObservedWatch">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.observers.api.</span></span><span class="sig-name descname"><span class="pre">ObservedWatch</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">recursive</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#ObservedWatch"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.ObservedWatch" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>An scheduled watch.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>path</strong> – Path string.</p></li>
<li><p><strong>recursive</strong> – <code class="docutils literal notranslate"><span class="pre">True</span></code> if watch is recursive; <code class="docutils literal notranslate"><span class="pre">False</span></code> otherwise.</p></li>
</ul>
</dd>
</dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.observers.api.ObservedWatch.is_recursive">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">is_recursive</span></span><a class="headerlink" href="#watchdog.observers.api.ObservedWatch.is_recursive" title="Permalink to this definition">¶</a></dt>
<dd><p>Determines whether subdirectories are watched for the path.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.observers.api.ObservedWatch.path">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">path</span></span><a class="headerlink" href="#watchdog.observers.api.ObservedWatch.path" title="Permalink to this definition">¶</a></dt>
<dd><p>The path that this watch monitors.</p>
</dd></dl>
</dd></dl>
</section>
<section id="collections">
<h3>Collections<a class="headerlink" href="#collections" title="Permalink to this heading">¶</a></h3>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.observers.api.EventQueue">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.observers.api.</span></span><span class="sig-name descname"><span class="pre">EventQueue</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">maxsize</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#EventQueue"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.EventQueue" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">SkipRepeatsQueue</span></code></p>
<p>Thread-safe event queue based on a special queue that skips adding
the same event (<code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code>) multiple times consecutively.
Thus avoiding dispatching multiple event handling
calls when multiple identical events are produced quicker than an observer
can consume them.</p>
</dd></dl>
</section>
<section id="classes">
<h3>Classes<a class="headerlink" href="#classes" title="Permalink to this heading">¶</a></h3>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.observers.api.EventEmitter">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.observers.api.</span></span><span class="sig-name descname"><span class="pre">EventEmitter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event_queue</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">watch</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">timeout</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#EventEmitter"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.EventEmitter" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.utils.BaseThread" title="watchdog.utils.BaseThread"><code class="xref py py-class docutils literal notranslate"><span class="pre">BaseThread</span></code></a></p>
<p>Producer thread base class subclassed by event emitters
that generate events and populate a queue with them.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>event_queue</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">watchdog.events.EventQueue</span></code>) – The event queue to populate with generated events.</p></li>
<li><p><strong>watch</strong> (<a class="reference internal" href="#watchdog.observers.api.ObservedWatch" title="watchdog.observers.api.ObservedWatch"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObservedWatch</span></code></a>) – The watch to observe and produce events for.</p></li>
<li><p><strong>timeout</strong> (<code class="docutils literal notranslate"><span class="pre">float</span></code>) – Timeout (in seconds) between successive attempts at reading events.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.EventEmitter.queue_event">
<span class="sig-name descname"><span class="pre">queue_event</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#EventEmitter.queue_event"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.EventEmitter.queue_event" title="Permalink to this definition">¶</a></dt>
<dd><p>Queues a single event.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (An instance of <a class="reference internal" href="#watchdog.events.FileSystemEvent" title="watchdog.events.FileSystemEvent"><code class="xref py py-class docutils literal notranslate"><span class="pre">watchdog.events.FileSystemEvent</span></code></a>
or a subclass.) – Event to be queued.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.EventEmitter.queue_events">
<span class="sig-name descname"><span class="pre">queue_events</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">timeout</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#EventEmitter.queue_events"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.EventEmitter.queue_events" title="Permalink to this definition">¶</a></dt>
<dd><p>Override this method to populate the event queue with events
per interval period.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>timeout</strong> (<code class="docutils literal notranslate"><span class="pre">float</span></code>) – Timeout (in seconds) between successive attempts at
reading events.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.EventEmitter.run">
<span class="sig-name descname"><span class="pre">run</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#EventEmitter.run"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.EventEmitter.run" title="Permalink to this definition">¶</a></dt>
<dd><p>Method representing the thread’s activity.</p>
<p>You may override this method in a subclass. The standard run() method
invokes the callable object passed to the object’s constructor as the
target argument, if any, with sequential and keyword arguments taken
from the args and kwargs arguments, respectively.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.observers.api.EventEmitter.timeout">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">timeout</span></span><a class="headerlink" href="#watchdog.observers.api.EventEmitter.timeout" title="Permalink to this definition">¶</a></dt>
<dd><p>Blocking timeout for reading events.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.observers.api.EventEmitter.watch">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">watch</span></span><a class="headerlink" href="#watchdog.observers.api.EventEmitter.watch" title="Permalink to this definition">¶</a></dt>
<dd><p>The watch associated with this emitter.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.observers.api.EventDispatcher">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.observers.api.</span></span><span class="sig-name descname"><span class="pre">EventDispatcher</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">timeout</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#EventDispatcher"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.EventDispatcher" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.utils.BaseThread" title="watchdog.utils.BaseThread"><code class="xref py py-class docutils literal notranslate"><span class="pre">BaseThread</span></code></a></p>
<p>Consumer thread base class subclassed by event observer threads
that dispatch events from an event queue to appropriate event handlers.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>timeout</strong> (<code class="docutils literal notranslate"><span class="pre">float</span></code>) – Timeout value (in seconds) passed to emitters
constructions in the child class BaseObserver.</p>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.EventDispatcher.dispatch_events">
<span class="sig-name descname"><span class="pre">dispatch_events</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event_queue</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#EventDispatcher.dispatch_events"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.EventDispatcher.dispatch_events" title="Permalink to this definition">¶</a></dt>
<dd><p>Override this method to consume events from an event queue, blocking
on the queue for the specified timeout before raising <code class="xref py py-class docutils literal notranslate"><span class="pre">queue.Empty</span></code>.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event_queue</strong> (<a class="reference internal" href="#watchdog.observers.api.EventQueue" title="watchdog.observers.api.EventQueue"><code class="xref py py-class docutils literal notranslate"><span class="pre">EventQueue</span></code></a>) – Event queue to populate with one set of events.</p>
</dd>
<dt class="field-even">Raises</dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">queue.Empty</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.observers.api.EventDispatcher.event_queue">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">event_queue</span></span><a class="headerlink" href="#watchdog.observers.api.EventDispatcher.event_queue" title="Permalink to this definition">¶</a></dt>
<dd><p>The event queue which is populated with file system events
by emitters and from which events are dispatched by a dispatcher
thread.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.EventDispatcher.run">
<span class="sig-name descname"><span class="pre">run</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#EventDispatcher.run"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.EventDispatcher.run" title="Permalink to this definition">¶</a></dt>
<dd><p>Method representing the thread’s activity.</p>
<p>You may override this method in a subclass. The standard run() method
invokes the callable object passed to the object’s constructor as the
target argument, if any, with sequential and keyword arguments taken
from the args and kwargs arguments, respectively.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.EventDispatcher.stop">
<span class="sig-name descname"><span class="pre">stop</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#EventDispatcher.stop"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.EventDispatcher.stop" title="Permalink to this definition">¶</a></dt>
<dd><p>Signals the thread to stop.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.observers.api.EventDispatcher.timeout">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">timeout</span></span><a class="headerlink" href="#watchdog.observers.api.EventDispatcher.timeout" title="Permalink to this definition">¶</a></dt>
<dd><p>Timeout value to construct emitters with.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.observers.api.BaseObserver">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.observers.api.</span></span><span class="sig-name descname"><span class="pre">BaseObserver</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">emitter_class</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">timeout</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#BaseObserver"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.BaseObserver" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.observers.api.EventDispatcher" title="watchdog.observers.api.EventDispatcher"><code class="xref py py-class docutils literal notranslate"><span class="pre">EventDispatcher</span></code></a></p>
<p>Base observer.</p>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.BaseObserver.add_handler_for_watch">
<span class="sig-name descname"><span class="pre">add_handler_for_watch</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event_handler</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">watch</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#BaseObserver.add_handler_for_watch"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.BaseObserver.add_handler_for_watch" title="Permalink to this definition">¶</a></dt>
<dd><p>Adds a handler for the given watch.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>event_handler</strong> (<a class="reference internal" href="#watchdog.events.FileSystemEventHandler" title="watchdog.events.FileSystemEventHandler"><code class="xref py py-class docutils literal notranslate"><span class="pre">watchdog.events.FileSystemEventHandler</span></code></a> or a subclass) – An event handler instance that has appropriate event handling
methods which will be called by the observer in response to
file system events.</p></li>
<li><p><strong>watch</strong> (An instance of <a class="reference internal" href="#watchdog.observers.api.ObservedWatch" title="watchdog.observers.api.ObservedWatch"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObservedWatch</span></code></a> or a subclass of
<a class="reference internal" href="#watchdog.observers.api.ObservedWatch" title="watchdog.observers.api.ObservedWatch"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObservedWatch</span></code></a>) – The watch to add a handler for.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.BaseObserver.dispatch_events">
<span class="sig-name descname"><span class="pre">dispatch_events</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event_queue</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#BaseObserver.dispatch_events"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.BaseObserver.dispatch_events" title="Permalink to this definition">¶</a></dt>
<dd><p>Override this method to consume events from an event queue, blocking
on the queue for the specified timeout before raising <code class="xref py py-class docutils literal notranslate"><span class="pre">queue.Empty</span></code>.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event_queue</strong> (<a class="reference internal" href="#watchdog.observers.api.EventQueue" title="watchdog.observers.api.EventQueue"><code class="xref py py-class docutils literal notranslate"><span class="pre">EventQueue</span></code></a>) – Event queue to populate with one set of events.</p>
</dd>
<dt class="field-even">Raises</dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">queue.Empty</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.observers.api.BaseObserver.emitters">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">emitters</span></span><a class="headerlink" href="#watchdog.observers.api.BaseObserver.emitters" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns event emitter created by this observer.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.BaseObserver.on_thread_stop">
<span class="sig-name descname"><span class="pre">on_thread_stop</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#BaseObserver.on_thread_stop"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.BaseObserver.on_thread_stop" title="Permalink to this definition">¶</a></dt>
<dd><p>Override this method instead of <code class="xref py py-meth docutils literal notranslate"><span class="pre">stop()</span></code>.
<code class="xref py py-meth docutils literal notranslate"><span class="pre">stop()</span></code> calls this method.</p>
<p>This method is called immediately after the thread is signaled to stop.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.BaseObserver.remove_handler_for_watch">
<span class="sig-name descname"><span class="pre">remove_handler_for_watch</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event_handler</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">watch</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#BaseObserver.remove_handler_for_watch"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.BaseObserver.remove_handler_for_watch" title="Permalink to this definition">¶</a></dt>
<dd><p>Removes a handler for the given watch.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>event_handler</strong> (<a class="reference internal" href="#watchdog.events.FileSystemEventHandler" title="watchdog.events.FileSystemEventHandler"><code class="xref py py-class docutils literal notranslate"><span class="pre">watchdog.events.FileSystemEventHandler</span></code></a> or a subclass) – An event handler instance that has appropriate event handling
methods which will be called by the observer in response to
file system events.</p></li>
<li><p><strong>watch</strong> (An instance of <a class="reference internal" href="#watchdog.observers.api.ObservedWatch" title="watchdog.observers.api.ObservedWatch"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObservedWatch</span></code></a> or a subclass of
<a class="reference internal" href="#watchdog.observers.api.ObservedWatch" title="watchdog.observers.api.ObservedWatch"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObservedWatch</span></code></a>) – The watch to remove a handler for.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.BaseObserver.schedule">
<span class="sig-name descname"><span class="pre">schedule</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event_handler</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">recursive</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#BaseObserver.schedule"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.BaseObserver.schedule" title="Permalink to this definition">¶</a></dt>
<dd><p>Schedules watching a path and calls appropriate methods specified
in the given event handler in response to file system events.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>event_handler</strong> (<a class="reference internal" href="#watchdog.events.FileSystemEventHandler" title="watchdog.events.FileSystemEventHandler"><code class="xref py py-class docutils literal notranslate"><span class="pre">watchdog.events.FileSystemEventHandler</span></code></a> or a subclass) – An event handler instance that has appropriate event handling
methods which will be called by the observer in response to
file system events.</p></li>
<li><p><strong>path</strong> (<code class="docutils literal notranslate"><span class="pre">str</span></code>) – Directory path that will be monitored.</p></li>
<li><p><strong>recursive</strong> (<code class="docutils literal notranslate"><span class="pre">bool</span></code>) – <code class="docutils literal notranslate"><span class="pre">True</span></code> if events will be emitted for sub-directories
traversed recursively; <code class="docutils literal notranslate"><span class="pre">False</span></code> otherwise.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>An <a class="reference internal" href="#watchdog.observers.api.ObservedWatch" title="watchdog.observers.api.ObservedWatch"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObservedWatch</span></code></a> object instance representing
a watch.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.BaseObserver.start">
<span class="sig-name descname"><span class="pre">start</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#BaseObserver.start"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.BaseObserver.start" title="Permalink to this definition">¶</a></dt>
<dd><p>Start the thread’s activity.</p>
<p>It must be called at most once per thread object. It arranges for the
object’s run() method to be invoked in a separate thread of control.</p>
<p>This method will raise a RuntimeError if called more than once on the
same thread object.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.BaseObserver.unschedule">
<span class="sig-name descname"><span class="pre">unschedule</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">watch</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#BaseObserver.unschedule"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.BaseObserver.unschedule" title="Permalink to this definition">¶</a></dt>
<dd><p>Unschedules a watch.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>watch</strong> (An instance of <a class="reference internal" href="#watchdog.observers.api.ObservedWatch" title="watchdog.observers.api.ObservedWatch"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObservedWatch</span></code></a> or a subclass of
<a class="reference internal" href="#watchdog.observers.api.ObservedWatch" title="watchdog.observers.api.ObservedWatch"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObservedWatch</span></code></a>) – The watch to unschedule.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.api.BaseObserver.unschedule_all">
<span class="sig-name descname"><span class="pre">unschedule_all</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/api.html#BaseObserver.unschedule_all"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.api.BaseObserver.unschedule_all" title="Permalink to this definition">¶</a></dt>
<dd><p>Unschedules all watches and detaches all associated event
handlers.</p>
</dd></dl>
</dd></dl>
</section>
</section>
<section id="module-watchdog.observers">
<span id="watchdog-observers"></span><h2><cite>watchdog.observers</cite><a class="headerlink" href="#module-watchdog.observers" title="Permalink to this heading">¶</a></h2>
<dl class="field-list simple">
<dt class="field-odd">module</dt>
<dd class="field-odd"><p>watchdog.observers</p>
</dd>
<dt class="field-even">synopsis</dt>
<dd class="field-even"><p>Observer that picks a native implementation if available.</p>
</dd>
<dt class="field-odd">author</dt>
<dd class="field-odd"><p><a class="reference external" href="mailto:yesudeep%40google.com">yesudeep<span>@</span>google<span>.</span>com</a> (Yesudeep Mangalapilly)</p>
</dd>
<dt class="field-even">author</dt>
<dd class="field-even"><p><a class="reference external" href="mailto:contact%40tiger-222.fr">contact<span>@</span>tiger-222<span>.</span>fr</a> (Mickaël Schoentgen)</p>
</dd>
</dl>
<section id="id1">
<h3>Classes<a class="headerlink" href="#id1" title="Permalink to this heading">¶</a></h3>
<dl class="py attribute">
<dt class="sig sig-object py" id="watchdog.observers.Observer">
<span class="sig-prename descclassname"><span class="pre">watchdog.observers.</span></span><span class="sig-name descname"><span class="pre">Observer</span></span><a class="headerlink" href="#watchdog.observers.Observer" title="Permalink to this definition">¶</a></dt>
<dd><p>alias of <code class="xref py py-class docutils literal notranslate"><span class="pre">InotifyObserver</span></code></p>
</dd></dl>
<p>Observer thread that schedules watching directories and dispatches
calls to event handlers.</p>
<p>You can also import platform specific classes directly and use it instead
of <a class="reference internal" href="#watchdog.observers.Observer" title="watchdog.observers.Observer"><code class="xref py py-class docutils literal notranslate"><span class="pre">Observer</span></code></a>. Here is a list of implemented observer classes.:</p>
<table class="docutils align-default">
<colgroup>
<col style="width: 18%" />
<col style="width: 42%" />
<col style="width: 39%" />
</colgroup>
<thead>
<tr class="row-odd"><th class="head"><p>Class</p></th>
<th class="head"><p>Platforms</p></th>
<th class="head"><p>Note</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p><code class="xref py py-class docutils literal notranslate"><span class="pre">inotify.InotifyObserver</span></code></p></td>
<td><p>Linux 2.6.13+</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">inotify(7)</span></code> based observer</p></td>
</tr>
<tr class="row-odd"><td><p><code class="xref py py-class docutils literal notranslate"><span class="pre">fsevents.FSEventsObserver</span></code></p></td>
<td><p>macOS</p></td>
<td><p>FSEvents based observer</p></td>
</tr>
<tr class="row-even"><td><p><code class="xref py py-class docutils literal notranslate"><span class="pre">kqueue.KqueueObserver</span></code></p></td>
<td><p>macOS and BSD with kqueue(2)</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">kqueue(2)</span></code> based observer</p></td>
</tr>
<tr class="row-odd"><td><p><code class="xref py py-class docutils literal notranslate"><span class="pre">read_directory_changes.WindowsApiObserver</span></code></p></td>
<td><p>MS Windows</p></td>
<td><p>Windows API-based observer</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#watchdog.observers.polling.PollingObserver" title="watchdog.observers.polling.PollingObserver"><code class="xref py py-class docutils literal notranslate"><span class="pre">polling.PollingObserver</span></code></a></p></td>
<td><p>Any</p></td>
<td><p>fallback implementation</p></td>
</tr>
</tbody>
</table>
</section>
</section>
<section id="module-watchdog.observers.polling">
<span id="watchdog-observers-polling"></span><h2><cite>watchdog.observers.polling</cite><a class="headerlink" href="#module-watchdog.observers.polling" title="Permalink to this heading">¶</a></h2>
<dl class="field-list simple">
<dt class="field-odd">module</dt>
<dd class="field-odd"><p>watchdog.observers.polling</p>
</dd>
<dt class="field-even">synopsis</dt>
<dd class="field-even"><p>Polling emitter implementation.</p>
</dd>
<dt class="field-odd">author</dt>
<dd class="field-odd"><p><a class="reference external" href="mailto:yesudeep%40google.com">yesudeep<span>@</span>google<span>.</span>com</a> (Yesudeep Mangalapilly)</p>
</dd>
<dt class="field-even">author</dt>
<dd class="field-even"><p><a class="reference external" href="mailto:contact%40tiger-222.fr">contact<span>@</span>tiger-222<span>.</span>fr</a> (Mickaël Schoentgen)</p>
</dd>
</dl>
<section id="id2">
<h3>Classes<a class="headerlink" href="#id2" title="Permalink to this heading">¶</a></h3>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.observers.polling.PollingObserver">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.observers.polling.</span></span><span class="sig-name descname"><span class="pre">PollingObserver</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">timeout</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/polling.html#PollingObserver"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.polling.PollingObserver" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.observers.api.BaseObserver" title="watchdog.observers.api.BaseObserver"><code class="xref py py-class docutils literal notranslate"><span class="pre">BaseObserver</span></code></a></p>
<p>Platform-independent observer that polls a directory to detect file
system changes.</p>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.observers.polling.PollingObserverVFS">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.observers.polling.</span></span><span class="sig-name descname"><span class="pre">PollingObserverVFS</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">stat</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">listdir</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">polling_interval</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/polling.html#PollingObserverVFS"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.polling.PollingObserverVFS" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.observers.api.BaseObserver" title="watchdog.observers.api.BaseObserver"><code class="xref py py-class docutils literal notranslate"><span class="pre">BaseObserver</span></code></a></p>
<p>File system independent observer that polls a directory to detect changes.</p>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.observers.polling.PollingObserverVFS.__init__">
<span class="sig-name descname"><span class="pre">__init__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">stat</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">listdir</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">polling_interval</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/observers/polling.html#PollingObserverVFS.__init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.observers.polling.PollingObserverVFS.__init__" title="Permalink to this definition">¶</a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>stat</strong> – stat function. See <code class="docutils literal notranslate"><span class="pre">os.stat</span></code> for details.</p></li>
<li><p><strong>listdir</strong> – listdir function. See <code class="docutils literal notranslate"><span class="pre">os.scandir</span></code> for details.</p></li>
<li><p><strong>polling_interval</strong> (<em>float</em>) – interval in seconds between polling the file system.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
</dd></dl>
</section>
</section>
<section id="module-watchdog.utils">
<span id="watchdog-utils"></span><h2><cite>watchdog.utils</cite><a class="headerlink" href="#module-watchdog.utils" title="Permalink to this heading">¶</a></h2>
<dl class="field-list simple">
<dt class="field-odd">module</dt>
<dd class="field-odd"><p>watchdog.utils</p>
</dd>
<dt class="field-even">synopsis</dt>
<dd class="field-even"><p>Utility classes and functions.</p>
</dd>
<dt class="field-odd">author</dt>
<dd class="field-odd"><p><a class="reference external" href="mailto:yesudeep%40google.com">yesudeep<span>@</span>google<span>.</span>com</a> (Yesudeep Mangalapilly)</p>
</dd>
<dt class="field-even">author</dt>
<dd class="field-even"><p><a class="reference external" href="mailto:contact%40tiger-222.fr">contact<span>@</span>tiger-222<span>.</span>fr</a> (Mickaël Schoentgen)</p>
</dd>
</dl>
<section id="id3">
<h3>Classes<a class="headerlink" href="#id3" title="Permalink to this heading">¶</a></h3>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.utils.</span></span><span class="sig-name descname"><span class="pre">BaseThread</span></span><a class="reference internal" href="_modules/watchdog/utils.html#BaseThread"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.utils.BaseThread" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">Thread</span></code></p>
<p>Convenience class for creating stoppable threads.</p>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.daemon">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">daemon</span></span><a class="headerlink" href="#watchdog.utils.BaseThread.daemon" title="Permalink to this definition">¶</a></dt>
<dd><p>A boolean value indicating whether this thread is a daemon thread.</p>
<p>This must be set before start() is called, otherwise RuntimeError is
raised. Its initial value is inherited from the creating thread; the
main thread is not a daemon thread and therefore all threads created in
the main thread default to daemon = False.</p>
<p>The entire Python program exits when only daemon threads are left.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.getName">
<span class="sig-name descname"><span class="pre">getName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#watchdog.utils.BaseThread.getName" title="Permalink to this definition">¶</a></dt>
<dd><p>Return a string used for identification purposes only.</p>
<p>This method is deprecated, use the name attribute instead.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.ident">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">ident</span></span><a class="headerlink" href="#watchdog.utils.BaseThread.ident" title="Permalink to this definition">¶</a></dt>
<dd><p>Thread identifier of this thread or None if it has not been started.</p>
<p>This is a nonzero integer. See the get_ident() function. Thread
identifiers may be recycled when a thread exits and another thread is
created. The identifier is available even after the thread has exited.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.isDaemon">
<span class="sig-name descname"><span class="pre">isDaemon</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#watchdog.utils.BaseThread.isDaemon" title="Permalink to this definition">¶</a></dt>
<dd><p>Return whether this thread is a daemon.</p>
<p>This method is deprecated, use the daemon attribute instead.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.is_alive">
<span class="sig-name descname"><span class="pre">is_alive</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#watchdog.utils.BaseThread.is_alive" title="Permalink to this definition">¶</a></dt>
<dd><p>Return whether the thread is alive.</p>
<p>This method returns True just before the run() method starts until just
after the run() method terminates. See also the module function
enumerate().</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.join">
<span class="sig-name descname"><span class="pre">join</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">timeout</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#watchdog.utils.BaseThread.join" title="Permalink to this definition">¶</a></dt>
<dd><p>Wait until the thread terminates.</p>
<p>This blocks the calling thread until the thread whose join() method is
called terminates – either normally or through an unhandled exception
or until the optional timeout occurs.</p>
<p>When the timeout argument is present and not None, it should be a
floating point number specifying a timeout for the operation in seconds
(or fractions thereof). As join() always returns None, you must call
is_alive() after join() to decide whether a timeout happened – if the
thread is still alive, the join() call timed out.</p>
<p>When the timeout argument is not present or None, the operation will
block until the thread terminates.</p>
<p>A thread can be join()ed many times.</p>
<p>join() raises a RuntimeError if an attempt is made to join the current
thread as that would cause a deadlock. It is also an error to join() a
thread before it has been started and attempts to do so raises the same
exception.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.name">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><a class="headerlink" href="#watchdog.utils.BaseThread.name" title="Permalink to this definition">¶</a></dt>
<dd><p>A string used for identification purposes only.</p>
<p>It has no semantics. Multiple threads may be given the same name. The
initial name is set by the constructor.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.native_id">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">native_id</span></span><a class="headerlink" href="#watchdog.utils.BaseThread.native_id" title="Permalink to this definition">¶</a></dt>
<dd><p>Native integral thread ID of this thread, or None if it has not been started.</p>
<p>This is a non-negative integer. See the get_native_id() function.
This represents the Thread ID as reported by the kernel.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.on_thread_start">
<span class="sig-name descname"><span class="pre">on_thread_start</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/utils.html#BaseThread.on_thread_start"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.utils.BaseThread.on_thread_start" title="Permalink to this definition">¶</a></dt>
<dd><p>Override this method instead of <a class="reference internal" href="#watchdog.utils.BaseThread.start" title="watchdog.utils.BaseThread.start"><code class="xref py py-meth docutils literal notranslate"><span class="pre">start()</span></code></a>. <a class="reference internal" href="#watchdog.utils.BaseThread.start" title="watchdog.utils.BaseThread.start"><code class="xref py py-meth docutils literal notranslate"><span class="pre">start()</span></code></a>
calls this method.</p>
<p>This method is called right before this thread is started and this
object’s run() method is invoked.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.on_thread_stop">
<span class="sig-name descname"><span class="pre">on_thread_stop</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/utils.html#BaseThread.on_thread_stop"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.utils.BaseThread.on_thread_stop" title="Permalink to this definition">¶</a></dt>
<dd><p>Override this method instead of <a class="reference internal" href="#watchdog.utils.BaseThread.stop" title="watchdog.utils.BaseThread.stop"><code class="xref py py-meth docutils literal notranslate"><span class="pre">stop()</span></code></a>.
<a class="reference internal" href="#watchdog.utils.BaseThread.stop" title="watchdog.utils.BaseThread.stop"><code class="xref py py-meth docutils literal notranslate"><span class="pre">stop()</span></code></a> calls this method.</p>
<p>This method is called immediately after the thread is signaled to stop.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.run">
<span class="sig-name descname"><span class="pre">run</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#watchdog.utils.BaseThread.run" title="Permalink to this definition">¶</a></dt>
<dd><p>Method representing the thread’s activity.</p>
<p>You may override this method in a subclass. The standard run() method
invokes the callable object passed to the object’s constructor as the
target argument, if any, with sequential and keyword arguments taken
from the args and kwargs arguments, respectively.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.setDaemon">
<span class="sig-name descname"><span class="pre">setDaemon</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">daemonic</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#watchdog.utils.BaseThread.setDaemon" title="Permalink to this definition">¶</a></dt>
<dd><p>Set whether this thread is a daemon.</p>
<p>This method is deprecated, use the .daemon property instead.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.setName">
<span class="sig-name descname"><span class="pre">setName</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#watchdog.utils.BaseThread.setName" title="Permalink to this definition">¶</a></dt>
<dd><p>Set the name string for this thread.</p>
<p>This method is deprecated, use the name attribute instead.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.should_keep_running">
<span class="sig-name descname"><span class="pre">should_keep_running</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/utils.html#BaseThread.should_keep_running"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.utils.BaseThread.should_keep_running" title="Permalink to this definition">¶</a></dt>
<dd><p>Determines whether the thread should continue running.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.start">
<span class="sig-name descname"><span class="pre">start</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/utils.html#BaseThread.start"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.utils.BaseThread.start" title="Permalink to this definition">¶</a></dt>
<dd><p>Start the thread’s activity.</p>
<p>It must be called at most once per thread object. It arranges for the
object’s run() method to be invoked in a separate thread of control.</p>
<p>This method will raise a RuntimeError if called more than once on the
same thread object.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.BaseThread.stop">
<span class="sig-name descname"><span class="pre">stop</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/utils.html#BaseThread.stop"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.utils.BaseThread.stop" title="Permalink to this definition">¶</a></dt>
<dd><p>Signals the thread to stop.</p>
</dd></dl>
</dd></dl>
</section>
</section>
<section id="module-watchdog.utils.dirsnapshot">
<span id="watchdog-utils-dirsnapshot"></span><h2><cite>watchdog.utils.dirsnapshot</cite><a class="headerlink" href="#module-watchdog.utils.dirsnapshot" title="Permalink to this heading">¶</a></h2>
<dl class="field-list simple">
<dt class="field-odd">module</dt>
<dd class="field-odd"><p>watchdog.utils.dirsnapshot</p>
</dd>
<dt class="field-even">synopsis</dt>
<dd class="field-even"><p>Directory snapshots and comparison.</p>
</dd>
<dt class="field-odd">author</dt>
<dd class="field-odd"><p><a class="reference external" href="mailto:yesudeep%40google.com">yesudeep<span>@</span>google<span>.</span>com</a> (Yesudeep Mangalapilly)</p>
</dd>
<dt class="field-even">author</dt>
<dd class="field-even"><p><a class="reference external" href="mailto:contact%40tiger-222.fr">contact<span>@</span>tiger-222<span>.</span>fr</a> (Mickaël Schoentgen)</p>
</dd>
</dl>
<div class="admonition-where-are-the-moved-events-they-disappeared admonition">
<p class="admonition-title">Where are the moved events? They ‘disappeared’</p>
<p>This implementation does not take partition boundaries
into consideration. It will only work when the directory
tree is entirely on the same file system. More specifically,
any part of the code that depends on inode numbers can
break if partition boundaries are crossed. In these cases,
the snapshot diff will represent file/directory movement as
created and deleted events.</p>
</div>
<section id="id4">
<h3>Classes<a class="headerlink" href="#id4" title="Permalink to this heading">¶</a></h3>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshot">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.utils.dirsnapshot.</span></span><span class="sig-name descname"><span class="pre">DirectorySnapshot</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">recursive=True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">stat=<built-in</span> <span class="pre">function</span> <span class="pre">stat></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">listdir=<built-in</span> <span class="pre">function</span> <span class="pre">scandir></span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/utils/dirsnapshot.html#DirectorySnapshot"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshot" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>A snapshot of stat information of files in a directory.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>path</strong> (<code class="docutils literal notranslate"><span class="pre">str</span></code>) – The directory path for which a snapshot should be taken.</p></li>
<li><p><strong>recursive</strong> (<code class="docutils literal notranslate"><span class="pre">bool</span></code>) – <code class="docutils literal notranslate"><span class="pre">True</span></code> if the entire directory tree should be included in the
snapshot; <code class="docutils literal notranslate"><span class="pre">False</span></code> otherwise.</p></li>
<li><p><strong>stat</strong> – <p>Use custom stat function that returns a stat structure for path.
Currently only st_dev, st_ino, st_mode and st_mtime are needed.</p>
<p>A function taking a <code class="docutils literal notranslate"><span class="pre">path</span></code> as argument which will be called
for every entry in the directory tree.</p>
</p></li>
<li><p><strong>listdir</strong> – Use custom listdir function. For details see <code class="docutils literal notranslate"><span class="pre">os.scandir</span></code>.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshot.inode">
<span class="sig-name descname"><span class="pre">inode</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/utils/dirsnapshot.html#DirectorySnapshot.inode"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshot.inode" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns an id for path.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshot.path">
<span class="sig-name descname"><span class="pre">path</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">id</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/utils/dirsnapshot.html#DirectorySnapshot.path"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshot.path" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns path for id. None if id is unknown to this snapshot.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshot.paths">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">paths</span></span><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshot.paths" title="Permalink to this definition">¶</a></dt>
<dd><p>Set of file/directory paths in the snapshot.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshot.stat_info">
<span class="sig-name descname"><span class="pre">stat_info</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/utils/dirsnapshot.html#DirectorySnapshot.stat_info"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshot.stat_info" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns a stat information object for the specified path from
the snapshot.</p>
<p>Attached information is subject to change. Do not use unless
you specify <cite>stat</cite> in constructor. Use <a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshot.inode" title="watchdog.utils.dirsnapshot.DirectorySnapshot.inode"><code class="xref py py-func docutils literal notranslate"><span class="pre">inode()</span></code></a>, <code class="xref py py-func docutils literal notranslate"><span class="pre">mtime()</span></code>,
<code class="xref py py-func docutils literal notranslate"><span class="pre">isdir()</span></code> instead.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>path</strong> – The path for which stat information should be obtained
from a snapshot.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshotDiff">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.utils.dirsnapshot.</span></span><span class="sig-name descname"><span class="pre">DirectorySnapshotDiff</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ref</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">snapshot</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_device</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/utils/dirsnapshot.html#DirectorySnapshotDiff"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>Compares two directory snapshots and creates an object that represents
the difference between the two snapshots.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ref</strong> (<a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshot" title="watchdog.utils.dirsnapshot.DirectorySnapshot"><code class="xref py py-class docutils literal notranslate"><span class="pre">DirectorySnapshot</span></code></a>) – The reference directory snapshot.</p></li>
<li><p><strong>snapshot</strong> (<a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshot" title="watchdog.utils.dirsnapshot.DirectorySnapshot"><code class="xref py py-class docutils literal notranslate"><span class="pre">DirectorySnapshot</span></code></a>) – The directory snapshot which will be compared
with the reference snapshot.</p></li>
<li><p><strong>ignore_device</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code>) – A boolean indicating whether to ignore the device id or not.
By default, a file may be uniquely identified by a combination of its first
inode and its device id. The problem is that the device id may (or may not)
change between system boots. This problem would cause the DirectorySnapshotDiff
to think a file has been deleted and created again but it would be the
exact same file.
Set to True only if you are sure you will always use the same device.</p></li>
</ul>
</dd>
</dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshotDiff.dirs_created">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">dirs_created</span></span><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.dirs_created" title="Permalink to this definition">¶</a></dt>
<dd><p>List of directories that were created.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshotDiff.dirs_deleted">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">dirs_deleted</span></span><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.dirs_deleted" title="Permalink to this definition">¶</a></dt>
<dd><p>List of directories that were deleted.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshotDiff.dirs_modified">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">dirs_modified</span></span><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.dirs_modified" title="Permalink to this definition">¶</a></dt>
<dd><p>List of directories that were modified.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshotDiff.dirs_moved">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">dirs_moved</span></span><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.dirs_moved" title="Permalink to this definition">¶</a></dt>
<dd><p>List of directories that were moved.</p>
<p>Each event is a two-tuple the first item of which is the path
that has been renamed to the second item in the tuple.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshotDiff.files_created">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">files_created</span></span><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.files_created" title="Permalink to this definition">¶</a></dt>
<dd><p>List of files that were created.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshotDiff.files_deleted">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">files_deleted</span></span><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.files_deleted" title="Permalink to this definition">¶</a></dt>
<dd><p>List of files that were deleted.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshotDiff.files_modified">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">files_modified</span></span><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.files_modified" title="Permalink to this definition">¶</a></dt>
<dd><p>List of files that were modified.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.DirectorySnapshotDiff.files_moved">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">files_moved</span></span><a class="headerlink" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.files_moved" title="Permalink to this definition">¶</a></dt>
<dd><p>List of files that were moved.</p>
<p>Each event is a two-tuple the first item of which is the path
that has been renamed to the second item in the tuple.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.EmptyDirectorySnapshot">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.utils.dirsnapshot.</span></span><span class="sig-name descname"><span class="pre">EmptyDirectorySnapshot</span></span><a class="reference internal" href="_modules/watchdog/utils/dirsnapshot.html#EmptyDirectorySnapshot"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.utils.dirsnapshot.EmptyDirectorySnapshot" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>Class to implement an empty snapshot. This is used together with
DirectorySnapshot and DirectorySnapshotDiff in order to get all the files/folders
in the directory as created.</p>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.EmptyDirectorySnapshot.path">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">path</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">_</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/utils/dirsnapshot.html#EmptyDirectorySnapshot.path"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.utils.dirsnapshot.EmptyDirectorySnapshot.path" title="Permalink to this definition">¶</a></dt>
<dd><p>Mock up method to return the path of the received inode. As the snapshot
is intended to be empty, it always returns None.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>None.</p>
</dd>
</dl>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="watchdog.utils.dirsnapshot.EmptyDirectorySnapshot.paths">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">paths</span></span><a class="headerlink" href="#watchdog.utils.dirsnapshot.EmptyDirectorySnapshot.paths" title="Permalink to this definition">¶</a></dt>
<dd><p>Mock up method to return a set of file/directory paths in the snapshot. As
the snapshot is intended to be empty, it always returns an empty set.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>An empty set.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
</section>
</section>
<section id="module-watchdog.tricks">
<span id="watchdog-tricks"></span><h2><cite>watchdog.tricks</cite><a class="headerlink" href="#module-watchdog.tricks" title="Permalink to this heading">¶</a></h2>
<dl class="field-list simple">
<dt class="field-odd">module</dt>
<dd class="field-odd"><p>watchdog.tricks</p>
</dd>
<dt class="field-even">synopsis</dt>
<dd class="field-even"><p>Utility event handlers.</p>
</dd>
<dt class="field-odd">author</dt>
<dd class="field-odd"><p><a class="reference external" href="mailto:yesudeep%40google.com">yesudeep<span>@</span>google<span>.</span>com</a> (Yesudeep Mangalapilly)</p>
</dd>
<dt class="field-even">author</dt>
<dd class="field-even"><p><a class="reference external" href="mailto:contact%40tiger-222.fr">contact<span>@</span>tiger-222<span>.</span>fr</a> (Mickaël Schoentgen)</p>
</dd>
</dl>
<section id="id5">
<h3>Classes<a class="headerlink" href="#id5" title="Permalink to this heading">¶</a></h3>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.tricks.Trick">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.tricks.</span></span><span class="sig-name descname"><span class="pre">Trick</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">patterns</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_patterns</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_directories</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">case_sensitive</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/tricks.html#Trick"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.tricks.Trick" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.events.PatternMatchingEventHandler" title="watchdog.events.PatternMatchingEventHandler"><code class="xref py py-class docutils literal notranslate"><span class="pre">PatternMatchingEventHandler</span></code></a></p>
<p>Your tricks should subclass this class.</p>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.tricks.LoggerTrick">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.tricks.</span></span><span class="sig-name descname"><span class="pre">LoggerTrick</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">patterns</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_patterns</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_directories</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">case_sensitive</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/tricks.html#LoggerTrick"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.tricks.LoggerTrick" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.tricks.Trick" title="watchdog.tricks.Trick"><code class="xref py py-class docutils literal notranslate"><span class="pre">Trick</span></code></a></p>
<p>A simple trick that does only logs events.</p>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.tricks.LoggerTrick.on_any_event">
<span class="sig-name descname"><span class="pre">on_any_event</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/tricks.html#LoggerTrick.on_any_event"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.tricks.LoggerTrick.on_any_event" title="Permalink to this definition">¶</a></dt>
<dd><p>Catch-all event handler.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code>) – The event object representing the file system event.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.tricks.LoggerTrick.on_created">
<span class="sig-name descname"><span class="pre">on_created</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/tricks.html#LoggerTrick.on_created"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.tricks.LoggerTrick.on_created" title="Permalink to this definition">¶</a></dt>
<dd><p>Called when a file or directory is created.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">DirCreatedEvent</span></code> or <code class="xref py py-class docutils literal notranslate"><span class="pre">FileCreatedEvent</span></code>) – Event representing file/directory creation.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.tricks.LoggerTrick.on_deleted">
<span class="sig-name descname"><span class="pre">on_deleted</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/tricks.html#LoggerTrick.on_deleted"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.tricks.LoggerTrick.on_deleted" title="Permalink to this definition">¶</a></dt>
<dd><p>Called when a file or directory is deleted.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">DirDeletedEvent</span></code> or <code class="xref py py-class docutils literal notranslate"><span class="pre">FileDeletedEvent</span></code>) – Event representing file/directory deletion.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.tricks.LoggerTrick.on_modified">
<span class="sig-name descname"><span class="pre">on_modified</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/tricks.html#LoggerTrick.on_modified"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.tricks.LoggerTrick.on_modified" title="Permalink to this definition">¶</a></dt>
<dd><p>Called when a file or directory is modified.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">DirModifiedEvent</span></code> or <code class="xref py py-class docutils literal notranslate"><span class="pre">FileModifiedEvent</span></code>) – Event representing file/directory modification.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.tricks.LoggerTrick.on_moved">
<span class="sig-name descname"><span class="pre">on_moved</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/tricks.html#LoggerTrick.on_moved"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.tricks.LoggerTrick.on_moved" title="Permalink to this definition">¶</a></dt>
<dd><p>Called when a file or a directory is moved or renamed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">DirMovedEvent</span></code> or <code class="xref py py-class docutils literal notranslate"><span class="pre">FileMovedEvent</span></code>) – Event representing file/directory movement.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.tricks.ShellCommandTrick">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.tricks.</span></span><span class="sig-name descname"><span class="pre">ShellCommandTrick</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">shell_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">patterns</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_patterns</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_directories</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">wait_for_process</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">drop_during_process</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/tricks.html#ShellCommandTrick"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.tricks.ShellCommandTrick" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.tricks.Trick" title="watchdog.tricks.Trick"><code class="xref py py-class docutils literal notranslate"><span class="pre">Trick</span></code></a></p>
<p>Executes shell commands in response to matched events.</p>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.tricks.ShellCommandTrick.on_any_event">
<span class="sig-name descname"><span class="pre">on_any_event</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/tricks.html#ShellCommandTrick.on_any_event"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.tricks.ShellCommandTrick.on_any_event" title="Permalink to this definition">¶</a></dt>
<dd><p>Catch-all event handler.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code>) – The event object representing the file system event.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="watchdog.tricks.AutoRestartTrick">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">watchdog.tricks.</span></span><span class="sig-name descname"><span class="pre">AutoRestartTrick</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">command</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">patterns</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_patterns</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_directories</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">stop_signal</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">Signals.SIGINT</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">kill_after</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/tricks.html#AutoRestartTrick"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.tricks.AutoRestartTrick" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#watchdog.tricks.Trick" title="watchdog.tricks.Trick"><code class="xref py py-class docutils literal notranslate"><span class="pre">Trick</span></code></a></p>
<p>Starts a long-running subprocess and restarts it on matched events.</p>
<p>The command parameter is a list of command arguments, such as
<cite>[‘bin/myserver’, ‘-c’, ‘etc/myconfig.ini’]</cite>.</p>
<p>Call <cite>start()</cite> after creating the Trick. Call <cite>stop()</cite> when stopping
the process.</p>
<dl class="py method">
<dt class="sig sig-object py" id="watchdog.tricks.AutoRestartTrick.on_any_event">
<span class="sig-name descname"><span class="pre">on_any_event</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">event</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/watchdog/tricks.html#AutoRestartTrick.on_any_event"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#watchdog.tricks.AutoRestartTrick.on_any_event" title="Permalink to this definition">¶</a></dt>
<dd><p>Catch-all event handler.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>event</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">FileSystemEvent</span></code>) – The event object representing the file system event.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
</section>
<div class="toctree-wrapper compound">
</div>
</section>
</section>
<div class="clearer"></div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<div>
<h3><a href="index.html">Table of Contents</a></h3>
<ul>
<li><a class="reference internal" href="#">API Reference</a><ul>
<li><a class="reference internal" href="#module-watchdog.events"><cite>watchdog.events</cite></a><ul>
<li><a class="reference internal" href="#event-classes">Event Classes</a><ul>
<li><a class="reference internal" href="#watchdog.events.FileSystemEvent"><code class="docutils literal notranslate"><span class="pre">FileSystemEvent</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.FileSystemEvent.event_type"><code class="docutils literal notranslate"><span class="pre">FileSystemEvent.event_type</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.FileSystemEvent.is_directory"><code class="docutils literal notranslate"><span class="pre">FileSystemEvent.is_directory</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.FileSystemEvent.is_synthetic"><code class="docutils literal notranslate"><span class="pre">FileSystemEvent.is_synthetic</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.FileSystemEvent.src_path"><code class="docutils literal notranslate"><span class="pre">FileSystemEvent.src_path</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.events.FileSystemMovedEvent"><code class="docutils literal notranslate"><span class="pre">FileSystemMovedEvent</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.FileSystemMovedEvent.dest_path"><code class="docutils literal notranslate"><span class="pre">FileSystemMovedEvent.dest_path</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.FileSystemMovedEvent.event_type"><code class="docutils literal notranslate"><span class="pre">FileSystemMovedEvent.event_type</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.events.FileMovedEvent"><code class="docutils literal notranslate"><span class="pre">FileMovedEvent</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.DirMovedEvent"><code class="docutils literal notranslate"><span class="pre">DirMovedEvent</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.DirMovedEvent.is_directory"><code class="docutils literal notranslate"><span class="pre">DirMovedEvent.is_directory</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.events.FileModifiedEvent"><code class="docutils literal notranslate"><span class="pre">FileModifiedEvent</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.FileModifiedEvent.event_type"><code class="docutils literal notranslate"><span class="pre">FileModifiedEvent.event_type</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.events.DirModifiedEvent"><code class="docutils literal notranslate"><span class="pre">DirModifiedEvent</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.DirModifiedEvent.event_type"><code class="docutils literal notranslate"><span class="pre">DirModifiedEvent.event_type</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.DirModifiedEvent.is_directory"><code class="docutils literal notranslate"><span class="pre">DirModifiedEvent.is_directory</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.events.FileCreatedEvent"><code class="docutils literal notranslate"><span class="pre">FileCreatedEvent</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.FileCreatedEvent.event_type"><code class="docutils literal notranslate"><span class="pre">FileCreatedEvent.event_type</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.events.FileClosedEvent"><code class="docutils literal notranslate"><span class="pre">FileClosedEvent</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.FileClosedEvent.event_type"><code class="docutils literal notranslate"><span class="pre">FileClosedEvent.event_type</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.events.DirCreatedEvent"><code class="docutils literal notranslate"><span class="pre">DirCreatedEvent</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.DirCreatedEvent.event_type"><code class="docutils literal notranslate"><span class="pre">DirCreatedEvent.event_type</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.DirCreatedEvent.is_directory"><code class="docutils literal notranslate"><span class="pre">DirCreatedEvent.is_directory</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.events.FileDeletedEvent"><code class="docutils literal notranslate"><span class="pre">FileDeletedEvent</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.FileDeletedEvent.event_type"><code class="docutils literal notranslate"><span class="pre">FileDeletedEvent.event_type</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.events.DirDeletedEvent"><code class="docutils literal notranslate"><span class="pre">DirDeletedEvent</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.DirDeletedEvent.event_type"><code class="docutils literal notranslate"><span class="pre">DirDeletedEvent.event_type</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.DirDeletedEvent.is_directory"><code class="docutils literal notranslate"><span class="pre">DirDeletedEvent.is_directory</span></code></a></li>
</ul>
</li>
</ul>
</li>
<li><a class="reference internal" href="#event-handler-classes">Event Handler Classes</a><ul>
<li><a class="reference internal" href="#watchdog.events.FileSystemEventHandler"><code class="docutils literal notranslate"><span class="pre">FileSystemEventHandler</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.FileSystemEventHandler.dispatch"><code class="docutils literal notranslate"><span class="pre">FileSystemEventHandler.dispatch()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.FileSystemEventHandler.on_any_event"><code class="docutils literal notranslate"><span class="pre">FileSystemEventHandler.on_any_event()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.FileSystemEventHandler.on_closed"><code class="docutils literal notranslate"><span class="pre">FileSystemEventHandler.on_closed()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.FileSystemEventHandler.on_created"><code class="docutils literal notranslate"><span class="pre">FileSystemEventHandler.on_created()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.FileSystemEventHandler.on_deleted"><code class="docutils literal notranslate"><span class="pre">FileSystemEventHandler.on_deleted()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.FileSystemEventHandler.on_modified"><code class="docutils literal notranslate"><span class="pre">FileSystemEventHandler.on_modified()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.FileSystemEventHandler.on_moved"><code class="docutils literal notranslate"><span class="pre">FileSystemEventHandler.on_moved()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.events.PatternMatchingEventHandler"><code class="docutils literal notranslate"><span class="pre">PatternMatchingEventHandler</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.PatternMatchingEventHandler.case_sensitive"><code class="docutils literal notranslate"><span class="pre">PatternMatchingEventHandler.case_sensitive</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.PatternMatchingEventHandler.dispatch"><code class="docutils literal notranslate"><span class="pre">PatternMatchingEventHandler.dispatch()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.PatternMatchingEventHandler.ignore_directories"><code class="docutils literal notranslate"><span class="pre">PatternMatchingEventHandler.ignore_directories</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.PatternMatchingEventHandler.ignore_patterns"><code class="docutils literal notranslate"><span class="pre">PatternMatchingEventHandler.ignore_patterns</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.PatternMatchingEventHandler.patterns"><code class="docutils literal notranslate"><span class="pre">PatternMatchingEventHandler.patterns</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.events.RegexMatchingEventHandler"><code class="docutils literal notranslate"><span class="pre">RegexMatchingEventHandler</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.RegexMatchingEventHandler.case_sensitive"><code class="docutils literal notranslate"><span class="pre">RegexMatchingEventHandler.case_sensitive</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.RegexMatchingEventHandler.dispatch"><code class="docutils literal notranslate"><span class="pre">RegexMatchingEventHandler.dispatch()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.RegexMatchingEventHandler.ignore_directories"><code class="docutils literal notranslate"><span class="pre">RegexMatchingEventHandler.ignore_directories</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.RegexMatchingEventHandler.ignore_regexes"><code class="docutils literal notranslate"><span class="pre">RegexMatchingEventHandler.ignore_regexes</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.RegexMatchingEventHandler.regexes"><code class="docutils literal notranslate"><span class="pre">RegexMatchingEventHandler.regexes</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.events.LoggingEventHandler"><code class="docutils literal notranslate"><span class="pre">LoggingEventHandler</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.events.LoggingEventHandler.on_created"><code class="docutils literal notranslate"><span class="pre">LoggingEventHandler.on_created()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.LoggingEventHandler.on_deleted"><code class="docutils literal notranslate"><span class="pre">LoggingEventHandler.on_deleted()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.LoggingEventHandler.on_modified"><code class="docutils literal notranslate"><span class="pre">LoggingEventHandler.on_modified()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.events.LoggingEventHandler.on_moved"><code class="docutils literal notranslate"><span class="pre">LoggingEventHandler.on_moved()</span></code></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li><a class="reference internal" href="#module-watchdog.observers.api"><cite>watchdog.observers.api</cite></a><ul>
<li><a class="reference internal" href="#immutables">Immutables</a><ul>
<li><a class="reference internal" href="#watchdog.observers.api.ObservedWatch"><code class="docutils literal notranslate"><span class="pre">ObservedWatch</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.observers.api.ObservedWatch.is_recursive"><code class="docutils literal notranslate"><span class="pre">ObservedWatch.is_recursive</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.ObservedWatch.path"><code class="docutils literal notranslate"><span class="pre">ObservedWatch.path</span></code></a></li>
</ul>
</li>
</ul>
</li>
<li><a class="reference internal" href="#collections">Collections</a><ul>
<li><a class="reference internal" href="#watchdog.observers.api.EventQueue"><code class="docutils literal notranslate"><span class="pre">EventQueue</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#classes">Classes</a><ul>
<li><a class="reference internal" href="#watchdog.observers.api.EventEmitter"><code class="docutils literal notranslate"><span class="pre">EventEmitter</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.observers.api.EventEmitter.queue_event"><code class="docutils literal notranslate"><span class="pre">EventEmitter.queue_event()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.EventEmitter.queue_events"><code class="docutils literal notranslate"><span class="pre">EventEmitter.queue_events()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.EventEmitter.run"><code class="docutils literal notranslate"><span class="pre">EventEmitter.run()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.EventEmitter.timeout"><code class="docutils literal notranslate"><span class="pre">EventEmitter.timeout</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.EventEmitter.watch"><code class="docutils literal notranslate"><span class="pre">EventEmitter.watch</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.observers.api.EventDispatcher"><code class="docutils literal notranslate"><span class="pre">EventDispatcher</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.observers.api.EventDispatcher.dispatch_events"><code class="docutils literal notranslate"><span class="pre">EventDispatcher.dispatch_events()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.EventDispatcher.event_queue"><code class="docutils literal notranslate"><span class="pre">EventDispatcher.event_queue</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.EventDispatcher.run"><code class="docutils literal notranslate"><span class="pre">EventDispatcher.run()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.EventDispatcher.stop"><code class="docutils literal notranslate"><span class="pre">EventDispatcher.stop()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.EventDispatcher.timeout"><code class="docutils literal notranslate"><span class="pre">EventDispatcher.timeout</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.observers.api.BaseObserver"><code class="docutils literal notranslate"><span class="pre">BaseObserver</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.observers.api.BaseObserver.add_handler_for_watch"><code class="docutils literal notranslate"><span class="pre">BaseObserver.add_handler_for_watch()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.BaseObserver.dispatch_events"><code class="docutils literal notranslate"><span class="pre">BaseObserver.dispatch_events()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.BaseObserver.emitters"><code class="docutils literal notranslate"><span class="pre">BaseObserver.emitters</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.BaseObserver.on_thread_stop"><code class="docutils literal notranslate"><span class="pre">BaseObserver.on_thread_stop()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.BaseObserver.remove_handler_for_watch"><code class="docutils literal notranslate"><span class="pre">BaseObserver.remove_handler_for_watch()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.BaseObserver.schedule"><code class="docutils literal notranslate"><span class="pre">BaseObserver.schedule()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.BaseObserver.start"><code class="docutils literal notranslate"><span class="pre">BaseObserver.start()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.BaseObserver.unschedule"><code class="docutils literal notranslate"><span class="pre">BaseObserver.unschedule()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.api.BaseObserver.unschedule_all"><code class="docutils literal notranslate"><span class="pre">BaseObserver.unschedule_all()</span></code></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li><a class="reference internal" href="#module-watchdog.observers"><cite>watchdog.observers</cite></a><ul>
<li><a class="reference internal" href="#id1">Classes</a><ul>
<li><a class="reference internal" href="#watchdog.observers.Observer"><code class="docutils literal notranslate"><span class="pre">Observer</span></code></a></li>
</ul>
</li>
</ul>
</li>
<li><a class="reference internal" href="#module-watchdog.observers.polling"><cite>watchdog.observers.polling</cite></a><ul>
<li><a class="reference internal" href="#id2">Classes</a><ul>
<li><a class="reference internal" href="#watchdog.observers.polling.PollingObserver"><code class="docutils literal notranslate"><span class="pre">PollingObserver</span></code></a></li>
<li><a class="reference internal" href="#watchdog.observers.polling.PollingObserverVFS"><code class="docutils literal notranslate"><span class="pre">PollingObserverVFS</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.observers.polling.PollingObserverVFS.__init__"><code class="docutils literal notranslate"><span class="pre">PollingObserverVFS.__init__()</span></code></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li><a class="reference internal" href="#module-watchdog.utils"><cite>watchdog.utils</cite></a><ul>
<li><a class="reference internal" href="#id3">Classes</a><ul>
<li><a class="reference internal" href="#watchdog.utils.BaseThread"><code class="docutils literal notranslate"><span class="pre">BaseThread</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.daemon"><code class="docutils literal notranslate"><span class="pre">BaseThread.daemon</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.getName"><code class="docutils literal notranslate"><span class="pre">BaseThread.getName()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.ident"><code class="docutils literal notranslate"><span class="pre">BaseThread.ident</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.isDaemon"><code class="docutils literal notranslate"><span class="pre">BaseThread.isDaemon()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.is_alive"><code class="docutils literal notranslate"><span class="pre">BaseThread.is_alive()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.join"><code class="docutils literal notranslate"><span class="pre">BaseThread.join()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.name"><code class="docutils literal notranslate"><span class="pre">BaseThread.name</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.native_id"><code class="docutils literal notranslate"><span class="pre">BaseThread.native_id</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.on_thread_start"><code class="docutils literal notranslate"><span class="pre">BaseThread.on_thread_start()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.on_thread_stop"><code class="docutils literal notranslate"><span class="pre">BaseThread.on_thread_stop()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.run"><code class="docutils literal notranslate"><span class="pre">BaseThread.run()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.setDaemon"><code class="docutils literal notranslate"><span class="pre">BaseThread.setDaemon()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.setName"><code class="docutils literal notranslate"><span class="pre">BaseThread.setName()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.should_keep_running"><code class="docutils literal notranslate"><span class="pre">BaseThread.should_keep_running()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.start"><code class="docutils literal notranslate"><span class="pre">BaseThread.start()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.BaseThread.stop"><code class="docutils literal notranslate"><span class="pre">BaseThread.stop()</span></code></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li><a class="reference internal" href="#module-watchdog.utils.dirsnapshot"><cite>watchdog.utils.dirsnapshot</cite></a><ul>
<li><a class="reference internal" href="#id4">Classes</a><ul>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshot"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshot</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshot.inode"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshot.inode()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshot.path"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshot.path()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshot.paths"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshot.paths</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshot.stat_info"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshot.stat_info()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshotDiff</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.dirs_created"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshotDiff.dirs_created</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.dirs_deleted"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshotDiff.dirs_deleted</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.dirs_modified"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshotDiff.dirs_modified</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.dirs_moved"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshotDiff.dirs_moved</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.files_created"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshotDiff.files_created</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.files_deleted"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshotDiff.files_deleted</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.files_modified"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshotDiff.files_modified</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.DirectorySnapshotDiff.files_moved"><code class="docutils literal notranslate"><span class="pre">DirectorySnapshotDiff.files_moved</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.EmptyDirectorySnapshot"><code class="docutils literal notranslate"><span class="pre">EmptyDirectorySnapshot</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.EmptyDirectorySnapshot.path"><code class="docutils literal notranslate"><span class="pre">EmptyDirectorySnapshot.path()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.utils.dirsnapshot.EmptyDirectorySnapshot.paths"><code class="docutils literal notranslate"><span class="pre">EmptyDirectorySnapshot.paths</span></code></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li><a class="reference internal" href="#module-watchdog.tricks"><cite>watchdog.tricks</cite></a><ul>
<li><a class="reference internal" href="#id5">Classes</a><ul>
<li><a class="reference internal" href="#watchdog.tricks.Trick"><code class="docutils literal notranslate"><span class="pre">Trick</span></code></a></li>
<li><a class="reference internal" href="#watchdog.tricks.LoggerTrick"><code class="docutils literal notranslate"><span class="pre">LoggerTrick</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.tricks.LoggerTrick.on_any_event"><code class="docutils literal notranslate"><span class="pre">LoggerTrick.on_any_event()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.tricks.LoggerTrick.on_created"><code class="docutils literal notranslate"><span class="pre">LoggerTrick.on_created()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.tricks.LoggerTrick.on_deleted"><code class="docutils literal notranslate"><span class="pre">LoggerTrick.on_deleted()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.tricks.LoggerTrick.on_modified"><code class="docutils literal notranslate"><span class="pre">LoggerTrick.on_modified()</span></code></a></li>
<li><a class="reference internal" href="#watchdog.tricks.LoggerTrick.on_moved"><code class="docutils literal notranslate"><span class="pre">LoggerTrick.on_moved()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.tricks.ShellCommandTrick"><code class="docutils literal notranslate"><span class="pre">ShellCommandTrick</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.tricks.ShellCommandTrick.on_any_event"><code class="docutils literal notranslate"><span class="pre">ShellCommandTrick.on_any_event()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#watchdog.tricks.AutoRestartTrick"><code class="docutils literal notranslate"><span class="pre">AutoRestartTrick</span></code></a><ul>
<li><a class="reference internal" href="#watchdog.tricks.AutoRestartTrick.on_any_event"><code class="docutils literal notranslate"><span class="pre">AutoRestartTrick.on_any_event()</span></code></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div>
<h4>Previous topic</h4>
<p class="topless"><a href="quickstart.html"
title="previous chapter">Quickstart</a></p>
</div>
<div>
<h4>Next topic</h4>
<p class="topless"><a href="hacking.html"
title="next chapter">Contributing</a></p>
</div>
<div role="note" aria-label="source link">
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="_sources/api.rst.txt"
rel="nofollow">Show Source</a></li>
</ul>
</div>
<div id="searchbox" style="display: none" role="search">
<h3 id="searchlabel">Quick search</h3>
<div class="searchformwrapper">
<form class="search" action="search.html" method="get">
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
<input type="submit" value="Go" />
</form>
</div>
</div>
<script>document.getElementById('searchbox').style.display = "block"</script>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
>index</a></li>
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="hacking.html" title="Contributing"
>next</a> |</li>
<li class="right" >
<a href="quickstart.html" title="Quickstart"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">watchdog 2.2.1 documentation</a> »</li>
<li class="nav-item nav-item-this"><a href="">API Reference</a></li>
</ul>
</div>
<div class="footer" role="contentinfo">
© Copyright 2010-2023, Yesudeep Mangalapilly and contributors.
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 5.3.0.
</div>
</body>
</html>