public function inputFilter($data, stdClass $context)
 {
     $result = xmlrpc_decode($data, "UTF-8");
     $stream = new BytesIO();
     $writer = new Writer($stream, true);
     if (isset($result['faultString'])) {
         $stream->write(Tags::TagError);
         $writer->writeString($result['faultString']);
     } else {
         $stream->write(Tags::TagResult);
         $writer->serialize($result);
     }
     $stream->write(Tags::TagEnd);
     return $stream->toString();
 }
 public function inputFilter($data, stdClass $context)
 {
     $response = json_decode($data);
     if (!isset($response->result)) {
         $response->result = null;
     }
     if (!isset($response->error)) {
         $response->error = null;
     }
     $stream = new BytesIO();
     $writer = new Writer($stream, true);
     if ($response->error) {
         $stream->write(Tags::TagError);
         $writer->writeString($response->error->message);
     } else {
         $stream->write(Tags::TagResult);
         $writer->serialize($response->result);
     }
     $stream->write(Tags::TagEnd);
     return $stream->toString();
 }
Exemple #3
0
 function doOutput(array $args, stdClass $context, $result)
 {
     $mode = $context->mode;
     $simple = $context->simple;
     if ($simple === null) {
         $simple = $this->simple;
     }
     if ($mode === ResultMode::RawWithEndTag || $mode == ResultMode::Raw) {
         return $result;
     }
     $stream = new BytesIO();
     $writer = new Writer($stream, $simple);
     $stream->write(Tags::TagResult);
     if ($mode === ResultMode::Serialized) {
         $stream->write($result);
     } else {
         $writer->reset();
         $writer->serialize($result);
     }
     if ($context->byref) {
         $stream->write(Tags::TagArgument);
         $writer->reset();
         $writer->writeArray($args);
     }
     $data = $stream->toString();
     $stream->close();
     return $data;
 }