@Override public MonitoredService doInTransaction(TransactionStatus status) { final List<OnmsIpInterface> ips = ipInterfaceDao.findByIpAddress(ipAddress); if (ips == null || ips.size() == 0) { System.err.printf("Error: Can't find the IP address %s on the database\n", ipAddress); return null; } if (ips.size() > 1) { System.out.printf("Warning: there are several IP interface objects associated with the IP address %s (picking the first one)\n", ipAddress); } OnmsNode n = ips.get(0).getNode(); return new SimpleMonitoredService(addr, n.getId(), n.getLabel(), serviceName); } });
@Before public void setUp() throws Exception { MockLogAppender.setupLogging(); if (m_nodeDao.findByLabel("testnode").size() == 0) { NetworkBuilder builder = new NetworkBuilder(); builder.addNode("testnode"); builder.addInterface(InetAddressUtils.normalize(m_testHostName)).setIsManaged("M").setIsSnmpPrimary("P"); builder.addService(getServiceType("ICMP")); builder.addService(getServiceType("HTTP")); builder.addService(getServiceType("HTTPS")); OnmsNode n = builder.getCurrentNode(); assertNotNull(n); m_nodeDao.save(n); m_nodeDao.flush(); } m_collector = new HttpCollector(); Collection<OnmsIpInterface> ifaces = m_ipInterfaceDao.findByIpAddress(m_testHostName); assertEquals(1, ifaces.size()); OnmsIpInterface iface = ifaces.iterator().next(); Map<String, String> parameters = new HashMap<String, String>(); parameters.put("collection", "default"); m_collector.initialize(); m_collectionSpecification = CollectorTestUtils.createCollectionSpec("HTTP", m_collector, "default"); m_httpsCollectionSpecification = CollectorTestUtils.createCollectionSpec("HTTPS", m_collector, "default"); m_collectionAgent = DefaultCollectionAgent.create(iface.getId(), m_ipInterfaceDao, m_transactionManager); File snmpRrdDirectory = (File)m_context.getAttribute("rrdDirectory"); m_resourceStorageDao.setRrdDirectory(snmpRrdDirectory.getParentFile()); }