File Coverage

blib/lib/SRS/EPP/SRSMessage.pm
Criterion Covered Total %
statement 4 6 66.6
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 6 8 75.0


line stmt bran cond sub pod time code
1              
2             package SRS::EPP::SRSMessage;
3              
4 1     1   1262 use 5.010;
  1         3  
  1         32  
5 1     1   241 use Moose;
  0            
  0            
6              
7             extends "SRS::EPP::Message";
8              
9             has 'parts' =>
10             is => "rw",
11             isa => "ArrayRef[SRS::EPP::Message]",
12             ;
13              
14             has "+message" =>
15             isa => "XML::SRS",
16             ;
17              
18             after 'message_trigger' => sub {
19             my $self = shift;
20             return if $self->parts and @{$self->parts};
21             my $message = $self->message;
22             my ($class, $method);
23             if ( $message->isa("XML::SRS::Request") ) {
24             $class = "SRS::EPP::SRSRequest";
25             $method = "requests";
26             }
27             else {
28             $class = "SRS::EPP::SRSResponse";
29             $method = "results";
30             }
31             $self->parts( [
32             map {
33             $class->new( message => $_ )
34             }
35             @{ $message->$method//[] }
36             ] );
37             };
38              
39             1;