/** 增加一个新的节点(用于发现之后,或者手动增加一个节点) */ public void addNodes(String index, String image, String ip, String alias, String x, String y) { Element eleNode = new Element("node"); Element eleId = new Element("id"); Element eleImg = new Element("img"); Element eleX = new Element("x"); Element eleY = new Element("y"); Element eleAlias = new Element("alias"); Element eleInfo = new Element("info"); Element eleMenu = new Element("menu"); eleId.setText(index); eleImg.setText(image); eleX.setText(x); eleY.setText(y); eleAlias.setText(alias); StringBuffer msg = new StringBuffer(200); msg.append("<font color='green'>索引:"); msg.append(index); msg.append("</font><br>"); msg.append("描述:"); msg.append(alias); msg.append("<br>"); eleInfo.setText(msg.toString()); eleMenu.setText(PanelNodeHelper.getMenuItem(index, ip)); eleNode.addContent(eleId); eleNode.addContent(eleImg); eleNode.addContent(eleX); eleNode.addContent(eleY); eleNode.addContent(eleAlias); eleNode.addContent(eleInfo); eleNode.addContent(eleMenu); nodes.addContent(eleNode); }
/** 增加一个新的节点(用于发现之后,或者手动增加一个节点) */ public void addNode( String index, String InBandwidthUtilHdx, String OutBandwidthUtilHdx, String image, String ip, String alias, String portuse, String x, String y) { Element eleNode = new Element("node"); Element eleId = new Element("id"); Element eleImg = new Element("img"); Element eleX = new Element("x"); Element eleY = new Element("y"); Element eleIp = new Element("ip"); Element eleAlias = new Element("alias"); Element eleInfo = new Element("info"); Element eleMenu = new Element("menu"); eleId.setText(index); if (image == null) eleImg.setText(PanelNodeHelper.getMenuItem(index, ipaddress)); else eleImg.setText(image); eleX.setText(x); eleY.setText(y); eleIp.setText(ip); eleAlias.setText(alias); StringBuffer msg = new StringBuffer(200); msg.append("<font color='green'>索引:"); msg.append(index); msg.append("</font><br>"); msg.append("描述:"); msg.append(alias); msg.append("<br>"); msg.append("应用:"); msg.append(portuse); msg.append("<br>"); msg.append("入口流速:"); msg.append(InBandwidthUtilHdx); msg.append("<br>"); msg.append("出口流速:"); msg.append(OutBandwidthUtilHdx); msg.append("<br>"); eleInfo.setText(msg.toString()); eleMenu.setText(PanelNodeHelper.getMenuItem(index, ip)); eleNode.addContent(eleId); eleNode.addContent(eleImg); eleNode.addContent(eleX); eleNode.addContent(eleY); eleNode.addContent(eleIp); eleNode.addContent(eleAlias); eleNode.addContent(eleInfo); eleNode.addContent(eleMenu); nodes.addContent(eleNode); }
/** 更新所有info项和image项 */ public void updateInfo(boolean isCustom) { I_HostLastCollectData hostlastmanager = new HostLastCollectDataManager(); List list = nodes.getChildren(); for (int i = 0; i < list.size(); i++) { Element eleNode = (Element) list.get(i); int id = Integer.valueOf(eleNode.getChildText("id")).intValue(); int direction = Integer.valueOf(eleNode.getChildText("direction")).intValue(); // Hashtable ipAllData = (Hashtable)ShareData.getSharedata().get(ipaddress); Vector vector = new Vector(); String[] netInterfaceItem = { "index", "ifDescr", "ifSpeed", "ifOperStatus", "OutBandwidthUtilHdx", "InBandwidthUtilHdx" }; try { vector = hostlastmanager.getInterface_share(ipaddress, netInterfaceItem, "index", "", ""); } catch (Exception e) { e.printStackTrace(); } SysLogger.info("######################################"); SysLogger.info("######### " + ipaddress + " ##############"); SysLogger.info("######################################"); if (vector != null && vector.size() > 0) { PortconfigDao dao = new PortconfigDao(); try { for (int m = 0; m < vector.size(); m++) { String[] strs = (String[]) vector.get(m); String ifname = strs[1]; String index = strs[0]; String OutBandwidthUtilHdx = strs[4]; String InBandwidthUtilHdx = strs[5]; String portuse = ""; Portconfig portconfig = null; try { portconfig = dao.getPanelByipandindex(ipaddress, index); } catch (Exception e) { } if (portconfig != null && portconfig.getLinkuse() != null && portconfig.getLinkuse().trim().length() > 0) { portuse = portconfig.getLinkuse(); } if (Integer.parseInt(index) == id) { // 当前端口 if (direction == 1) { // 向上方向的端口 if (strs[3].equalsIgnoreCase("up")) { // 端口启动 SysLogger.info(PanelNodeHelper.getUpUpImage(1)); eleNode.getChild("img").setText(PanelNodeHelper.getUpUpImage(1)); } else { // 端口未启动 SysLogger.info(PanelNodeHelper.getUpDownImage(1)); eleNode.getChild("img").setText(PanelNodeHelper.getUpDownImage(1)); } } else { // 向下方向的端口 if (strs[3].equalsIgnoreCase("up")) { // 端口启动 SysLogger.info(PanelNodeHelper.getDownUpImage(1)); eleNode.getChild("img").setText(PanelNodeHelper.getDownUpImage(1)); } else { // 端口未启动 SysLogger.info(PanelNodeHelper.getDownDownImage(1)); eleNode.getChild("img").setText(PanelNodeHelper.getDownDownImage(1)); } } eleNode.getChild("alias").setText(ifname); eleNode.getChild("ip").setText(ipaddress); StringBuffer msg = new StringBuffer(200); msg.append("<font color='green'>索引:"); msg.append(id); msg.append("</font><br>"); msg.append("描述:"); msg.append(ifname); msg.append("<br>"); msg.append("端口应用:"); msg.append(portuse); msg.append("<br>"); msg.append("入口流速:"); msg.append(InBandwidthUtilHdx); msg.append("<br>"); msg.append("出口流速:"); msg.append(OutBandwidthUtilHdx); msg.append("<br>"); SysLogger.info(msg.toString()); eleNode.getChild("info").setText(msg.toString()); eleNode.getChild("menu").setText(PanelNodeHelper.getMenuItem(index, ipaddress)); } } } catch (Exception e) { } finally { dao.close(); } } // nodes.addContent(i, eleNode); } if (isCustom) { writeXml(); return; } writeXml(); }