NAME

RPC::Xmlrpc_c::Client::Curl - Curl XML transport for RPC::Xmlrpc_c::Client

SYNOPSIS

use RPC::Xmlrpc_c::Client::Curl qw(:all);

RPC::Xmlrpc_c::Client::Curl->createObject(TRANSPORT      => \my $transport,
                                          TRANSPORTPARMS => {},
                                          ERROR          => \my $error1);

RPC::Xmlrpc_c::Client->createObject(TRANSPORT => $transport,
                                    CLIENT    => \my $client,
                                    ERROR     => \my $error2);

DESCRIPTION

This module provides client XML transport functions for use with a RPC::Xmlrpc-c::Client XML-RPC client object. In particular, it provides functions based on HTTP using the Curl HTTP library. It uses XML-RPC For C/C++'s Curl transport.

Probably the only reason you would be interested in this class is that you need something like it to use RPC::Xmlrpc_c::Client, as seen in the example above.

RPC::Xmlrpc_c::Client::Curl->createObject

RPC::Xmlrpc_c::Client::Curl->createObject(TRANSPORT      => \my $transport,
                                          TRANSPORTPARMS => {},
                                          ERROR          => \my $error1);

This creates a RPC::Xmlrpc_c::Client::Curl object.

Arguments:

C<TRANSPORT>

 This is a reference to a scalar variable that the method sets to
 the handle of the new object.

 If you do not specify this option, you don't get a handle for the
 object, and as no reference is created to the object, it gets destroyed
 as soon as it is created.  This is not very useful.

 If the method fails to create the object, it sets the variable
 arbitrarily.  See C<ERROR>.

C<TRANSPORTPARMS>

 This is a reference to a hash of named transport parameters.

 Example:

    { network_interface  => 'eth0',
      no_ssl_verify_peer => 1
    }

 The names (hash keys) are the names of the members of
 C<struct xmlrpc_curl_xportparms> in Xmlrpc-c.

 Any transport parameter you don't specify defaults to the Xmlrpc-c
 default.  If you specify a key that is not a valid transport
 parameter name, createObject() ignores it.

C<ERROR>

 This is a reference to a scalar variable that the method sets to
 a text description of why it is unable to create the object.  If
 it I<is> able to create the object, it sets it to C<undef>.

 If you do not specify this option and creation fails, the method
 croaks.