File Coverage

lib/XML/Compile/SOAP/Extension.pm
Criterion Covered Total %
statement 18 40 45.0
branch 0 14 0.0
condition n/a
subroutine 6 13 46.1
pod 8 9 88.8
total 32 76 42.1


line stmt bran cond sub pod time code
1             # Copyrights 2007-2021 by [Mark Overmeer ].
2             # For other contributors see ChangeLog.
3             # See the manual pages for details on the licensing terms.
4             # Pod stripped from pm file by OODoc 2.02.
5             # This code is part of distribution XML-Compile-SOAP. Meta-POD processed
6             # with OODoc into POD and HTML manual-pages. See README.md
7             # Copyright Mark Overmeer. Licensed under the same terms as Perl itself.
8              
9             package XML::Compile::SOAP::Extension;
10 7     7   1057 use vars '$VERSION';
  7         15  
  7         395  
11             $VERSION = '3.27';
12              
13              
14 7     7   34 use warnings;
  7         13  
  7         163  
15 7     7   33 use strict;
  7         13  
  7         223  
16              
17 7     7   40 use Log::Report 'xml-compile-soap';
  7         11  
  7         42  
18              
19             my @ext;
20              
21              
22 2     2 1 2289 sub new($@) { my $class = shift; (bless {}, $class)->init( {@_} ) }
  2         24  
23              
24             sub init($)
25 2     2 0 4 { my $self = shift;
26 2         18 trace "loading extension ".ref $self;
27 2         71 push @ext, $self;
28 2         6 $self;
29             }
30              
31             #--------
32              
33             ### For all methods named below: when called on an object, it is the stub
34             ### for the extension. Only when called as class method, it will walk all
35             ### extension objects.
36              
37             sub wsdl11Init($$)
38 0 0   0 1   { ref shift and return;
39 0           $_->wsdl11Init(@_) for @ext;
40             }
41              
42             #--------
43              
44             sub soap11OperationInit($$)
45 0 0   0 1   { ref shift and return;
46 0           $_->soap11OperationInit(@_) for @ext;
47             }
48              
49              
50             sub soap11ClientWrapper($$$)
51 0 0   0 1   { ref shift and return $_[1];
52 0           my ($op, $call, $args) = @_;
53 0           $call = $_->soap11ClientWrapper($op, $call, $args) for @ext;
54 0           $call;
55             }
56              
57              
58             sub soap11HandlerWrapper($$$)
59 0     0 1   { my ($thing, $op, $cb, $args) = @_;
60 0 0         ref $thing and return $cb;
61 0           $cb = $_->soap11HandlerWrapper($op, $cb, $args) for @ext;
62 0           $cb;
63             }
64              
65             #--------
66              
67             sub soap12OperationInit($$)
68 0 0   0 1   { ref shift and return;
69 0           $_->soap12OperationInit(@_) for @ext;
70             }
71              
72              
73             sub soap12ClientWrapper($$$)
74 0 0   0 1   { ref shift and return $_[1];
75 0           my ($op, $call, $args) = @_;
76 0           $call = $_->soap12ClientWrapper($op, $call, $args) for @ext;
77 0           $call;
78             }
79              
80              
81             sub soap12HandlerWrapper($$$)
82 0     0 1   { my ($thing, $op, $cb, $args) = @_;
83 0 0         ref $thing and return $cb;
84 0           $cb = $_->soap12HandlerWrapper($op, $cb, $args) for @ext;
85 0           $cb;
86             }
87              
88              
89             1;