package com.dy.aceMw.server.rtuData; 
 | 
  
 | 
public interface Task { 
 | 
     
 | 
     
 | 
    /** 
 | 
     * 任务采用对象池,以便重用任务对象, 
 | 
     * 重用前要进行对象初始化,清除上次执行任务时遗留的对象属性数据 
 | 
     * 初始化本任务及所有子任务 
 | 
     */ 
 | 
    public void cleanMeAndSubs() ; 
 | 
     
 | 
    /** 
 | 
     * 执行节点任务 
 | 
     * @param data 需要处理的数据 
 | 
     */ 
 | 
    public void execute(Object data) ; 
 | 
     
 | 
    /** 
 | 
     * 得到本任务节点处理产生的中间结果,以供本节点所在树枝的下级任务节点及本树枝的左侧(根在上)所有树枝的节点应用本结果 
 | 
     * @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); 
 | 
  
 | 
} 
 |