mirror of
https://github.com/systemd/systemd.git
synced 2024-11-24 02:33:36 +08:00
path: add PathModified (= PathChanged + IN_MODIFY)
This commit is contained in:
parent
4b562198c7
commit
e92238567b
@ -113,6 +113,7 @@
|
||||
<term><varname>PathExists=</varname></term>
|
||||
<term><varname>PathExistsGlob=</varname></term>
|
||||
<term><varname>PathChanged=</varname></term>
|
||||
<term><varname>PathModified=</varname></term>
|
||||
<term><varname>DirectoryNotEmpty=</varname></term>
|
||||
|
||||
<listitem><para>Defines paths to
|
||||
@ -129,8 +130,14 @@
|
||||
specified. <varname>PathChanged=</varname>
|
||||
may be used to watch a file or
|
||||
directory and activate the configured
|
||||
unit whenever it changes or is
|
||||
modified. <varname>DirectoryNotEmpty=</varname>
|
||||
unit whenever it changes. It is not activated
|
||||
on every write to the watched file but it is
|
||||
activated if the file which was open for writing
|
||||
gets closed. <varname>PathModified=</varname>
|
||||
is similar, but additionally it is activated
|
||||
also on simple writes to the watched file.
|
||||
|
||||
<varname>DirectoryNotEmpty=</varname>
|
||||
may be used to watch a directory and
|
||||
activate the configured unit whenever
|
||||
it contains at least one file.</para>
|
||||
@ -154,11 +161,7 @@
|
||||
activated, then the configured unit is
|
||||
immediately activated as
|
||||
well. Something similar does not apply
|
||||
to
|
||||
<varname>PathChanged=</varname>. The
|
||||
latter is not activated on simple
|
||||
writes but only if files with were
|
||||
opened for writing are closed.
|
||||
to <varname>PathChanged=</varname>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
|
@ -44,6 +44,7 @@ int pathspec_watch(PathSpec *s, Unit *u) {
|
||||
[PATH_EXISTS] = IN_DELETE_SELF|IN_MOVE_SELF|IN_ATTRIB,
|
||||
[PATH_EXISTS_GLOB] = IN_DELETE_SELF|IN_MOVE_SELF|IN_ATTRIB,
|
||||
[PATH_CHANGED] = IN_DELETE_SELF|IN_MOVE_SELF|IN_ATTRIB|IN_CLOSE_WRITE|IN_CREATE|IN_DELETE|IN_MOVED_FROM|IN_MOVED_TO,
|
||||
[PATH_MODIFIED] = IN_DELETE_SELF|IN_MOVE_SELF|IN_ATTRIB|IN_CLOSE_WRITE|IN_CREATE|IN_DELETE|IN_MOVED_FROM|IN_MOVED_TO|IN_MODIFY,
|
||||
[PATH_DIRECTORY_NOT_EMPTY] = IN_DELETE_SELF|IN_MOVE_SELF|IN_ATTRIB|IN_CREATE|IN_MOVED_TO
|
||||
};
|
||||
|
||||
@ -713,6 +714,7 @@ static const char* const path_type_table[_PATH_TYPE_MAX] = {
|
||||
[PATH_EXISTS] = "PathExists",
|
||||
[PATH_EXISTS_GLOB] = "PathExistsGlob",
|
||||
[PATH_CHANGED] = "PathChanged",
|
||||
[PATH_MODIFIED] = "PathModified",
|
||||
[PATH_DIRECTORY_NOT_EMPTY] = "DirectoryNotEmpty"
|
||||
};
|
||||
|
||||
|
@ -41,6 +41,7 @@ typedef enum PathType {
|
||||
PATH_EXISTS_GLOB,
|
||||
PATH_DIRECTORY_NOT_EMPTY,
|
||||
PATH_CHANGED,
|
||||
PATH_MODIFIED,
|
||||
_PATH_TYPE_MAX,
|
||||
_PATH_TYPE_INVALID = -1
|
||||
} PathType;
|
||||
|
Loading…
Reference in New Issue
Block a user