37 lines
801 B
PHP
37 lines
801 B
PHP
<?php
|
|
namespace IXR\Client;
|
|
|
|
/**
|
|
* IXR_ClientMulticall
|
|
*
|
|
* @package IXR
|
|
* @since 1.5.0
|
|
*/
|
|
class ClientMulticall extends Client
|
|
{
|
|
private $calls = [];
|
|
|
|
public function __construct($server, $path = false, $port = 80)
|
|
{
|
|
parent::__construct($server, $path, $port);
|
|
$this->useragent = 'The Incutio XML-RPC PHP Library (multicall client)';
|
|
}
|
|
|
|
public function addCall()
|
|
{
|
|
$args = func_get_args();
|
|
$methodName = array_shift($args);
|
|
$struct = [
|
|
'methodName' => $methodName,
|
|
'params' => $args
|
|
];
|
|
$this->calls[] = $struct;
|
|
}
|
|
|
|
public function query()
|
|
{
|
|
// Prepare multicall, then call the parent::query() method
|
|
return parent::query('system.multicall', $this->calls);
|
|
}
|
|
}
|