logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Catalyst::Restarter - Uses File::ChangeNotify to check for changed files and restart the server

Authors

       Catalyst Contributors, see Catalyst.pm

Description

       This is the base class for all restarters, and it also provide functionality for picking an appropriate
       restarter subclass for a given platform.

       This class uses File::ChangeNotify to watch one or more directories of files and restart the Catalyst
       server when any of those files changes.

Methods

pick_subclass
       Returns the name of an appropriate subclass for the given platform.

   new(start_sub=>sub{...},...)
       This method creates a new restarter object, but should be called on a subclass, not this class.

       The "start_sub" argument is required. This is a subroutine reference that can be used to start the
       Catalyst server.

   run_and_watch
       This method forks, starts the server in a child process, and then watched for changed files in the
       parent. When files change, it kills the child, forks again, and starts a new server.

Name

       Catalyst::Restarter - Uses File::ChangeNotify to check for changed files and restart the server

See Also

       Catalyst, File::ChangeNotify

Synopsis

           my $class = Catalyst::Restarter->pick_subclass;

           my $restarter = $class->new(
               directories => '/path/to/MyApp',
               regex       => '\.yml$|\.yaml$|\.conf|\.pm$',
               start_sub => sub { ... }
           );

           $restarter->run_and_watch;

See Also