Author: roger Date: Wed Nov 23 21:02:46 2011 New Revision: 1205592 URL: http://svn.apache.org/viewvc?rev=1205592&view=rev Log: THRIFT-1434 Node.js Thrift compiler fails to generate server code using inheritance Patch: Wade Simmons
Modified: thrift/trunk/compiler/cpp/src/generate/t_js_generator.cc Modified: thrift/trunk/compiler/cpp/src/generate/t_js_generator.cc URL: http://svn.apache.org/viewvc/thrift/trunk/compiler/cpp/src/generate/t_js_generator.cc?rev=1205592&r1=1205591&r2=1205592&view=diff ============================================================================== --- thrift/trunk/compiler/cpp/src/generate/t_js_generator.cc (original) +++ thrift/trunk/compiler/cpp/src/generate/t_js_generator.cc Wed Nov 23 21:02:46 2011 @@ -741,7 +741,9 @@ void t_js_generator::generate_service(t_ "var " << tservice->get_extends()->get_name() << " = require('./" << tservice->get_extends()->get_name() << "')" << endl << "var " << tservice->get_extends()->get_name() << "Client = " << - tservice->get_extends()->get_name() << ".Client" << endl; + tservice->get_extends()->get_name() << ".Client" << endl << + "var " << tservice->get_extends()->get_name() << "Processor = " << + tservice->get_extends()->get_name() << ".Processor" << endl; } @@ -779,6 +781,13 @@ void t_js_generator::generate_service_pr scope_down(f_service_); + if (tservice->get_extends() != NULL) { + indent(f_service_) << "Thrift.inherits(" << + js_namespace(tservice->get_program()) << + service_name_ << "Processor, " << + tservice->get_extends()->get_name() << "Processor)" << endl; + } + // Generate the server implementation indent(f_service_) << js_namespace(tservice->get_program()) << service_name_ << "Processor.prototype.process = function(input, output) ";