NAME
Catalyst::Engine::HTTP::Restarter::Watcher - Watch for changed application files
SYNOPSIS
my $watcher = Catalyst::Engine::HTTP::Restarter::Watcher->new(
directory => '/path/to/MyApp',
regex => '\.yml$|\.yaml$|\.conf|\.pm$',
delay => 1,
);
while (1) {
my @changed_files = $watcher->watch();
}
DESCRIPTION
This class monitors a directory of files for changes made to any file matching a regular expression. It correctly handles new files added to the application as well as files that are deleted.
METHODS
new ( directory => $path [, regex => $regex, delay => $delay ] )
Creates a new Watcher object.
watch
Returns a list of files that have been added, deleted, or changed since the last time watch was called.
DETECT_PACKAGE_COMPILATION
Returns true if B::Hooks::OP::Check::StashChange is installed and can be used to detect when files are compiled. This is used internally to make the Moose metaclass of any class being reloaded immutable.
If B::Hooks::OP::Check::StashChange is not installed, then the restarter makes all application components immutable. This covers the simple case, but is less useful if you're using Moose in components outside Catalyst's namespaces, but inside your application directory.
SEE ALSO
Catalyst, Catalyst::Engine::HTTP::Restarter, File::Modified
AUTHORS
Catalyst Contributors, see Catalyst.pm
THANKS
Many parts are ripped out of HTTP::Server::Simple
by Jesse Vincent.
COPYRIGHT
This program is free software, you can redistribute it and/or modify it under the same terms as Perl itself.