1 package org.testng.internal.thread.graph; 2 3 import java.util.List; 4 5 /** 6 * A runnable object that is used by {@code GraphThreadPoolExecutor} to execute 7 * tasks 8 */ 9 public interface IWorker<T> extends Runnable, Comparable<IWorker<T>> { 10 11 /** 12 * @return list of tasks this worker is working on. 13 */ getTasks()14 List<T> getTasks(); 15 16 /** 17 * @return the maximum time allowed for the worker to complete the task. 18 */ getTimeOut()19 long getTimeOut(); 20 21 /** 22 * @return the priority of this task. 23 */ getPriority()24 int getPriority(); 25 } 26