File Coverage

blib/lib/App/RecordStream/Stream/Base.pm
Criterion Covered Total %
statement 21 21 100.0
branch n/a
condition n/a
subroutine 7 7 100.0
pod 0 4 0.0
total 28 32 87.5


line stmt bran cond sub pod time code
1             package App::RecordStream::Stream::Base;
2              
3 69     69   7122 use JSON::MaybeXS;
  69         109084  
  69         4604  
4              
5 69     69   6560 use App::RecordStream::Record;
  69         176  
  69         1947  
6 69     69   19759 use App::RecordStream::OutputStream;
  69         183  
  69         10038  
7              
8             my $json = JSON->new;
9              
10             sub new
11             {
12 8     8 0 12 my $class = shift;
13              
14 8         14 my $this =
15             {
16             };
17              
18 8         15 bless $this, $class;
19              
20 8         17 return $this;
21             }
22              
23             sub accept_record
24             {
25 4     4 0 8 my $this = shift;
26 4         5 my $record = shift;
27              
28 4         15 my $line = App::RecordStream::OutputStream::hashref_string($record);
29              
30 4         10 return $this->accept_line($line);
31             }
32              
33             sub accept_line
34             {
35 20     20 0 41 my $this = shift;
36 20         41 my $line = shift;
37              
38 20         237 my $record = App::RecordStream::Record->new($json->decode($line));
39              
40 20         74 return $this->accept_record($record);
41             }
42              
43             sub finish
44       8 0   {
45             }
46              
47             1;