File Coverage

blib/lib/App/Addex/Output.pm
Criterion Covered Total %
statement 11 12 91.6
branch n/a
condition n/a
subroutine 5 6 83.3
pod 3 3 100.0
total 19 21 90.4


line stmt bran cond sub pod time code
1 5     5   2344 use strict;
  5         10  
  5         147  
2 5     5   25 use warnings;
  5         8  
  5         212  
3              
4             package App::Addex::Output 0.027;
5             # ABSTRACT: base class for output plugins
6              
7 5     5   35 use Carp ();
  5         9  
  5         560  
8              
9             #pod =head1 DESCRIPTION
10             #pod
11             #pod This is a base class for output plugins.
12             #pod
13             #pod =head1 METHODS
14             #pod
15             #pod =head2 new
16             #pod
17             #pod my $output_plugin = App::Addex::Output->new(\%arg);
18             #pod
19             #pod This method returns a new outputter.
20             #pod
21             #pod =cut
22              
23             sub new {
24 5     5 1 12 my ($class) = @_;
25              
26 5         18 return bless {} => $class;
27             }
28              
29             #pod =head2 process_entry
30             #pod
31             #pod $output_plugin->process_entry($entry);
32             #pod
33             #pod This method is called once for each entry to be processed. It must be
34             #pod overridden in output plugin classes, or the base implementation will throw an
35             #pod exception when called.
36             #pod
37             #pod =cut
38              
39 0     0 1   sub process_entry { Carp::confess "process_entry method not implemented" }
40              
41             #pod =head2 finalize
42             #pod
43             #pod $output_plugin->finalize;
44             #pod
45             #pod This method is called after all entries have been processed.
46             #pod
47             #pod =cut
48              
49       1 1   sub finalize { }
50              
51             1;
52              
53             __END__
54              
55             =pod
56              
57             =encoding UTF-8
58              
59             =head1 NAME
60              
61             App::Addex::Output - base class for output plugins
62              
63             =head1 VERSION
64              
65             version 0.027
66              
67             =head1 DESCRIPTION
68              
69             This is a base class for output plugins.
70              
71             =head1 PERL VERSION SUPPORT
72              
73             This module has the same support period as perl itself: it supports the two
74             most recent versions of perl. (That is, if the most recently released version
75             is v5.40, then this module should work on both v5.40 and v5.38.)
76              
77             Although it may work on older versions of perl, no guarantee is made that the
78             minimum required version will not be increased. The version may be increased
79             for any reason, and there is no promise that patches will be accepted to lower
80             the minimum required perl.
81              
82             =head1 METHODS
83              
84             =head2 new
85              
86             my $output_plugin = App::Addex::Output->new(\%arg);
87              
88             This method returns a new outputter.
89              
90             =head2 process_entry
91              
92             $output_plugin->process_entry($entry);
93              
94             This method is called once for each entry to be processed. It must be
95             overridden in output plugin classes, or the base implementation will throw an
96             exception when called.
97              
98             =head2 finalize
99              
100             $output_plugin->finalize;
101              
102             This method is called after all entries have been processed.
103              
104             =head1 AUTHOR
105              
106             Ricardo SIGNES <rjbs@semiotic.systems>
107              
108             =head1 COPYRIGHT AND LICENSE
109              
110             This software is copyright (c) 2006 by Ricardo SIGNES.
111              
112             This is free software; you can redistribute it and/or modify it under
113             the same terms as the Perl 5 programming language system itself.
114              
115             =cut