public static TApplicationException writeApplicationException(
TProtocol outputProtocol,
String methodName,
int sequenceId,
int errorCode,
String errorMessage,
Throwable cause)
throws TException
{
TApplicationException applicationException = new TApplicationException(errorCode, errorMessage);
if (cause != null) {
applicationException.initCause(cause);
}
LOG.error(errorMessage, applicationException);
outputProtocol.writeMessageBegin(new TMessage(methodName, TMessageType.EXCEPTION, sequenceId));
applicationException.write(outputProtocol);
outputProtocol.writeMessageEnd();
outputProtocol.getTransport().flush();
return applicationException;
}
}