47 lines
		
	
	
		
			920 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			920 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| /**
 | |
|  * ManiaPlanet dedicated server Xml-RPC client
 | |
|  *
 | |
|  * @license     http://www.gnu.org/licenses/lgpl.html LGPL License 3
 | |
|  */
 | |
| 
 | |
| // TODO XMLRPCLib: remettre les credits
 | |
| 
 | |
| namespace Maniaplanet\DedicatedServer\Xmlrpc;
 | |
| 
 | |
| if (!defined('LF')) define('LF', "\n");
 | |
| 
 | |
| class ClientMulticall extends Client
 | |
| {
 | |
| 	public $calls = array();
 | |
| 
 | |
| 	function addCall($methodName, $args)
 | |
| 	{
 | |
| 		$struct = array('methodName' => $methodName, 'params' => $args);
 | |
| 		$this->calls[] = $struct;
 | |
| 
 | |
| 		return (count($this->calls) - 1);
 | |
| 	}
 | |
| 	
 | |
| 	function multiquery()
 | |
| 	{
 | |
| 		$result = array();
 | |
| 		if(count($this->calls))
 | |
| 		{
 | |
| 			$result = parent::query('system.multicall', $this->calls);
 | |
| 			$this->calls = array();  // reset for next calls
 | |
| 		}
 | |
| 		return $result;
 | |
| 	}
 | |
| 
 | |
| 	function multiqueryIgnoreResult()
 | |
| 	{
 | |
| 		if(count($this->calls))
 | |
| 		{
 | |
| 			parent::queryIgnoreResult('system.multicall', $this->calls);
 | |
| 			$this->calls = array();  // reset for next calls
 | |
| 		}
 | |
| 	}
 | |
| }
 | |
| 
 | |
| ?>
 |