package com.dy.rtuMw.server.rtuData; import java.text.ParseException; public interface Task { /** * 任务采用对象池,以便重用任务对象, * 重用前要进行对象初始化,清除上次执行任务时遗留的对象属性数据 * 初始化本任务及所有子任务 */ public void cleanMeAndSubs() ; /** * 执行节点任务 * @param data 需要处理的数据 */ public void execute(Object data) throws ParseException; /** * 得到本任务节点处理产生的中间结果,以供本节点所在树枝的下级任务节点及本树枝的左侧(根在上)所有树枝的节点应用本结果 * @return */ public Object[] getMyResults() ; /** * 得到指定任务节点处理产生的中间结果,以供本节点所在树枝的下级任务节点及本树枝的左侧(根在上)所有树枝的节点应用本结果 * @param id 指定任务ID * @return */ public Object[] getTaskResults(String id); /** * 转下级任务节点处理,首先要实体化所有子节点。 * @param data 需要处理的数据 */ public void toNextTasks(Object data) ; /** * 转下级某个任务节点处理 * @param data 需要处理的数据 * @param id 指定任务ID */ public void toNextOneTask(Object data, String id); }