Constructors
XML::Compile::SOAP::Trace->new(%options)
Called by the SOAP call implementation; not for normal users.
Accessors
$obj->date()
Returns the date string which represent the moment that the call was initiated.
$obj->elapse( [$kind] )
Returns the time in seconds (with hires, sub-second detail) of a part of the SOAP communication. Some
values may be "undef". Elapse without argument will return the total time elapsed.
As KINDs are defined "encode" (the time required by the translator build by XML::Compile::Schema to
translate Perl into an XML::LibXML tree), "transport", and "decode" (from XML::LibXML tree into
Perl)>. The transport components are also provided separately, as "stringify" (by XML::LibXML to
convert a tree into text), "connect" (for the network message exchange by HTTP::Daemon), and "parse"
(parsing answer string into XML)
See printTimings().
example:
print $trace->elapse('decode');
$obj->error( [$error] )
Often contains an error message, when something went wrong. The message is returned as
Log::Report::Exception. Only the first error is returned, use errors() to get all.
[2.31] When an $error is provided, it is added to the internal list of errors. The $error parameter
may be a Log::Report::Exception, a Log::Report::Message or a simple string.
$obj->errors()
[2.31] Return all errors, which are Log::Report::Exception objects. See also error().
$obj->request()
Returns the HTTP::Request object used for this SOAP call. This might be quite useful during
debugging, because a lot of the processing is hidden for the user... but you may want to see or log
what is actually begin send.
$obj->response()
Returns the HTTP::Response object, returned by the remote server. In some erroneous cases, the
client library will create an error response without any message was exchanged.
$obj->responseDOM()
Returns the XML::LibXML::Document top node of the response: the parsed text of the content of the
received HTTP message.
$obj->start()
Returns the (platform dependent) time value which represent the moment that the call was initiated.
See Time::HiRes method "time".
Printing
$obj->printErrors( [$fh] )
The filehandle defaults to STDERR.
If you want to see more output, try adding "<use Log::Report mode =" 3;>>
$obj->printRequest( [$fh], %options )
-Option --Default
pretty_print 0
pretty_print => 0|1|2
Use XML::Compile::Transport::compileClient(xml_format) if you want the messages to be shown
readible. The digits reflect XML::LibXML format settings: '0' is unchanged, '1' will show indented
formatting, and '2' has even more whitespace in it.
$obj->printResponse( [$fh], %options )
-Option --Default
pretty_print 0
pretty_print => 0|1|2
Use XML::Compile::Transport::compileClient(xml_format) if you want the messages to be shown
readible.
$obj->printTimings( [$fh] )
Print an overview on various timings to the selected filehandle.