indent(f_service_) << " return new " << argsname << "();" << endl;
indent(f_service_) << "}" << endl << endl;
+ indent(f_service_) << "protected boolean isOneway() {" << endl;
+ indent(f_service_) << " return " << ((tfunction->is_oneway())?"true":"false") << ";" << endl;
+ indent(f_service_) << "}" << endl << endl;
+
indent(f_service_) << "public " << resultname << " getResult(I iface, " << argsname << " args) throws org.apache.thrift.TException {" << endl;
indent_up();
if (!tfunction->is_oneway()) {
}
iprot.readMessageEnd();
TBase result = getResult(iface, args);
- oprot.writeMessageBegin(new TMessage(getMethodName(), TMessageType.REPLY, seqid));
- result.write(oprot);
- oprot.writeMessageEnd();
- oprot.getTransport().flush();
+ if(!isOneway()) {
+ oprot.writeMessageBegin(new TMessage(getMethodName(), TMessageType.REPLY, seqid));
+ result.write(oprot);
+ oprot.writeMessageEnd();
+ oprot.getTransport().flush();
+ }
}
+ protected abstract boolean isOneway();
+
public abstract TBase getResult(I iface, T args) throws TException;
public abstract T getEmptyArgsInstance();