AnyEvent-Filesys-Notify
view release on metacpan or search on metacpan
lib/AnyEvent/Filesys/Notify/Event.pm view on Meta::CPAN
package AnyEvent::Filesys::Notify::Event;
# ABSTRACT: Object to report changes in the monitored filesystem
use Moo;
use MooX::late;
use namespace::autoclean;
our $VERSION = '1.23';
has path => ( is => 'ro', isa => 'Str', required => 1 );
has type => ( is => 'ro', isa => 'Str', required => 1 );
has is_dir => ( is => 'ro', isa => 'Bool', default => 0 );
sub is_created {
return shift->type eq 'created';
}
sub is_modified {
return shift->type eq 'modified';
}
sub is_deleted {
return shift->type eq 'deleted';
}
1;
__END__
=pod
=head1 NAME
AnyEvent::Filesys::Notify::Event - Object to report changes in the monitored filesystem
=head1 VERSION
version 1.23
=head1 SYNOPSIS
use AnyEvent::Filesys::Notify;
my $notifier = AnyEvent::Filesys::Notify->new(
dir => [ qw( this_dir that_dir ) ],
interval => 2.0, # Optional depending on underlying watcher
cb => sub {
my (@events) = @_;
for my $event (@events){
process_created_file($event->path) if $event->is_created;
process_modified_file($event->path) if $event->is_modified;
process_deleted_file($event->path) if $event->is_deleted;
}
},
);
=head1 DESCRIPTION
Simple object to encapsulate information about the filesystem modifications.
=head1 METHODS
=head2 path()
my $modified_file = $event->path();
Returns the path to the modified file. This is the path as given by the user,
( run in 0.820 second using v1.01-cache-2.11-cpan-39bf76dae61 )