// parent services were also generated with templates enabled.
extends += "T<Protocol_>";
}
- extends_processor = ", public " + extends;
+ extends_processor = extends;
+ } else {
+ extends_processor = "::apache::thrift::T" + pstyle + "Processor";
}
string template_header, template_suffix, typename_str;
f_header_ <<
template_header <<
"class " << service_name_ << pstyle << class_suffix <<
- " : virtual public ::apache::thrift::T" << pstyle << "Processor" <<
- extends_processor << " {" << endl;
+ " : public " << extends_processor << " {" << endl;
// Protected data members
f_header_ <<
out <<
indent() << "void* ctx = NULL;" << endl <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " ctx = eventHandler_->getContext(\"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " ctx = this->eventHandler_->getContext(\"" <<
service_func_name << "\", callContext);" << endl <<
indent() << "}" << endl <<
indent() << "apache::thrift::TProcessorContextFreer freer(" <<
- "eventHandler_.get(), ctx, \"" << service_func_name << "\");" <<
+ "this->eventHandler_.get(), ctx, \"" << service_func_name << "\");" <<
endl << endl <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->preRead(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->preRead(ctx, \"" <<
service_func_name << "\");" << endl <<
indent() << "}" << endl << endl <<
indent() << argsname << " args;" << endl <<
indent() << "iprot->readMessageEnd();" << endl <<
indent() << "uint32_t bytes = iprot->getTransport()->readEnd();" <<
endl << endl <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->postRead(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->postRead(ctx, \"" <<
service_func_name << "\", bytes);" << endl <<
indent() << "}" << endl <<
endl;
indent_up();
out <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->handlerError(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->handlerError(ctx, \"" <<
service_func_name << "\");" << endl <<
indent() << "}" << endl;
// Shortcut out here for oneway functions
if (tfunction->is_oneway()) {
out <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->asyncComplete(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->asyncComplete(ctx, \"" <<
service_func_name << "\");" << endl <<
indent() << "}" << endl << endl <<
indent() << "return;" << endl;
// Serialize the result into a struct
out <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->preWrite(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->preWrite(ctx, \"" <<
service_func_name << "\");" << endl <<
indent() << "}" << endl << endl <<
indent() << "oprot->writeMessageBegin(\"" << tfunction->get_name() <<
indent() << "oprot->writeMessageEnd();" << endl <<
indent() << "bytes = oprot->getTransport()->writeEnd();" << endl <<
indent() << "oprot->getTransport()->flush();" << endl << endl <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->postWrite(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->postWrite(ctx, \"" <<
service_func_name << "\", bytes);" << endl <<
indent() << "}" << endl;
indent() << tservice->get_name() + "_" + tfunction->get_name() <<
"_args args;" << endl <<
indent() << "void* ctx = NULL;" << endl <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " ctx = eventHandler_->getContext(\"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " ctx = this->eventHandler_->getContext(\"" <<
service_func_name << "\", NULL);" << endl <<
indent() << "}" << endl <<
indent() << "apache::thrift::TProcessorContextFreer freer(" <<
- "eventHandler_.get(), ctx, \"" << service_func_name << "\");" <<
+ "this->eventHandler_.get(), ctx, \"" << service_func_name << "\");" <<
endl << endl <<
indent() << "try {" << endl;
indent_up();
out <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->preRead(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->preRead(ctx, \"" <<
service_func_name << "\");" << endl <<
indent() << "}" << endl <<
indent() << "args.read(iprot);" << endl <<
indent() << "iprot->readMessageEnd();" << endl <<
indent() << "uint32_t bytes = iprot->getTransport()->readEnd();" <<
endl <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->postRead(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->postRead(ctx, \"" <<
service_func_name << "\", bytes);" << endl <<
indent() << "}" << endl;
scope_down(out);
// TODO(dreiss): Handle TExceptions? Expose to server?
out <<
indent() << "catch (const std::exception& exn) {" << endl <<
- indent() << " if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->handlerError(ctx, \"" <<
+ indent() << " if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->handlerError(ctx, \"" <<
service_func_name << "\");" << endl <<
indent() << " }" << endl <<
indent() << " return cob(false);" << endl <<
if (tfunction->is_oneway()) {
out <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->asyncComplete(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->asyncComplete(ctx, \"" <<
service_func_name << "\");" << endl <<
indent() << "}" << endl;
}
// Serialize the result into a struct
out <<
endl <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " ctx = eventHandler_->getContext(\"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " ctx = this->eventHandler_->getContext(\"" <<
service_func_name << "\", NULL);" << endl <<
indent() << "}" << endl <<
indent() << "apache::thrift::TProcessorContextFreer freer(" <<
- "eventHandler_.get(), ctx, \"" << service_func_name <<
+ "this->eventHandler_.get(), ctx, \"" << service_func_name <<
"\");" << endl << endl <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->preWrite(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->preWrite(ctx, \"" <<
service_func_name << "\");" << endl <<
indent() << "}" << endl << endl <<
indent() << "oprot->writeMessageBegin(\"" << tfunction->get_name() <<
indent() << "uint32_t bytes = oprot->getTransport()->writeEnd();" <<
endl <<
indent() << "oprot->getTransport()->flush();" << endl <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->postWrite(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->postWrite(ctx, \"" <<
service_func_name << "\", bytes);" << endl <<
indent() << "}" << endl <<
indent() << "return cob(true);" << endl;
// Get the event handler context
out <<
endl <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " ctx = eventHandler_->getContext(\"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " ctx = this->eventHandler_->getContext(\"" <<
service_func_name << "\", NULL);" << endl <<
indent() << "}" << endl <<
indent() << "apache::thrift::TProcessorContextFreer freer(" <<
- "eventHandler_.get(), ctx, \"" << service_func_name << "\");" <<
+ "this->eventHandler_.get(), ctx, \"" << service_func_name << "\");" <<
endl << endl;
// Throw the TDelayedException, and catch the result
out << " catch (std::exception& e) {" << endl;
indent_up();
out <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->handlerError(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->handlerError(ctx, \"" <<
service_func_name << "\");" << endl <<
indent() << "}" << endl <<
endl <<
// Serialize the result into a struct
out <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->preWrite(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->preWrite(ctx, \"" <<
service_func_name << "\");" << endl <<
indent() << "}" << endl << endl <<
indent() << "oprot->writeMessageBegin(\"" << tfunction->get_name() <<
indent() << "uint32_t bytes = oprot->getTransport()->writeEnd();" <<
endl <<
indent() << "oprot->getTransport()->flush();" << endl <<
- indent() << "if (eventHandler_.get() != NULL) {" << endl <<
- indent() << " eventHandler_->postWrite(ctx, \"" <<
+ indent() << "if (this->eventHandler_.get() != NULL) {" << endl <<
+ indent() << " this->eventHandler_->postWrite(ctx, \"" <<
service_func_name << "\", bytes);" << endl <<
indent() << "}" << endl <<
indent() << "return cob(true);" << endl;