File Coverage

blib/lib/Catmandu/AlephX/Op/GetHolding.pm
Criterion Covered Total %
statement 9 17 52.9
branch n/a
condition n/a
subroutine 3 5 60.0
pod 0 2 0.0
total 12 24 50.0


line stmt bran cond sub pod time code
1             package Catmandu::AlephX::Op::GetHolding;
2 1     1   102954 use Catmandu::Sane;
  1         189520  
  1         8  
3 1     1   324 use Catmandu::Util qw(:check :is);
  1         3  
  1         439  
4 1     1   8 use Moo;
  1         2  
  1         6  
5              
6             our $VERSION = "1.072";
7              
8             with('Catmandu::AlephX::Response');
9              
10             has cdl_holdings => (
11             is => 'ro',
12             lazy => 1,
13             isa => sub{
14             check_array_ref($_[0]);
15             },
16             default => sub {
17             [];
18             }
19             );
20 0     0 0   sub op { 'get-holding' }
21              
22             sub parse {
23 0     0 0   my($class,$str_ref) = @_;
24 0           my $xpath = xpath($str_ref);
25              
26 0           my $op = op();
27              
28 0           my @cdl_holdings;
29              
30 0           for my $ch($xpath->find("/$op/cdl-holdings")->get_nodelist()){
31 0           push @cdl_holdings,get_children($ch,1);
32             }
33              
34             __PACKAGE__->new(
35 0           cdl_holdings => \@cdl_holdings,
36             session_id => $xpath->findvalue("/$op/session-id"),
37             errors => $class->parse_errors($xpath),
38             content_ref => $str_ref
39             );
40             }
41              
42             1;