=head1 NAME

XML::Compile::SOAP::Client - SOAP message initiators

=head1 INHERITANCE

 XML::Compile::SOAP::Client is extended by
   XML::Compile::SOAP11::Client
   XML::Compile::SOAP12::Client
   XML::Compile::SOAP::HTTPClient

=head1 SYNOPSIS

 # never used directly, only via XML::Compile::SOAP1[12]::Client

=head1 DESCRIPTION

This class defines the methods that each client side of the SOAP
message exchange protocols must implement.

=head1 METHODS

=head2 Constructors

This object can not be instantiated, but is only used as secundary
base class.  The primary must contain the C<new>.

=head2 Single messages

$obj-E<gt>B<compileClient>(OPTIONS)

=over 4

Combine sending a request, and receiving the answer.  In LIST context,
both the decoded answer, as a HASH with various trace information is
returned.  In SCALAR context, only the answer is given.

 Option   --Default
 kind       'request-response'
 request    <required>
 response   <required>
 transport  <required>

. kind => STRING

=over 4

Four kinds of message exchange are defined in WSDL terminology:
C<request-response>, C<notification-operation>, C<one-way>, and
C<solicit-response>.  Only the first one is supported on the moment.

=back

. request => CODE

. response => CODE

. transport => CODE

=back

=head2 Debugging

$obj-E<gt>B<fakeServer>([FAKE|undef])

XML::Compile::SOAP::Client-E<gt>B<fakeServer>([FAKE|undef])

=over 4

Returns the fake server, if defined: it will be called to simulate
an external SOAP server.  Use this for debugging and regression test
scripts.

Usually, you should set your own FAKE server, but simply instantiate
a L<XML::Compile::SOAP::Tester|XML::Compile::SOAP::Tester> object.

BE WARNED: this FAKE server must be instantiated B<before> the
SOAP client handlers are compiled.

=back

=head1 SEE ALSO

This module is part of XML-Compile-SOAP distribution version 0.57,
built on October 18, 2007. Website: F<http://perl.overmeer.net/xml-compile/>

=head1 LICENSE

Copyrights 2007 by Mark Overmeer. For other contributors see ChangeLog.

This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
See F<http://www.perl.com/perl/misc/Artistic.html>

