/** {@inheritDoc} */ @Override public OnmsResource getResourceById(ResourceId id) { return m_resourceDao.getResourceById(id); }
/** * <p>walk</p> * * @param node a {@link org.opennms.netmgt.model.OnmsNode} object. */ public void walk(OnmsNode node) { OnmsResource resource = getResourceDao().getResourceForNode(node); m_resourceWalker.walk(Collections.singleton(resource)); }
/** * <p>findTopLevelResources</p> * * @return a {@link java.util.List} object. */ @Override public List<OnmsResource> findTopLevelResources() { return m_resourceDao.findTopLevelResources(); }
private ServiceGraph getServiceGraphForService(OnmsLocationMonitor locMon, OnmsMonitoredService service, long[] times) { OnmsResource resource; try { resource = m_resourceDao.getResourceForIpInterface(service.getIpInterface(), locMon); } catch (ObjectRetrievalFailureException e) { resource = null; } if (resource == null) { return new ServiceGraph(service, new String[] { "Resource could not be found. Has any response time data been collected for this service from this remote poller?" }); } String graphName = service.getServiceName().toLowerCase(); try { m_graphDao.getPrefabGraph(graphName); } catch (ObjectRetrievalFailureException e) { return new ServiceGraph(service, new String[] { "Graph definition could not be found for '" + graphName + "'. A graph definition needs to be created for this service." }); } PrefabGraph[] prefabGraphs = m_graphDao.getPrefabGraphsForResource(resource); for (PrefabGraph graph : prefabGraphs) { if (graph.getName().equals(graphName)) { String url = "graph/graph.png" + "?report=" + Util.encode(graph.getName()) + "&resourceId=" + Util.encode(resource.getId().toString()) + "&start=" + times[0] + "&end=" + times[1]; return new ServiceGraph(service, url); } } return new ServiceGraph(service, new String[] { "Graph could not be found for '" + graphName + "' on this resource. Has any response time data been collected for this service from this remote poller and is the graph definition correct?" }); }
private Collection<OnmsResourceType> getAvailableResourceTypes() { return m_resourceDao.getResourceTypes().stream() .filter(t -> t.isResourceTypeOnParent(m_parent)) .collect(Collectors.toList()); } }
private ServiceGraph getServiceGraphForService(OnmsLocationMonitor locMon, OnmsMonitoredService service, long[] times) { OnmsResource resource; try { resource = m_resourceDao.getResourceForIpInterface(service.getIpInterface(), locMon); } catch (ObjectRetrievalFailureException e) { resource = null; } if (resource == null) { return new ServiceGraph(service, new String[] { "Resource could not be found. Has any response time data been collected for this service from this remote poller?" }); } String graphName = service.getServiceName().toLowerCase(); try { m_graphDao.getPrefabGraph(graphName); } catch (ObjectRetrievalFailureException e) { return new ServiceGraph(service, new String[] { "Graph definition could not be found for '" + graphName + "'. A graph definition needs to be created for this service." }); } PrefabGraph[] prefabGraphs = m_graphDao.getPrefabGraphsForResource(resource); for (PrefabGraph graph : prefabGraphs) { if (graph.getName().equals(graphName)) { String url = "graph/graph.png" + "?report=" + Util.encode(graph.getName()) + "&resourceId=" + Util.encode(resource.getId().toString()) + "&start=" + times[0] + "&end=" + times[1]; return new ServiceGraph(service, url); } } return new ServiceGraph(service, new String[] { "Graph could not be found for '" + graphName + "' on this resource. Has any response time data been collected for this service from this remote poller and is the graph definition correct?" }); }
/** {@inheritDoc} */ @Override public OnmsResource getResourceById(ResourceId id) { return m_resourceDao.getResourceById(id); }
@Override public Map<OnmsResourceType, List<OnmsResource>> doInTransaction(TransactionStatus transactionStatus) { OnmsNode node = m_nodeDao.get(nodeId); OnmsResource resource = m_resourceDao.getResourceForNode(node); Map<OnmsResourceType, List<OnmsResource>> resourceTypeMap = new LinkedHashMap<OnmsResourceType, List<OnmsResource>>(); for (OnmsResource childResource : resource.getChildResources()) { if (!resourceTypeMap.containsKey(childResource.getResourceType())) { resourceTypeMap.put(childResource.getResourceType(), new LinkedList<OnmsResource>()); } resourceTypeMap.get(childResource.getResourceType()).add(checkLabelForQuotes(childResource)); } return resourceTypeMap; } });
/** * <p>findTopLevelResources</p> * * @return a {@link java.util.List} object. */ @Override public List<OnmsResource> findTopLevelResources() { return m_resourceDao.findTopLevelResources(); }
@Override public OnmsResource call() throws IllegalArgumentException { final OnmsResource resource = m_resourceDao.getResourceById(resourceId); if (resource != null) { // The attributes are typically lazy loaded, so we trigger the load here // while we're in a threaded context resource.getAttributes(); } return resource; } };
@Override public Map<OnmsResourceType, List<OnmsResource>> doInTransaction(TransactionStatus transactionStatus) { OnmsNode node = m_nodeDao.get(nodeId); OnmsResource resource = m_resourceDao.getResourceForNode(node); Map<OnmsResourceType, List<OnmsResource>> resourceTypeMap = new LinkedHashMap<OnmsResourceType, List<OnmsResource>>(); for (OnmsResource childResource : resource.getChildResources()) { if (!resourceTypeMap.containsKey(childResource.getResourceType())) { resourceTypeMap.put(childResource.getResourceType(), new LinkedList<OnmsResource>()); } resourceTypeMap.get(childResource.getResourceType()).add(checkLabelForQuotes(childResource)); } return resourceTypeMap; } });
/** * <p>walk</p> */ public void walk() { walk(m_resourceDao.findTopLevelResources()); }
@Override public PrefabGraph[] getAllPrefabGraphs(ResourceId resourceId) { OnmsResource resource = m_resourceDao.getResourceById(resourceId); return m_graphDao.getPrefabGraphsForResource(resource); }
@Override public Map<String, String> doInTransaction(TransactionStatus transactionStatus) { Map<String, String> data = new HashMap<>(); ResourceId resourceId = ResourceId.fromString(resourceIdString); OnmsNode node; OnmsResource resource; if(nodeId == null){ resource = determineResourceByResourceId(resourceId); node = ResourceTypeUtils.getNodeFromResource(resource); } else { node = m_nodeDao.get(nodeId); resource = m_resourceDao.getResourceForNode(node); } data.put("nodeId", node.getNodeId()); data.put("nodeLabel", node.getLabel()); for (OnmsResource onmsResource : resource.getChildResources()) { if (resourceId.equals(onmsResource.getId())) { data.put("resourceLabel", onmsResource.getLabel()); data.put("resourceTypeLabel", onmsResource.getResourceType().getLabel()); break; } } return data; } });
public void testReportWalking() throws Exception { EasyMock.expect(m_resourceDao.findTopLevelResources()).andReturn(new ArrayList<OnmsResource>(0)); ReportDefinition def = createReportDefinition(); def.setResourceAttributeKey("ifSpeed"); def.setResourceAttributeValueMatch("100000000"); ReportInstance report = def.createReport(m_nodeDao, m_resourceDao, m_fetchStrategy, m_filterDao); m_mocks.replayAll(); report.walk(); assertEquals("results size", 0, report.getResults().size()); }
@Override public PrefabGraph[] getAllPrefabGraphs(ResourceId resourceId) { OnmsResource resource = m_resourceDao.getResourceById(resourceId); return m_graphDao.getPrefabGraphsForResource(resource); }
@Override public Map<String, String> doInTransaction(TransactionStatus transactionStatus) { Map<String, String> data = new HashMap<>(); ResourceId resourceId = ResourceId.fromString(resourceIdString); OnmsNode node; OnmsResource resource; if(nodeId == null){ resource = determineResourceByResourceId(resourceId); node = ResourceTypeUtils.getNodeFromResource(resource); } else { node = m_nodeDao.get(nodeId); resource = m_resourceDao.getResourceForNode(node); } data.put("nodeId", node.getNodeId()); data.put("nodeLabel", node.getLabel()); for (OnmsResource onmsResource : resource.getChildResources()) { if (resourceId.equals(onmsResource.getId())) { data.put("resourceLabel", onmsResource.getLabel()); data.put("resourceTypeLabel", onmsResource.getResourceType().getLabel()); break; } } return data; } });
public void testUnfilteredResourceAttributeFilteringWithNoMatch() throws Exception { MockResourceType resourceType = new MockResourceType(); resourceType.setName("interfaceSnmp"); OnmsAttribute attribute = new RrdGraphAttribute("IfInOctets", "something", "something else"); OnmsResource resource = new OnmsResource("1", "Node One", resourceType, Collections.singleton(attribute), ResourcePath.get("foo")); EasyMock.expect(m_resourceDao.findTopLevelResources()).andReturn(Collections.singletonList(resource)); ReportDefinition def = createReportDefinition(); def.setResourceAttributeKey("ifSpeed"); def.setResourceAttributeValueMatch("100000000"); ReportInstance report = def.createReport(m_nodeDao, m_resourceDao, m_fetchStrategy, m_filterDao); m_mocks.replayAll(); report.walk(); assertEquals("results size", 0, report.getResults().size()); }
@Override public OnmsResource call() throws IllegalArgumentException { final OnmsResource resource = m_resourceDao.getResourceById(resourceId); if (resource != null) { // The attributes are typically lazy loaded, so we trigger the load here // while we're in a threaded context resource.getAttributes(); } return resource; } };
public void testFilteredResourceAttributeFilteringWithNoMatch() throws Exception { final OnmsNode node = new OnmsNode(); node.setId(1); node.setLabel("Node One"); EasyMock.expect(m_nodeDao.load(1)).andReturn(node); MockResourceType resourceType = new MockResourceType(); resourceType.setName("interfaceSnmp"); OnmsAttribute attribute = new RrdGraphAttribute("IfInOctets", "something", "something else"); OnmsResource resource = new OnmsResource(node.getId().toString(), node.getLabel(), resourceType, Collections.singleton(attribute), ResourcePath.get("foo")); ReportDefinition def = createReportDefinition(); def.getReport().getPackage().setFilter(""); def.setResourceAttributeKey("ifSpeed"); def.setResourceAttributeValueMatch("100000000"); ReportInstance report = def.createReport(m_nodeDao, m_resourceDao, m_fetchStrategy, m_filterDao); SortedMap<Integer,String> sortedNodeMap = new TreeMap<Integer, String>(); sortedNodeMap.put(node.getId(), node.getLabel()); EasyMock.expect(m_filterDao.getNodeMap("")).andReturn(sortedNodeMap); EasyMock.expect(m_resourceDao.getResourceForNode(node)).andReturn(resource); m_mocks.replayAll(); report.walk(); assertEquals("results size", 0, report.getResults().size()); }