File Coverage

blib/lib/POE/Component/DirWatch/New.pm
Criterion Covered Total %
statement 4 6 66.6
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 6 8 75.0


line stmt bran cond sub pod time code
1             package POE::Component::DirWatch::New;
2              
3 2     2   145544 use POE;
  2         5  
  2         15  
4 2     2   1765 use Moose;
  0            
  0            
5              
6             our $VERSION = "0.300002";
7              
8             extends 'POE::Component::DirWatch';
9             with 'POE::Component::DirWatch::Role::Signatures';
10              
11             #--------#---------#---------#---------#---------#---------#---------#---------
12              
13             around _file_callback => sub {
14             my $orig = shift;
15             my ($self, $file) = @_[OBJECT, ARG0];
16             return if exists $self->signatures->{"$file"};
17             $orig->(@_);
18             };
19              
20             __PACKAGE__->meta->make_immutable;
21              
22             1;
23              
24             __END__;
25              
26             #--------#---------#---------#---------#---------#---------#---------#---------
27              
28             =head1 NAME
29              
30             POE::Component::DirWatch::New
31              
32             =head1 DESCRIPTION
33              
34             DirWatch::New extends DirWatch to exclude previously seen files.
35              
36             This module consumes the L<POE::Component::DirWatch::Role::Signatures> role,
37             please see its documentation for information about methods or attributes
38             it provides or extends.
39              
40             =head1 METHODS
41              
42             =head2 file_callback
43              
44             C<around '_file_callback'> Don't call the callback if file has been seen.
45              
46             =head2 meta
47              
48             Keeping tests happy.
49              
50             =head1 SEE ALSO
51              
52             L<POE::Component::DirWatch>, L<Moose>
53              
54             =head1 COPYRIGHT
55              
56             Copyright 2006-2008 Guillermo Roditi. This is free software; you may
57             redistribute it and/or modify it under the same terms as Perl itself.
58              
59             =cut
60