Generate REST code properly for objects/struct arguments
authorMark Slee <mcslee@apache.org>
Mon, 15 Oct 2007 21:32:12 +0000 (21:32 +0000)
committerMark Slee <mcslee@apache.org>
Mon, 15 Oct 2007 21:32:12 +0000 (21:32 +0000)
Reviewed By: hzhao

Test Plan: Data store API

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665302 13f79535-47bb-0310-9956-ffa450edef68

compiler/cpp/src/generate/t_php_generator.cc

index 21d3253..3f0569b 100644 (file)
@@ -918,6 +918,9 @@ void t_php_generator::generate_service_rest(t_service* tservice) {
       } else if (atype->is_set()) {
         f_service_ << 
           indent() << "$" << (*a_iter)->get_name() << " = array_fill_keys(json_decode($" << (*a_iter)->get_name() << ", true), 1);" << endl;
+      } else if (atype->is_struct() || atype->is_xception()) {
+        f_service_ << 
+          indent() << "$" << (*a_iter)->get_name() << " = new " << php_namespace(atype->get_program()) << atype->get_name() << "(json_decode($" << (*a_iter)->get_name() << ", true));" << endl;
       }
     }
     f_service_ <<