/** * Test encoding settings */ public function testSetGetEncoding() { $this->assertEquals('UTF-8', $this->_request->getEncoding()); $this->assertEquals('UTF-8', AbstractValue::getGenerator()->getEncoding()); $this->assertSame($this->_request, $this->_request->setEncoding('ISO-8859-1')); $this->assertEquals('ISO-8859-1', $this->_request->getEncoding()); $this->assertEquals('ISO-8859-1', AbstractValue::getGenerator()->getEncoding()); }
/** * Create XML request * * @return string */ public function saveXml() { $args = $this->_getXmlRpcParams(); $method = $this->getMethod(); $generator = AbstractValue::getGenerator(); $generator->openElement('methodCall')->openElement('methodName', $method)->closeElement('methodName'); if (is_array($args) && count($args)) { $generator->openElement('params'); foreach ($args as $arg) { $generator->openElement('param'); $arg->generateXml(); $generator->closeElement('param'); } $generator->closeElement('params'); } $generator->closeElement('methodCall'); return $generator->flush(); }
public function testChangingExceptionResetsGeneratorObject() { $generator = AbstractValue::getGenerator(); AbstractValue::setEncoding('UTF-8'); $this->assertNotSame($generator, AbstractValue::getGenerator()); $this->assertEquals($generator, AbstractValue::getGenerator()); $generator = AbstractValue::getGenerator(); AbstractValue::setEncoding('ISO-8859-1'); $this->assertNotSame($generator, AbstractValue::getGenerator()); $this->assertNotEquals($generator, AbstractValue::getGenerator()); }
/** * Return response as XML * * @return string */ public function saveXml() { $value = $this->_getXmlRpcReturn(); $generator = AbstractValue::getGenerator(); $generator->openElement('methodResponse')->openElement('params')->openElement('param'); $value->generateXml(); $generator->closeElement('param')->closeElement('params')->closeElement('methodResponse'); return $generator->flush(); }
/** * Serialize fault to XML * * @return string */ public function saveXml() { // Create fault value $faultStruct = array('faultCode' => $this->getCode(), 'faultString' => $this->getMessage()); $value = AbstractValue::getXmlRpcValue($faultStruct); $generator = AbstractValue::getGenerator(); $generator->openElement('methodResponse')->openElement('fault'); $value->generateXml(); $generator->closeElement('fault')->closeElement('methodResponse'); return $generator->flush(); }