public long heartbeat(
final char[] testReqId,
final int testReqIdLength,
final int msgSeqNo,
final int sequenceIndex,
final int lastMsgSeqNumProcessed)
{
final HeaderEncoder header = heartbeat.header();
setupHeader(header, msgSeqNo, lastMsgSeqNumProcessed);
if (testReqId != null)
{
heartbeat.testReqID(testReqId, testReqIdLength);
}
else
{
heartbeat.resetTestReqID();
}
final long result = heartbeat.encode(buffer, 0);
return send(result, HeartbeatDecoder.MESSAGE_TYPE, sequenceIndex, heartbeat, msgSeqNo);
}