public String buildInterfaceTable(String rule, String[] serviceList) throws FilterParseException { StringBuffer buffer = new StringBuffer(); Filter filter = new Filter(); Map interfaces = filter.getIPServiceMap(rule); Iterator i = interfaces.keySet().iterator(); while (i.hasNext()) { String key = (String) i.next(); buffer.append("<tr><td valign=\"top\">").append(key).append("</td>"); buffer.append("<td>"); if (serviceList != null && serviceList.length != 0) { Map services = (Map) interfaces.get(key); Iterator j = services.keySet().iterator(); while (j.hasNext()) { String svc = (String) j.next(); for (int idx = 0; idx < serviceList.length; idx++) { if (svc.equals(serviceList[idx])) { buffer.append(svc).append("<br>"); } } } } else { buffer.append("All services"); } buffer.append("</td>"); buffer.append("</tr>"); } return buffer.toString(); }
public String buildServiceOptions(String rule) throws SQLException { List services = NotificationFactory.getInstance().getServiceNames(); Collections.sort( services, new Comparator() { public int compare(Object o1, Object o2) { return ((String) o1).compareToIgnoreCase((String) o2); } }); StringBuffer buffer = new StringBuffer(); for (int i = 0; i < services.size(); i++) { if (rule != null && rule.indexOf((String) services.get(i)) > 0) { buffer.append( "<option selected VALUE='" + services.get(i) + "'>" + services.get(i) + "</option>"); } else { buffer.append("<option VALUE='" + services.get(i) + "'>" + services.get(i) + "</option>"); } } return buffer.toString(); }
public String buildServiceList(String rule) throws SQLException { if (rule == null) { return ""; } List services = NotificationFactory.getInstance().getServiceNames(); Collections.sort( services, new Comparator() { public int compare(Object o1, Object o2) { return ((String) o1).compareToIgnoreCase((String) o2); } }); StringBuffer buffer = new StringBuffer(); for (int i = 0; i < services.size(); i++) { if (rule.indexOf((String) services.get(i)) > 0) { buffer.append(services.get(i)).append("</br>"); } } return buffer.toString(); }
/** * Build a commonly used event list where each event's uei is separated by a </br> tag. * * @param notice the notification that contains the ueis * @return a String representation for the UI */ public String buildEventList(Notification notice) { if (notice == null) { return ""; } StringBuffer buffer = new StringBuffer(); for (Iterator iter = notice.getEventInfoCollection().iterator(); iter.hasNext(); ) { // create temp event object and use get() // NOTE: cannot do this until we also fill in the snmp data /*org.opennms.netmgt.xml.event.Event e = EventConfigurationManager.makeEvent( (org.opennms.netmgt.config.notifications.EventInfo)iter.next()); List events = EventConfigurationManager.get(e); */ List events = EventConfigurationManager.getByEventInfo( (org.opennms.netmgt.config.notifications.EventInfo) iter.next()); for (Iterator iter2 = events.iterator(); iter2.hasNext(); ) { buffer.append(((Event) iter2.next()).getEventLabel()).append("</br>"); } } return buffer.toString(); }
public String buildPathSelect(String currentPath) throws ServletException { StringBuffer buffer = new StringBuffer("<select NAME=\"path\">"); Map pathsMap = null; try { pathsMap = new TreeMap(DestinationPathFactory.getInstance().getPaths()); Iterator iterator = pathsMap.keySet().iterator(); while (iterator.hasNext()) { String key = (String) iterator.next(); if (key.equals(currentPath)) { buffer.append("<option SELECTED VALUE=" + key + ">" + key + "</option>"); } else { buffer.append("<option VALUE=" + key + ">" + key + "</option>"); } } } catch (Exception e) { throw new ServletException("couldn't get destination path list.", e); } buffer.append("</select>"); return buffer.toString(); }
public String buildEventSelect(Notification notice) throws IOException, FileNotFoundException { // The list of events needs to be transposed to (label, uei) in // order to sort it by label for display. List eventVendors = EventConfigurationManager.getEventsByVendor(NotificationWizardServlet.WT_VENDOR_NAME); StringBuffer buffer = new StringBuffer(); SortedMap sortedEvents = (SortedMap) new TreeMap(); List excludeList = NotificationWizardServlet.getExcludeList(); for (Iterator iter = eventVendors.iterator(); iter.hasNext(); ) { com.jjlabs.model.EventVendor e = (com.jjlabs.model.EventVendor) iter.next(); sortedEvents.put(e.getLabel(), e); } Iterator j = sortedEvents.keySet().iterator(); while (j.hasNext()) { String label = (String) j.next(); com.jjlabs.model.EventVendor e = (com.jjlabs.model.EventVendor) sortedEvents.get(label); String uei = e.getUei(); String trimmedUei = NotificationWizardServlet.stripUei(uei); if (!excludeList.contains(trimmedUei)) { boolean foundUei = NotificationWizardServlet.isEventInNotification(notice, e); int id = e.getId(); if (foundUei) { buffer.append("<option selected VALUE=\"" + id + "\">" + label + "</option>"); } else { buffer.append("<option value=\"" + id + "\">" + label + "</option>"); } } } return buffer.toString(); }
public void _jspService(HttpServletRequest request, HttpServletResponse response) throws java.io.IOException, ServletException { JspFactory _jspxFactory = null; javax.servlet.jsp.PageContext pageContext = null; HttpSession session = null; ServletContext application = null; ServletConfig config = null; JspWriter out = null; Object page = this; JspWriter _jspx_out = null; try { _jspxFactory = JspFactory.getDefaultFactory(); response.setContentType("text/html;charset=ISO-8859-1"); pageContext = _jspxFactory.getPageContext(this, request, response, null, true, 8192, true); application = pageContext.getServletContext(); config = pageContext.getServletConfig(); session = pageContext.getSession(); out = pageContext.getOut(); _jspx_out = out; out.write("\n"); out.write("\n"); response.setContentType("text/xml"); int mapId = -1; TopologyMap map = (TopologyMap) request.getAttribute("map"); String isRcad = "false"; if (map == null) { String strMapId = request.getParameter("mapId"); if (strMapId != null) { mapId = Integer.parseInt(request.getParameter("mapId")); } } if (map == null && mapId != 99999) { map = TopologyMap.getMapById(mapId); } if (map != null) { List centities = map.getCentityMaps(); List connections = map.getConnections(); List bgimages = map.getMapBgimages(); if (WTAccountCredentials.current() == null) { System.out.println("NullPointerException: WTAccountCredentials.current() is null"); return; } String user = WTAccountCredentials.current().getUserName(); boolean admin = false; WTRole role = WTAccountCredentials.current().getMostPrivilegedRole(); admin = role.isOrgAdmin() || role.isSiteAdmin(); if (user == null) { out.write("<topology-map />"); return; } boolean readOnly = !user.equals(map.getCreator()); Integer groupId = map.getGroupId(); String groupAttrs = ""; if (groupId != null) { WTGroupManager groupMan = ManagersImpl.GroupManager; WTGroup group = (WTGroup) groupMan.getObject(groupId.intValue()); groupMan.resolveReferences(group); groupAttrs = "groupName=\"" + URLEncoder.encode(group.getOrg().getName() + " - " + group.getName(), "UTF-8") + "\" groupId=\"" + groupId.intValue() + "\""; } isRcad = String.valueOf(map.isRca()); out.write("\n\t"); out.write("<topology-map mapId=\""); out.print(map.getMapId()); out.write("\" name=\""); out.print(map.getName()); out.write("\" mapTypeId=\""); out.print(map.getTypeId()); out.write("\" \n\t zoomLevel=\""); out.print(map.getZoom()); out.write("\" paneScrollX=\""); out.print(map.getScrollX()); out.write("\" paneScrollY=\""); out.print(map.getScrollY()); out.write("\"\n\t shared=\""); out.print(map.isShared()); out.write("\" creator=\""); out.print(map.getCreator()); out.write("\" iconSize=\""); out.print(map.getIconSize()); out.write("\"\n\t labelsAlwaysOn=\""); out.print(map.isLabelsAlwaysOn()); out.write("\" readOnly=\""); out.print(readOnly); out.write("\" "); out.print(groupAttrs); out.write(" admin=\""); out.print(admin); out.write("\" isRcad=\""); out.print(isRcad); out.write("\">\n\t\n\t\t"); out.write("<entities>\n\t"); for (Iterator it = centities.iterator(); it.hasNext(); ) { CentityMap centityMap = (CentityMap) it.next(); StringBuffer hierarchyBuffer = new StringBuffer(); if (centityMap.getType().equals("category")) { WTCategory cat = (WTCategory) ManagersImpl.CategoryManager.getObject( Integer.valueOf(centityMap.getIdForType())); List sectionList = ManagersImpl.CategoryManager.getAllParentSections(cat); for (Iterator sectionIt = sectionList.iterator(); sectionIt.hasNext(); ) { WTSection section = (WTSection) sectionIt.next(); hierarchyBuffer.append(section.getName() + " / "); } } out.write("\n\t "); out.write("<entity centityId=\""); out.print(centityMap.getCentityId()); out.write("\" type=\""); out.print(centityMap.getType()); out.write("\" id=\""); out.print(centityMap.getXmlId()); out.write("\"\n\t icon=\""); out.print(centityMap.getIcon()); out.write("\" label=\""); out.print(centityMap.getLabel()); out.write("\" hierarchy=\""); out.print(hierarchyBuffer.toString()); out.write("\"\n\t x=\""); out.print(centityMap.getXPlacement()); out.write("\" y=\""); out.print(centityMap.getYPlacement()); out.write("\"/>\n\t "); } out.write("\n\t\t"); out.write("</entities>\n\t\t"); out.write("<connections>\n\t"); for (Iterator it = connections.iterator(); it.hasNext(); ) { CentityConnection cc = (CentityConnection) it.next(); String startType = null; String endType = null; int startId = -1; int endId = -1; if (cc.getParentNodeid() != null) { startType = "node"; startId = cc.getParentNodeid(); } else if (cc.getParentCategoryId() != null) { startType = "category"; startId = cc.getParentCategoryId(); } if (cc.getNodeid() != null) { endType = "node"; endId = cc.getNodeid(); } else if (cc.getCategoryId() != null) { endType = "category"; endId = cc.getCategoryId(); } out.write("\n\t\t\t"); out.write("<connection startType=\""); out.print(startType); out.write("\" startId=\""); out.print(startId); out.write("\" endType=\""); out.print(endType); out.write("\" endId=\""); out.print(endId); out.write("\" />\n\t"); } out.write("\n\t\t"); out.write("</connections>\n\t\t"); out.write("<bgimages>\n\t"); for (Iterator it = bgimages.iterator(); it.hasNext(); ) { MapBgimage bgimage = (MapBgimage) it.next(); out.write("\n\t\t\t\t"); out.write("<bgimage mapBgimageId=\""); out.print(bgimage.getMapBgimageId()); out.write("\" bgimageId=\""); out.print(bgimage.getBgimageId()); out.write("\"\n\t\t\t\t creator=\""); out.print(bgimage.getCreator()); out.write("\" src=\""); out.print(bgimage.getSrc()); out.write("\" x=\""); out.print(bgimage.getXPlacement()); out.write("\"\n\t\t\t\t y=\""); out.print(bgimage.getYPlacement()); out.write("\" zindex=\""); out.print(bgimage.getZIndex()); out.write("\" xscale=\""); out.print(bgimage.getXScale()); out.write("\"\n\t\t\t\t yscale=\""); out.print(bgimage.getYScale()); out.write("\" />\n\t"); } out.write("\n\t\t"); out.write("</bgimages>\n\t\t\n\t"); out.write("</topology-map>\n"); } else { out.write("\n"); out.write( "<topology-map mapId=\"99999\" name=\"Topology Sample\" zoomLevel=\"10\" paneScrollX=\"0\" paneScrollY=\"0\" shared=\"true\" creator=\"admin\" iconSize=\"32\" labelsAlwaysOn=\"true\" type=\"topology\">\n\t"); out.write("<entities>\n\t\t"); out.write( "<entity centityId=\"-90\" type=\"node\" id=\"node_603\" icon=\"OS_Win2003.swf\" label=\"CARROT\" x=\"300\" y=\"200\"/>\n\t\t"); out.write( "<entity centityId=\"-91\" type=\"node\" id=\"node_653\" icon=\"OS_Win2000.swf\" label=\"RAISIN\" x=\"200\" y=\"200\"/>\n\t\t"); out.write( "<entity centityId=\"-92\" type=\"node\" id=\"node_615\" icon=\"OS_Win2003.swf\" label=\"10.100.100.88\" x=\"300\" y=\"100\"/>\n\t\t"); out.write( "<entity centityId=\"-93\" type=\"node\" id=\"node_616\" icon=\"OS_WinXP.swf\" label=\"10.100.100.241\" x=\"100\" y=\"100\"/>\n\t\t"); out.write( "<entity centityId=\"-94\" type=\"node\" id=\"node_613\" icon=\"OS_FoundryIronWare.swf\" label=\"Foundry\" x=\"200\" y=\"125\"/>\n\t\t"); out.write( "<entity centityId=\"-95\" type=\"node\" id=\"node_656\" icon=\"OS_WinXP.swf\" label=\"10.100.100.239\" x=\"225\" y=\"70\"/>\n\t\t"); out.write( "<entity centityId=\"-96\" type=\"node\" id=\"node_610\" icon=\"OS_CiscoIOS.swf\" label=\"Cittio-2621\" x=\"125\" y=\"150\"/>\n\t\t"); out.write( "<entity centityId=\"-97\" type=\"node\" id=\"node_614\" icon=\"OS_Linux.swf\" label=\"Mango\" x=\"100\" y=\"200\"/>\n\n\t"); out.write("</entities>\n\t"); out.write("<connections>\n\t\t"); out.write( "<connection startType=\"node\" startId=\"603\" endType=\"node\" endId=\"613\"/>\n\t\t"); out.write( "<connection startType=\"node\" startId=\"653\" endType=\"node\" endId=\"613\"/>\n\t\t"); out.write( "<connection startType=\"node\" startId=\"615\" endType=\"node\" endId=\"613\"/>\n\t\t"); out.write( "<connection startType=\"node\" startId=\"616\" endType=\"node\" endId=\"613\"/>\n\t\t"); out.write( "<connection startType=\"node\" startId=\"656\" endType=\"node\" endId=\"613\"/>\n\t\t"); out.write( "<connection startType=\"node\" startId=\"610\" endType=\"node\" endId=\"613\"/>\n\t\t"); out.write( "<connection startType=\"node\" startId=\"614\" endType=\"node\" endId=\"610\"/>\n\t"); out.write("</connections>\n\t"); out.write("<bgimages />\n"); out.write("</topology-map>\n"); } out.write("\n\n\n"); } catch (Throwable t) { out = _jspx_out; if (out != null && out.getBufferSize() != 0) out.clearBuffer(); if (pageContext != null) pageContext.handlePageException(t); } finally { if (_jspxFactory != null) _jspxFactory.releasePageContext(pageContext); } }
/** * Builds the vendor events tree. * * @param notice the selected notification so that events that match this notification can be * preselected * @param vendorExcludeList a list of vendors to exclude from the result * @return an xml tree of vendors and their events */ public String buildTree(Notification notice, List vendorExcludeList) throws IOException, FileNotFoundException { StringBuffer buffer = new StringBuffer(); String itemPrefix = "i_"; String sectionPrefix = "s_"; int sid = 1, iid = 1; List ueiExcludeList = NotificationWizardServlet.getExcludeList(); buffer .append("<xTree>") .append("<item id=\"") .append(sectionPrefix) .append(sid) .append("\">") .append("<itemPrimaryData><![CDATA[System Monitoring Events]]></itemPrimaryData>") .append("<subitems>"); List vendors = EventConfigurationManager.getVendorNames(); for (Iterator iter = vendors.iterator(); iter.hasNext(); ) { String vendor = (String) iter.next(); // Don't show any excluded vendors if (vendorExcludeList != null && vendorExcludeList.contains(vendor)) { continue; } sid++; buffer .append("<item id=\"") .append(sectionPrefix) .append(sid) .append("\">") .append("<itemPrimaryData><![CDATA[<input type=\"checkbox\" id=\"c_") .append(sectionPrefix) .append(sid) .append("\" onClick=\"tcs('") .append(sectionPrefix) .append(sid) .append("');us()\">"); // Write the vendor name buffer.append(vendor); buffer.append("]]></itemPrimaryData>").append("<subitems>"); // Now write all the events for the vendor. List eventVendors = EventConfigurationManager.getEventsByVendor(vendor); SortedMap sortedEvents = (SortedMap) new TreeMap(); for (Iterator iter2 = eventVendors.iterator(); iter2.hasNext(); ) { com.jjlabs.model.EventVendor e = (com.jjlabs.model.EventVendor) iter2.next(); sortedEvents.put(e.getLabel(), e); } for (Iterator iter2 = sortedEvents.entrySet().iterator(); iter2.hasNext(); ) { Map.Entry entry = (Map.Entry) iter2.next(); com.jjlabs.model.EventVendor e = (com.jjlabs.model.EventVendor) entry.getValue(); String uei = e.getUei(); if (!ueiExcludeList.contains(NotificationWizardServlet.stripUei(uei))) { iid++; boolean inNotification = NotificationWizardServlet.isEventInNotification(notice, e); buffer .append("<item id=\"") .append(itemPrefix) .append(iid) .append("\">") .append( "<itemPrimaryData><![CDATA[<input type=\"checkbox\" name=\"tree_check\" id=\"c_") .append(itemPrefix) .append(iid) .append("\" value=\"") .append(e.getId()) .append("\" onClick=\"us()\"") .append((inNotification ? " checked" : "")) .append(">"); // Write the event info buffer.append(e.getLabel()); buffer.append("]]></itemPrimaryData>").append("</item>"); } } buffer.append("</subitems></item>"); } buffer.append("</subitems></item></xTree>"); return buffer.toString(); }