package eu.europeana.cloud.service.dps; /** * Service to kill tasks. * @author Pavel Kefurt <Pavel.Kefurt@gmail.com> */ public interface TaskExecutionKillService { /** * Set kill flag to task. * @param topology topology name * @param taskId task id to kill */ void killTask(String topology, long taskId); /** * Check kill flag. * @param topology topology name * @param taskId task id * @return true if provided task id has kill flag, false otherwise */ Boolean hasKillFlag(String topology, long taskId); /** * Remove all old kill flags from topology. * @param topology topology name * @param ttl time to live (minimum old in milliseconds for delete) */ void cleanOldFlags(String topology, long ttl); /** * Remove kill flag of the specific task. * @param topology topology name * @param taskId task id */ void removeFlag(String topology, long taskId); }