code: def _state_to_task(cls,
                       tstate,
                       shard_state,
                       eta=None,
                       countdown=None):
      
      base_path = tstate.base_path
  
      task_name = MapperWorkerCallbackHandler.get_task_name(
          tstate.shard_id,
          tstate.slice_id,
          tstate.retries)
  
      headers = util._get_task_headers(tstate.mapreduce_spec.mapreduce_id)
      headers[util._MR_SHARD_ID_TASK_HEADER] = tstate.shard_id
  
      worker_task = model.HugeTask(
          url=base_path + "/worker_callback/" + tstate.shard_id,
          params=tstate.to_dict(),
          name=task_name,
          eta=eta,
          countdown=countdown,
          parent=shard_state,
          headers=headers)
      return worker_task
docs: Generate task for slice according to current states.
  
      Args:
        tstate: An instance of TransientShardState.
        shard_state: An instance of ShardState.
        eta: Absolute time when the MR should execute. May not be specified
          if 'countdown' is also supplied. This may be timezone-aware or
          timezone-naive.
        countdown: Time in seconds into the future that this MR should execute.
          Defaults to zero.
  
      Returns:
        A model.HugeTask instance for the slice specified by current states.