<?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); } }