File Coverage

blib/lib/Net/MundiPagg.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             package Net::MundiPagg;
2             $Net::MundiPagg::VERSION = '0.000003';
3 1     1   56788 use Moo;
  1         27450  
  1         7  
4 1     1   3273 use XML::Compile::SOAP11;
  0            
  0            
5             use XML::Compile::WSDL11;
6             use XML::Compile::Transport::SOAPHTTP;
7              
8             use File::ShareDir qw{ module_file };
9              
10             has 'client' => (
11             is => 'ro',
12             builder => sub {
13             my $wsdl = module_file( ref $_[0], 'mundipagg.wsdl' );
14             my $client = XML::Compile::WSDL11->new($wsdl);
15              
16             foreach my $i ( 0 .. 2 ) {
17             my $xsd = module_file( ref $_[0], "schema$i.xsd" );
18             $client->importDefinitions($xsd);
19             }
20              
21             $client->compileCalls;
22              
23             return $client;
24             },
25             );
26              
27             sub BUILD {
28             my ($self) = @_;
29              
30             no strict 'refs'; ## no critic(TestingAndDebugging::ProhibitNoStrict)
31             foreach my $method ( map { $_->name } $self->client->operations ) {
32             *{$method} = sub {
33             my ( $this, %args ) = @_;
34             return $this->client->call( $method, %args );
35             };
36             }
37              
38             return;
39             }
40              
41             1;
42              
43             #ABSTRACT: Net::MundiPagg - Documentation coming soon :)
44              
45             __END__