use of org.opennms.features.poller.remote.gwt.client.location.LocationDetails in project opennms by OpenNMS.
the class DefaultLocationManager method showLocationDetails.
private void showLocationDetails(final String locationName) {
// TODO: this needs a callback to get the location details, and fill
// in the content
final LocationInfo loc = m_dataManager.getLocation(locationName);
m_remoteService.getLocationDetails(locationName, new AsyncCallback<LocationDetails>() {
@Override
public void onFailure(final Throwable t) {
String htmlTitle = "Error Getting Location Details";
String htmlContent = "<p>An error occurred getting the location details.</p>" + "<pre>" + URL.encode(t.getMessage()) + "</pre>";
m_view.showLocationDetails(locationName, htmlTitle, htmlContent);
}
@Override
public void onSuccess(final LocationDetails locationDetails) {
m_view.showLocationDetails(locationName, locationName + " (" + loc.getArea() + ")", getLocationInfoDetails(loc, locationDetails));
}
});
}
use of org.opennms.features.poller.remote.gwt.client.location.LocationDetails in project opennms by OpenNMS.
the class SerializationTest method testLocationDetails.
@Test
public void testLocationDetails() throws Exception {
LocationDetails l = new LocationDetails();
l.setLocationMonitorState(getLocationMonitorState());
writer.writeObject(l);
}
use of org.opennms.features.poller.remote.gwt.client.location.LocationDetails in project opennms by OpenNMS.
the class LocationDataServiceIT method testLocationMonitorState.
@Test
public void testLocationMonitorState() throws Exception {
m_pollerBackEnd.reportResult(m_rduMonitor1.getId(), m_localhostHttpService.getId(), getAvailable(new Date(now() - days(20) - hours(3))));
m_pollerBackEnd.reportResult(m_rduMonitor1.getId(), m_localhostHttpService.getId(), getDown(new Date(now() - days(20) - hours(2))));
m_pollerBackEnd.reportResult(m_rduMonitor1.getId(), m_localhostHttpService.getId(), getAvailable(new Date(now() - days(20) - hours(1))));
m_pollerBackEnd.reportResult(m_rduMonitor1.getId(), m_googleHttpService.getId(), getDown(new Date(now() - days(20) - hours(4))));
LocationDetails ld = m_locationDataService.getLocationDetails("RDU");
LocationMonitorState lms = ld.getLocationMonitorState();
assertEquals(Status.DOWN, lms.getStatusDetails().getStatus());
assertEquals(2, lms.getServices().size());
assertEquals(1, lms.getServicesDown().size());
assertEquals(1, lms.getMonitorsWithServicesDown().size());
assertEquals(2, lms.getMonitorsStarted());
assertEquals(0, lms.getMonitorsStopped());
assertEquals(0, lms.getMonitorsDisconnected());
}
use of org.opennms.features.poller.remote.gwt.client.location.LocationDetails in project opennms by OpenNMS.
the class LocationDataServiceIT method testLocationDetails.
@Test
public void testLocationDetails() throws Exception {
m_pollerBackEnd.reportResult(m_rduMonitor1.getId(), m_localhostHttpService.getId(), getAvailable(new Date(now() - days(20) - hours(3))));
m_pollerBackEnd.reportResult(m_rduMonitor1.getId(), m_localhostHttpService.getId(), getDown(new Date(now() - days(20) - hours(2))));
m_pollerBackEnd.reportResult(m_rduMonitor1.getId(), m_localhostHttpService.getId(), getAvailable(new Date(now() - days(20) - hours(1))));
m_pollerBackEnd.reportResult(m_rduMonitor1.getId(), m_googleHttpService.getId(), getDown(new Date(now() - days(20) - hours(4))));
LocationDetails ld = m_locationDataService.getLocationDetails("RDU");
assertEquals(Status.UNKNOWN, ld.getApplicationState().getStatusDetails().getStatus());
assertEquals(Status.DOWN, ld.getLocationMonitorState().getStatusDetails().getStatus());
}
use of org.opennms.features.poller.remote.gwt.client.location.LocationDetails in project opennms by OpenNMS.
the class DefaultLocationDataService method getLocationDetails.
/**
* <p>getLocationDetails</p>
*
* @param def a {@link org.opennms.netmgt.model.OnmsMonitoringLocationDefinition} object.
* @return a {@link org.opennms.features.poller.remote.gwt.client.location.LocationDetails} object.
*/
@Transactional
@Override
public LocationDetails getLocationDetails(final OnmsMonitoringLocation def) {
waitForGeocoding("getLocationDetails");
final LocationDetails ld = new LocationDetails();
final DefaultLocationDataService.MonitorStatusTracker mst = new DefaultLocationDataService.MonitorStatusTracker(def.getLocationName());
final DefaultLocationDataService.ApplicationStatusTracker ast = new DefaultLocationDataService.ApplicationStatusTracker(def.getLocationName());
final List<GWTLocationMonitor> monitors = new ArrayList<GWTLocationMonitor>();
for (OnmsLocationMonitor mon : m_locationDao.findByLocationDefinition(def)) {
monitors.add(transformLocationMonitor(mon));
}
final Set<ApplicationInfo> applications = new HashSet<ApplicationInfo>();
for (final OnmsApplication application : m_applicationDao.findAll()) {
applications.add(transformApplication(m_monitoredServiceDao.findByApplication(application), application));
}
// for (final OnmsMonitoredService service : m_monitoredServiceDao.findAll()) {
// for (final OnmsApplication app : service.getApplications()) {
// final String appName = app.getName();
// Set<OnmsMonitoredService> serv = services.get(appName);
// if (serv == null) {
// serv = new HashSet<OnmsMonitoredService>();
// services.put(appName, serv);
// }
// serv.add(service);
// }
// }
final Date to = new Date();
final Date from = new Date(to.getTime() - AVAILABILITY_MS);
for (OnmsLocationSpecificStatus status : m_locationDao.getMostRecentStatusChangesForLocation(def.getLocationName())) {
mst.onStatus(status);
ast.onStatus(status);
}
ld.setLocationMonitorState(new LocationMonitorState(monitors, mst.drain()));
ld.setApplicationState(new ApplicationState(from, to, applications, monitors, ast.drainStatuses()));
LOG.debug("getLocationDetails({}) returning {}", def.getLocationName(), ld);
return ld;
}
Aggregations