01 package dk.deepthought.sidious.goalhandler;
02
03 import dk.deepthought.sidious.supportsystem.SuperLinkID;
04
05 /**
06 * This interface defines classes responsible for prioritizing goals.
07 * <p>
08 *
09 * @author Deepthought
10 *
11 */
12 public interface GoalHandler {
13
14 /**
15 * This method retrieves the top goal for a given <code>SuperLinkID</code>.
16 *
17 * @param id
18 * the id to retrieve the top goal for
19 * @return the top goal
20 */
21 public Goal getTopPriorityGoal(SuperLinkID id);
22
23 /**
24 * Request a goal to be extracted from requester with specified id. This
25 * request is added to the requester queue.
26 *
27 * @param id
28 * the id of the requester
29 */
30 public void request(SuperLinkID id);
31
32 }
|