私有方法四
/** * @author : lKF35745 * @version: 1.0 * <p>时间 : 2011-1-7</p> * <p>描述 : 根据子会议ID查询出子会议的所有上级会议ID</p> * <p>Copyright 1988-2005, Huawei Tech. Co., Ltd.</p> * @param conferenceID 会议ID * @return List<String> 子会议的上级会议ID */ private List<String> findParentNodeByConferenceID(String conferenceID, CascadeTopoTree cascadeTree) { if (logger.isDebugEnabled()) { logger.debug("begin to findParentNodeByConferenceID and param is " + conferenceID); } if (null == conferenceID) { logger.warn("ConferenceID is null."); return null; } //存储子会议上级的会议ID List<String> conferenceIdList = new ArrayList<String>(); //实例化一个拓扑树对象 CascadeTopoTree cascadeTopoTree = cascadeTree; //查询该子会议是否在 SubConferenceNode subConferenceNode = cascadeTopoTree .findSubConferenceNode(conferenceID); if (null == subConferenceNode) { logger.warn("this conferenceID is not in CascadeTopoTree."); return null; } //得到子会议的上级会议ID SubConferenceNode parentConferenceNode = null; parentConferenceNode = subConferenceNode.getParentConferenceNode(); //把自己添加到集合中 conferenceIdList.add(subConferenceNode.getConferenceID()); //循环取出子会议的上级会议 while (null != parentConferenceNode) { conferenceIdList.add(parentConferenceNode.getConferenceID()); parentConferenceNode = parentConferenceNode .getParentConferenceNode(); if (null == parentConferenceNode) { break; } } if (conferenceIdList.size() < 1) { logger.warn("ParentConferenID size is < 1"); return null; } if (logger.isDebugEnabled()) { logger.debug("end to findParentNodeByConferenceID"); } return conferenceIdList; }
?