public HostsStatistics(List<ServiceStatistics> statistics) { for (ServiceStatistics stats : statistics) { String host = stats.getServiceRegistration().getHost(); boolean online = stats.getServiceRegistration().isOnline(); boolean inMaintenanceMode = stats.getServiceRegistration().isInMaintenanceMode(); if (!stats.getServiceRegistration().isActive()) { hosts.remove(host); logger.trace("Removing inactive host '{}'", host); continue; } if (online && !inMaintenanceMode) { hosts.put(host, ONLINE); } else if (online && inMaintenanceMode) { hosts.put(host, MAINTENANCE); } else { hosts.put(host, OFFLINE); } } }
public void updateService(ServiceRegistration registration) { if (!registration.isActive()) { services.remove(Tuple.tuple(registration.getHost(), registration.getServiceType())); logger.trace("Removing inactive service '{}'", registration); } else { services.put(Tuple.tuple(registration.getHost(), registration.getServiceType()), registration.getServiceState()); } sendNotification(JmxUtil.createUpdateNotification(this, sequenceNumber++, "Service updated")); }
public ServicesStatistics(String hostName, List<ServiceStatistics> statistics) { this.hostName = hostName; for (ServiceStatistics stats : statistics) { if (!stats.getServiceRegistration().isActive()) { logger.trace("Ignoring inactive service '{}'", stats); continue; } String host = stats.getServiceRegistration().getHost(); String serviceType = stats.getServiceRegistration().getServiceType(); ServiceState serviceState = stats.getServiceRegistration().getServiceState(); services.put(Tuple.tuple(host, serviceType), serviceState); } }
/** * Creates a new JAXB annotated service registration based on an existing service registration * * @param serviceRegistration */ public JaxbServiceRegistration(ServiceRegistration serviceRegistration) { this.host = serviceRegistration.getHost(); this.jobProducer = serviceRegistration.isJobProducer(); this.maintenanceMode = serviceRegistration.isInMaintenanceMode(); this.active = serviceRegistration.isActive(); this.online = serviceRegistration.isOnline(); this.onlineFrom = serviceRegistration.getOnlineFrom(); this.path = serviceRegistration.getPath(); this.serviceType = serviceRegistration.getServiceType(); this.serviceState = serviceRegistration.getServiceState(); this.stateChanged = serviceRegistration.getStateChanged(); this.warningStateTrigger = serviceRegistration.getWarningStateTrigger(); this.errorStateTrigger = serviceRegistration.getErrorStateTrigger(); }