/** * 注册一个数据工人到当前工厂。 * @param worker 要注册到当前工厂的数据工人实例。 * @return 注册成功则返回true,否则返回false。 */ public bool registerDataWorker(SABaseDataWorker worker) {//注册一个数据工人到工人组 SAWorkers workers; if (!workersTreeList.ContainsKey(DATA_WORKER)) {//如果数据工人不存在 则新建 workers = new SAWorkers(DATA_WORKER, this); workersTreeList.Add(DATA_WORKER, workers); } workers = workersTreeList[DATA_WORKER]; workers.registerWorker(worker); return(true); }
/** * 移除一个数据工人从当前工厂。 * @param worker 要从当前工厂移除的数据工人名称。 * @return 移除成功则返回true,否则返回false。 */ public bool removeDataWorker(string workerName) { if (workersTreeList.ContainsKey(DATA_WORKER)) { SAWorkers workers = workersTreeList[DATA_WORKER]; //得到数据工人组 SABaseDataWorker worker = (SABaseDataWorker)workers.removeWorker(workerName); //移除数据工人组中的一名工人 if (worker != null) { worker.onRemove(); worker.unInitialize(this); } return(true); } else { return(false); } }