private function sendRequest($method, $args)
 {
     $request = new SXmlRpcRequest($method, $args);
     $headers = array("Content-Type: text/xml", "User-Agent: {$this->userAgent}", "Content-length: " . $request->length());
     $client = new SHttpClient($this->uri, $headers);
     $response = $client->post($request->toXml());
     if ($response->code != 200) {
         throw new SXmlRpcClientException("Request failed with code {$response->code}");
     }
     return $this->parseResponse($response->body);
 }
 public function testXmlPostRequest()
 {
     $xml = '<?xml version="1.0"?>
     <methodCall>
         <methodName>sample.sumAndDifference</methodName>
         <params>
             <param><value><i4>5</i4></value></param>
             <param><value><i4>3</i4></value></param>
         </params>
    </methodCall>';
     $client = new SHttpClient('http://xmlrpc-c.sourceforge.net/api/sample.php', array('Content-Type: text/xml'));
     $response = $client->post($xml);
     $this->assertFalse(strpos($response->body, '<value><int>8</int></value>') === false);
 }