File Coverage

blib/lib/Log/Any/Adapter/Handler.pm
Criterion Covered Total %
statement 27 27 100.0
branch n/a
condition 1 3 33.3
subroutine 10 10 100.0
pod 0 1 0.0
total 38 41 92.6


line stmt bran cond sub pod time code
1             package Log::Any::Adapter::Handler;
2             # ABSTRACT: Log::Any::Adapter for Log::Handler
3             our $VERSION = '0.007';
4              
5 1     1   27262 use strict;
  1         2  
  1         32  
6 1     1   4 use warnings;
  1         1  
  1         19  
7              
8 1     1   4 use Log::Any::Adapter::Util ();
  1         4  
  1         13  
9 1     1   416 use parent qw(Log::Any::Adapter::Base);
  1         241  
  1         4  
10 1     1   1646 use Log::Handler;
  1         27496  
  1         7  
11              
12             sub init {
13 1     1 0 3090 my $self = shift;
14 1   33     8 $self->{logger} ||= Log::Handler->new;
15             }
16              
17             # logging methods
18             foreach my $method (Log::Any::Adapter::Util::logging_methods) {
19 1     1   75 no strict 'refs';
  1         1  
  1         79  
20             my $handler_method = $method;
21             *$method = sub {
22 14     14   3369 my $self = shift;
23 14         61 return $self->{logger}->$handler_method(@_);
24             };
25             }
26              
27             # detection methods
28             foreach my $method (Log::Any::Adapter::Util::detection_methods()) {
29             my $self = shift;
30             my $handler_method = $method;
31 1     1   4 no strict 'refs';
  1         0  
  1         54  
32             *$method = sub {
33 7     7   2245 my $self = shift;
34 7         43 return $self->{logger}->$handler_method(@_);
35             };
36             }
37              
38             1;
39              
40             __END__