try {
Object results = null;
TChannelBufferOutputTransport outputTransport = new TChannelBufferOutputTransport();
ChannelBuffer requestBuffer = outputTransport.getOutputBuffer();
TProtocol outputProtocol = out.getProtocol(outputTransport);
// write request
writeArguments(outputProtocol, sequenceId, args);
if (!this.oneway) {
ChannelBuffer responseBuffer;
responseBuffer = SyncClientHelpers.sendSynchronousTwoWayMessage(channel, requestBuffer);
TTransport inputTransport = new TChannelBufferInputTransport(responseBuffer);
TProtocol inputProtocol = in.getProtocol(inputTransport);
waitForResponse(inputProtocol, sequenceId);
// read results
results = readResponse(inputProtocol);
} else {