refacto task temporal methods into a proper service