code: @Override
      public SendTaskHeartbeatResult sendTaskHeartbeat(SendTaskHeartbeatRequest request) {
          request = beforeClientExecution(request);
          return executeSendTaskHeartbeat(request);
      }
docs: <p>
  Used by workers to report to the service that the task represented by the specified <code>taskToken</code> is
  still making progress. This action resets the <code>Heartbeat</code> clock. The <code>Heartbeat</code> threshold
  is specified in the state machine's Amazon States Language definition. This action does not in itself create an
  event in the execution history. However, if the task times out, the execution history contains an
  <code>ActivityTimedOut</code> event.
  </p>
  <note>
  <p>
  The <code>Timeout</code> of a task, defined in the state machine's Amazon States Language definition, is its
  maximum allowed duration, regardless of the number of <a>SendTaskHeartbeat</a> requests received.
  </p>
  </note> <note>
  <p>
  This operation is only useful for long-lived tasks to report the liveliness of the task.
  </p>
  </note>
  
  @param sendTaskHeartbeatRequest
  @return Result of the SendTaskHeartbeat operation returned by the service.
  @throws TaskDoesNotExistException
  @throws InvalidTokenException
  The provided token is invalid.
  @throws TaskTimedOutException
  @sample AWSStepFunctions.SendTaskHeartbeat
  @see <a href="http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/SendTaskHeartbeat" target="_top">AWS API
  Documentation</a>