include_rrd.jsp
来自「opennms得相关源码 请大家看看」· JSP 代码 · 共 151 行
JSP
151 行
<!-- //// This file is part of the OpenNMS(R) Application.//// OpenNMS(R) is Copyright (C) 2002-2003 The OpenNMS Group, Inc. All rights reserved.// OpenNMS(R) is a derivative work, containing both original code, included code and modified// code that was published under the GNU General Public License. Copyrights for modified // and included code are below.//// OpenNMS(R) is a registered trademark of The OpenNMS Group, Inc.//// Modifications://// 2003 Feb 07: Fixed URLEncoder issues.// 2002 Nov 26: Fixed breadcrumbs issue.// // This program is free software; you can redistribute it and/or modify// it under the terms of the GNU General Public License as published by// the Free Software Foundation; either version 2 of the License, or// (at your option) any later version.//// This program is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the// GNU General Public License for more details.//// You should have received a copy of the GNU General Public License// along with this program; if not, write to the Free Software// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.//// For more information contact:// OpenNMS Licensing <license@opennms.org>// http://www.opennms.org/// http://www.opennms.com/--><%! /** intf can be null */ public String[] getRRDNames(int nodeId, String intf, PrefabGraph graph) { if(graph == null) { throw new IllegalArgumentException("Cannot take null parameters."); } String[] columns = graph.getColumns(); String[] rrds = new String[columns.length]; for(int i=0; i < columns.length; i++ ) { StringBuffer buffer = new StringBuffer(); buffer.append(nodeId); buffer.append(File.separator); if(intf != null && PerformanceModel.INTERFACE_GRAPH_TYPE.equals(graph.getType())) { buffer.append(intf); buffer.append(File.separator); } buffer.append(columns[i]); buffer.append(org.opennms.netmgt.utils.RrdFileConstants.RRD_SUFFIX); rrds[i] = buffer.toString(); } return rrds; } public String encodeRRDNamesAsParmString(String[] rrds) { if(rrds == null) { throw new IllegalArgumentException("Cannot take null parameters."); } String parmString = ""; if(rrds.length > 0) { StringBuffer buffer = new StringBuffer("rrd="); buffer.append(java.net.URLEncoder.encode(rrds[0])); for(int i=1; i < rrds.length; i++ ) { buffer.append("&rrd="); buffer.append(java.net.URLEncoder.encode(rrds[i])); } parmString = buffer.toString(); } return parmString; } /** currently only know how to handle ifSpeed external value; intf can be null */ public String encodeExternalValuesAsParmString(int nodeId, String intf, PrefabGraph graph) throws java.sql.SQLException { if(graph == null) { throw new IllegalArgumentException("Cannot take null parameters."); } String parmString = ""; String[] externalValues = graph.getExternalValues(); if(externalValues != null && externalValues.length > 0) { StringBuffer buffer = new StringBuffer(); for(int i=0; i < externalValues.length; i++) { if("ifSpeed".equals(externalValues[i])) { String speed = this.getIfSpeed(nodeId, intf); if(speed != null) { buffer.append(externalValues[i]); buffer.append("="); buffer.append(speed); buffer.append("&"); } } else { throw new IllegalStateException("Unsupported external value name: " + externalValues[i]); } } parmString = buffer.toString(); } return parmString; } public String getIfSpeed(int nodeId, String intf) throws java.sql.SQLException { if(intf == null) { throw new IllegalArgumentException("Cannot take null parameters."); } String speed = null; try { Map intfInfo = org.opennms.netmgt.utils.IfLabel.getInterfaceInfoFromIfLabel(nodeId, intf); //if the extended information was found correctly if(intfInfo != null) { speed = (String)intfInfo.get("snmpifspeed"); } } catch (java.sql.SQLException e) { this.log("SQLException while trying to fetch extended interface info", e); } return speed; }%>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?