task_id generation in own method

this way subclasses of BaseTask can influence the task_id generation