NAME

AnyEvent::Filesys::Watcher::Fallback - Fallback file system watcher

SYNOPSIS

$watcher = AnyEvent::Filesys::Watcher::Fallback->new(
    directories => ['lib', 't'],
    callback => sub { warn "you're working too much"},
);

# This has the same effect as:

$watcher = AnyEvent::Filesys::Watcher->new(
    backend => 'Fallback',
    directories => ['lib', 't'],
    callback => sub { warn "you're working too much"},
);

DESCRIPTION

This is the fallback backend for AnyEvent::Filesys::Watcher. It checks the file system in short intervals. This is, of course, quite inefficient.

CONSTRUCTOR

You should normally call the constructor of the base class that will pick the optimal backend for the current platform.

The following constructors are available:

new(OPTIONS)

Creates a new AnyEvent::Filesys::Watcher. The constructor may throw an exception in case of an error!

OPTIONS is a hash of named options:

directories DIRECTORIES

DIRECTORIES is a reference to an array of directories to monitor. A single directory can also be passed as a scalar.

Optional. The default is the base directory, see "base_dir" below.

dirs DIRECTORIES

This is an alias for the option "directories".

base_dir BASE_DIRECTORY

Relative path names for the "directories" option are resolved relative to BASE_DIRECTORY.

The default is the current working directory at the time that the object was instantiated.

callback CALLBACK

A code reference that is called, when a modification to the monitored directories is deteced. The callback is passed a list of AnyEvent::Filesys::Watcher::Events.

One of the options "callback" or "raw_events" (see below) are required.

cb CALLBACK

This is an alias for the parameter callback.

This argument is required if the argument callback has not been given.

interval SECONDS

Specifies the time in fractional seconds between file system checks.

Optional. The default is backend-specific 1 s.

filter FILTER

FILTER should either be a regular expression or a code reference. If this is a regular expression, only (absolute) file names matching that regular expressions can cause an event.

If FILTER is a code reference, the subrouting receives the absolute file name as an argument and should return a truthy value for all files that should cause an event.

Optional. By default, all events are passed through.

All other options are ignored.

METHODS

See the base class AnyEvent::Filesys::Watcher. This module does not have any additional public methods.

ORIGINAL AUTHOR

Mark Grimes, <mgrimes@cpan.org>

CONTRIBUTORS

  • Gasol Wu <gasol.wu@gmail.com> who contributed the BSD support for IO::KQueue

  • Dave Hayes <dave@jetcafe.org>

  • Carsten Wolff <carsten@wolffcarsten.de>

  • Ettore Di Giacinto (@mudler)

  • Martin Barth (@ufobat)

AUTHOR

Guido Flohr <guido.flohr@cantanea.com>.

SEE ALSO

AnyEvent::Filesys::Watcher, perl(1)