1SOAP::WSDL::Factory::DeUsseerriaCloinzterri(b3u)ted PerlSODAoPc:u:mWeSnDtLa:t:iFoanctory::Deserializer(3)
2
3
4
6 SOAP::WSDL::Factory::Deserializer - Factory for retrieving Deserializer
7 objects
8
10 # from SOAP::WSDL::Client:
11 $deserializer = SOAP::WSDL::Factory::Deserializer->get_deserializer({
12 soap_version => $soap_version,
13 class_resolver => $class_resolver,
14 });
15
16 # in deserializer class:
17 package MyWickedDeserializer;
18 use SOAP::WSDL::Factory::Deserializer;
19
20 # register class as deserializer for SOAP1.2 messages
21 SOAP::WSDL::Factory::Deserializer->register( '1.2' , __PACKAGE__ );
22
24 SOAP::WSDL::Factory::Deserializer serves as factory for retrieving
25 deserializer objects for SOAP::WSDL.
26
27 The actual work is done by specific deserializer classes.
28
29 SOAP::WSDL::Deserializer tries to load one of the following classes:
30
31 • The class registered for the scheme via register()
32
33 By default, SOAP::WSDL::Deserializer::XSD is registered for SOAP1.1
34 messages.
35
37 register
38 SOAP::WSDL::Deserializer->register('1.1', 'MyWickedDeserializer');
39
40 Globally registers a class for use as deserializer class.
41
42 get_deserializer
43 Returns an object of the deserializer class for this endpoint.
44
46 Deserializer classes may register with
47 SOAP::WSDL::Factory::Deserializer.
48
49 Registering a deserializer
50 Registering a deserializer class with SOAP::WSDL::Factory::Deserializer
51 is done by executing the following code where $version is the SOAP
52 version the class should be used for, and $class is the class name.
53
54 SOAP::WSDL::Factory::Deserializer->register( $version, $class);
55
56 To auto-register your transport class on loading, execute register() in
57 your tranport class (see SYNOPSIS above).
58
59 Deserializer package layout
60 Deserializer modules must be named equal to the deserializer class they
61 contain. There can only be one deserializer class per deserializer
62 module.
63
64 Methods to implement
65 Deserializer classes must implement the following methods:
66
67 • new
68
69 Constructor.
70
71 • deserialize
72
73 Deserialize data from XML to arbitrary formats.
74
75 deserialize() must return a fault indicating that deserializing
76 failed if any error is encountered during the process of
77 deserializing the XML message.
78
79 The following positional parameters are passed to the deserialize
80 method:
81
82 $content - the xml message
83
84 • generate_fault
85
86 Generate a fault in the supported format. The following named
87 parameters are passed as a single hash ref:
88
89 code - The fault code, e.g. 'soap:Server' or the like
90 role - The fault role (actor in SOAP1.1)
91 message - The fault message (faultstring in SOAP1.1)
92
94 Copyright 2007 Martin Kutter. All rights reserved.
95
96 This file is part of SOAP-WSDL. You may distribute/modify it under the
97 same terms as perl itself
98
100 Martin Kutter <martin.kutter fen-net.de>
101
103 $Rev: 176 $
104 $LastChangedBy: kutterma $
105 $Id: Serializer.pm 176 2007-08-31 15:28:29Z kutterma $
106 $HeadURL: https://soap-wsdl.svn.sourceforge.net/svnroot/soap-wsdl/SOAP-WSDL/trunk/lib/SOAP/WSDL/Factory/Serializer.pm $
107
108
109
110perl v5.36.0 2023-01-2S0OAP::WSDL::Factory::Deserializer(3)