File Coverage

lib/Archive/BagIt/Role/Plugin.pm
Criterion Covered Total %
statement 19 19 100.0
branch n/a
condition n/a
subroutine 6 6 100.0
pod 0 1 0.0
total 25 26 96.1


line stmt bran cond sub pod time code
1             package Archive::BagIt::Role::Plugin;
2 16     16   257231 use strict;
  16         37  
  16         702  
3 16     16   107 use warnings;
  16         42  
  16         1058  
4 16     16   697 use Moo::Role;
  16         19924  
  16         141  
5 16     16   10426 use namespace::autoclean;
  16         50134  
  16         139  
6             # ABSTRACT: A role that handles plugin loading
7             our $VERSION = '0.101'; # VERSION
8              
9             has plugin_name => (
10             is => 'ro',
11             #isa => 'Str',
12             default => __PACKAGE__,
13             );
14              
15              
16             has bagit => (
17             is => 'ro',
18             #isa => 'Archive::BagIt',
19             required => 1,
20             weak_ref => 1,
21             );
22              
23             sub BUILD {
24 211     211 0 51607 my ($self) = @_;
25 211         735 my $plugin_name = $self->plugin_name;
26 211         1172 $self->bagit->plugins( { $plugin_name => $self });
27 211         1509 return 1;
28             }
29 16     16   4433 no Moo;
  16         3687  
  16         110  
30             1;
31              
32             __END__