public function testFactory()
 {
     $htmlFactory = new HtmlFactory();
     $text = $htmlFactory->createText('hello Dr\'Huang');
     $this->assertEquals('hello Dr\'Huang', $text->render());
     $jsonFactory = new JsonFactory();
     $text = $jsonFactory->createText(['name' => 'Dr\'Huang']);
     $this->assertEquals('{"name":"Dr\'Huang"}', $text->render());
 }
 /**
  * Serialize
  *
  * @param   io.streams.InputStream in
  * @param   lang.Type target
  * @return  var
  * @throws  lang.FormatException
  */
 public function deserialize($in, $target)
 {
     try {
         return $this->convert($target, JsonFactory::create()->decodeFrom($in));
     } catch (JsonException $e) {
         throw new FormatException('Malformed JSON', $e);
     }
 }
 /**
  * Create message from string representation
  *
  * @param   string string
  * @return  webservices.json.rpc.JsonResponseMessage
  */
 public static function fromString($string)
 {
     $decoder = JsonFactory::create();
     $msg = new JsonResponseMessage();
     $data = $decoder->decode($string);
     $msg->data = $data;
     $msg->id = $data['id'];
     return $msg;
 }
 /**
  * Serialize
  *
  * @param   var value
  * @return  string
  */
 public function serialize($payload)
 {
     $encoder = JsonFactory::create();
     if ($payload instanceof Payload) {
         return $encoder->encode($this->convert($payload->value));
     } else {
         return $encoder->encode($this->convert($payload));
     }
 }
 public function basicEchoTest()
 {
     $this->router->setMockData('{ "method" : "DummyRpcImplementation.passBackMethod", "params" : [ "string" , 1 , { "object" : "object" } , [ 1, 2, 3, 4, 5 ] ] , "id" : 1 }');
     $this->router->init();
     $response = $this->router->process();
     $this->assertEquals(200, $response->statusCode);
     $str = $response->getContent();
     $decoder = JsonFactory::create();
     $data = $decoder->decode($str);
 }
 /**
  * Create message from string representation
  *
  * @param   string string
  * @return  webservices.json.rpc.JsonRequestMessage
  */
 public static function fromString($string)
 {
     $decoder = JsonFactory::create();
     $msg = new JsonRequestMessage();
     $data = $decoder->decode($string);
     $msg->data = $data;
     $msg->id = $data['id'];
     list($cn, $method) = explode('.', $data['method']);
     $msg->setHandlerClass($cn);
     $msg->setMethod($method);
     return $msg;
 }
 /**
  * Retrieve serialized representation
  *
  * @return  string
  */
 public function serializeData()
 {
     return JsonFactory::create()->encode($this->data);
 }
 /**
  * Constructor. Initializes decoder member
  */
 public function __construct()
 {
     $this->json = JsonFactory::create();
 }