diff options
author | Håkon Hallingstad <hakon@oath.com> | 2017-10-22 00:34:57 +0200 |
---|---|---|
committer | Håkon Hallingstad <hakon@oath.com> | 2017-10-22 00:34:57 +0200 |
commit | 5c85415772637b3f160a8f3a26306053630fee96 (patch) | |
tree | 54b63d1c22a61c43b7927812dbe00f914eccfb98 /service-monitor | |
parent | 535c1ae687415540b2d5e727957665f02f898de7 (diff) |
Remove status type parameter in application model classes
Diffstat (limited to 'service-monitor')
11 files changed, 62 insertions, 68 deletions
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ConfigServerApplication.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ConfigServerApplication.java index 5cffcec82b8..1a48ba870fb 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ConfigServerApplication.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ConfigServerApplication.java @@ -8,6 +8,7 @@ import com.yahoo.vespa.applicationmodel.ConfigId; import com.yahoo.vespa.applicationmodel.HostName; import com.yahoo.vespa.applicationmodel.ServiceCluster; import com.yahoo.vespa.applicationmodel.ServiceInstance; +import com.yahoo.vespa.applicationmodel.ServiceStatus; import com.yahoo.vespa.applicationmodel.ServiceType; import com.yahoo.vespa.applicationmodel.TenantId; @@ -26,23 +27,23 @@ public class ConfigServerApplication { public static final ApplicationInstanceId APPLICATION_INSTANCE_ID = new ApplicationInstanceId("zone-config-servers"); public static final String CONFIG_ID_PREFIX = "configid."; - ApplicationInstance<ServiceMonitorStatus> toApplicationInstance(List<String> hostnames) { - Set<ServiceInstance<ServiceMonitorStatus>> serviceInstances = hostnames.stream() - .map(hostname -> new ServiceInstance<>( + ApplicationInstance toApplicationInstance(List<String> hostnames) { + Set<ServiceInstance> serviceInstances = hostnames.stream() + .map(hostname -> new ServiceInstance( new ConfigId(CONFIG_ID_PREFIX + hostname), new HostName(hostname), - ServiceMonitorStatus.NOT_CHECKED)) + ServiceStatus.NOT_CHECKED)) .collect(Collectors.toSet()); - ServiceCluster<ServiceMonitorStatus> serviceCluster = new ServiceCluster<>( + ServiceCluster serviceCluster = new ServiceCluster( CLUSTER_ID, SERVICE_TYPE, serviceInstances); - Set<ServiceCluster<ServiceMonitorStatus>> serviceClusters = + Set<ServiceCluster> serviceClusters = Stream.of(serviceCluster).collect(Collectors.toSet()); - ApplicationInstance<ServiceMonitorStatus> applicationInstance = new ApplicationInstance<>( + ApplicationInstance applicationInstance = new ApplicationInstance( TENANT_ID, APPLICATION_INSTANCE_ID, serviceClusters); diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ModelGenerator.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ModelGenerator.java index ed40dcc675a..d9f019ade63 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ModelGenerator.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ModelGenerator.java @@ -16,6 +16,7 @@ import com.yahoo.vespa.applicationmodel.HostName; import com.yahoo.vespa.applicationmodel.ServiceCluster; import com.yahoo.vespa.applicationmodel.ServiceClusterKey; import com.yahoo.vespa.applicationmodel.ServiceInstance; +import com.yahoo.vespa.applicationmodel.ServiceStatus; import com.yahoo.vespa.applicationmodel.ServiceType; import com.yahoo.vespa.applicationmodel.TenantId; @@ -42,12 +43,11 @@ public class ModelGenerator { Zone zone, List<String> configServerHosts, SlobrokMonitorManager slobrokMonitorManager) { - Map<ApplicationInstanceReference, - ApplicationInstance<ServiceMonitorStatus>> applicationInstances = new HashMap<>(); + Map<ApplicationInstanceReference, ApplicationInstance> applicationInstances = new HashMap<>(); for (ApplicationInfo applicationInfo : superModel.getAllApplicationInfos()) { - ApplicationInstance<ServiceMonitorStatus> applicationInstance = toApplicationInstance( + ApplicationInstance applicationInstance = toApplicationInstance( applicationInfo, zone, slobrokMonitorManager); @@ -57,7 +57,7 @@ public class ModelGenerator { // The config server is part of the service model (but not super model) if (!configServerHosts.isEmpty()) { ConfigServerApplication configServerApplication = new ConfigServerApplication(); - ApplicationInstance<ServiceMonitorStatus> configServerApplicationInstance = + ApplicationInstance configServerApplicationInstance = configServerApplication.toApplicationInstance(configServerHosts); applicationInstances.put(configServerApplicationInstance.reference(), configServerApplicationInstance); } @@ -65,17 +65,17 @@ public class ModelGenerator { return new ServiceModel(applicationInstances); } - ApplicationInstance<ServiceMonitorStatus> toApplicationInstance( + ApplicationInstance toApplicationInstance( ApplicationInfo applicationInfo, Zone zone, SlobrokMonitorManager slobrokMonitorManager) { - Map<ServiceClusterKey, Set<ServiceInstance<ServiceMonitorStatus>>> groupedServiceInstances = new HashMap<>(); + Map<ServiceClusterKey, Set<ServiceInstance>> groupedServiceInstances = new HashMap<>(); for (HostInfo host : applicationInfo.getModel().getHosts()) { HostName hostName = new HostName(host.getHostname()); for (ServiceInfo serviceInfo : host.getServices()) { ServiceClusterKey serviceClusterKey = toServiceClusterKey(serviceInfo); - ServiceInstance<ServiceMonitorStatus> serviceInstance = + ServiceInstance serviceInstance = toServiceInstance( applicationInfo.getApplicationId(), serviceInfo, @@ -89,14 +89,14 @@ public class ModelGenerator { } } - Set<ServiceCluster<ServiceMonitorStatus>> serviceClusters = groupedServiceInstances.entrySet().stream() - .map(entry -> new ServiceCluster<>( + Set<ServiceCluster> serviceClusters = groupedServiceInstances.entrySet().stream() + .map(entry -> new ServiceCluster( entry.getKey().clusterId(), entry.getKey().serviceType(), entry.getValue())) .collect(Collectors.toSet()); - ApplicationInstance<ServiceMonitorStatus> applicationInstance = new ApplicationInstance<>( + ApplicationInstance applicationInstance = new ApplicationInstance( new TenantId(applicationInfo.getApplicationId().tenant().toString()), toApplicationInstanceId(applicationInfo, zone), serviceClusters); @@ -110,19 +110,19 @@ public class ModelGenerator { return new ServiceClusterKey(clusterId, serviceType); } - ServiceInstance<ServiceMonitorStatus> toServiceInstance( + ServiceInstance toServiceInstance( ApplicationId applicationId, ServiceInfo serviceInfo, HostName hostName, SlobrokMonitorManager slobrokMonitorManager) { ConfigId configId = new ConfigId(serviceInfo.getConfigId()); - ServiceMonitorStatus status = slobrokMonitorManager.getStatus( + ServiceStatus status = slobrokMonitorManager.getStatus( applicationId, toServiceType(serviceInfo), configId); - return new ServiceInstance<>(configId, hostName, status); + return new ServiceInstance(configId, hostName, status); } ApplicationInstanceId toApplicationInstanceId(ApplicationInfo applicationInfo, Zone zone) { diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceModel.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceModel.java index b39af0238c5..7fe2747200a 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceModel.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceModel.java @@ -10,25 +10,25 @@ import java.util.Optional; /** * The ServiceModel is almost a mirror of the SuperModel, except that it - * also gives ServiceMonitorStatus on each service, and there may be + * also gives ServiceStatus on each service, and there may be * artificial applications like the config server "application". */ // @Immutable public class ServiceModel { private final Map<ApplicationInstanceReference, - ApplicationInstance<ServiceMonitorStatus>> applications; + ApplicationInstance> applications; ServiceModel(Map<ApplicationInstanceReference, - ApplicationInstance<ServiceMonitorStatus>> applications) { + ApplicationInstance> applications) { this.applications = Collections.unmodifiableMap(applications); } Map<ApplicationInstanceReference, - ApplicationInstance<ServiceMonitorStatus>> getAllApplicationInstances() { + ApplicationInstance> getAllApplicationInstances() { return applications; } - Optional<ApplicationInstance<ServiceMonitorStatus>> getApplicationInstance(ApplicationInstanceReference reference) { + Optional<ApplicationInstance> getApplicationInstance(ApplicationInstanceReference reference) { return Optional.ofNullable(applications.get(reference)); } } diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitor.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitor.java index e18ccceec6c..e99d34fc15e 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitor.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitor.java @@ -18,6 +18,6 @@ public interface ServiceMonitor { * Returns the current liveness status (up, down or unknown) of all instances * of all services of all clusters of all applications in a zone. */ - Map<ApplicationInstanceReference, ApplicationInstance<ServiceMonitorStatus>> queryStatusOfAllApplicationInstances(); + Map<ApplicationInstanceReference, ApplicationInstance> queryStatusOfAllApplicationInstances(); } diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorImpl.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorImpl.java index 80be6470686..20cc66a6c30 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorImpl.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorImpl.java @@ -59,7 +59,7 @@ public class ServiceMonitorImpl implements ServiceMonitor { @Override public Map<ApplicationInstanceReference, - ApplicationInstance<ServiceMonitorStatus>> queryStatusOfAllApplicationInstances() { + ApplicationInstance> queryStatusOfAllApplicationInstances() { return serviceModelCache.get().getAllApplicationInstances(); } } diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorStatus.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorStatus.java deleted file mode 100644 index f9c35ac47bd..00000000000 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorStatus.java +++ /dev/null @@ -1,11 +0,0 @@ -// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.vespa.service.monitor; - -/** - * @author oyving - */ -public enum ServiceMonitorStatus { - UP, - DOWN, - NOT_CHECKED; -} diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManager.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManager.java index 95baa9013d1..41d379624cb 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManager.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManager.java @@ -7,6 +7,7 @@ import com.yahoo.config.model.api.SuperModelListener; import com.yahoo.config.provision.ApplicationId; import com.yahoo.log.LogLevel; import com.yahoo.vespa.applicationmodel.ConfigId; +import com.yahoo.vespa.applicationmodel.ServiceStatus; import com.yahoo.vespa.applicationmodel.ServiceType; import java.util.HashMap; @@ -54,22 +55,22 @@ public class SlobrokMonitorManager implements SuperModelListener { } } - ServiceMonitorStatus getStatus(ApplicationId applicationId, - ServiceType serviceType, - ConfigId configId) { + ServiceStatus getStatus(ApplicationId applicationId, + ServiceType serviceType, + ConfigId configId) { Optional<String> slobrokServiceName = findSlobrokServiceName(serviceType, configId); if (slobrokServiceName.isPresent()) { synchronized (monitor) { SlobrokMonitor2 slobrokMonitor = slobrokMonitors.get(applicationId); if (slobrokMonitor != null && slobrokMonitor.registeredInSlobrok(slobrokServiceName.get())) { - return ServiceMonitorStatus.UP; + return ServiceStatus.UP; } else { - return ServiceMonitorStatus.DOWN; + return ServiceStatus.DOWN; } } } else { - return ServiceMonitorStatus.NOT_CHECKED; + return ServiceStatus.NOT_CHECKED; } } diff --git a/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/ConfigServerApplicationTest.java b/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/ConfigServerApplicationTest.java index fb123da2603..8eebdbb611b 100644 --- a/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/ConfigServerApplicationTest.java +++ b/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/ConfigServerApplicationTest.java @@ -2,6 +2,7 @@ package com.yahoo.vespa.service.monitor; import com.yahoo.vespa.applicationmodel.ApplicationInstance; +import com.yahoo.vespa.applicationmodel.ServiceStatus; import org.junit.Test; import java.util.List; @@ -23,7 +24,7 @@ public class ConfigServerApplicationTest { @Test public void toApplicationInstance() throws Exception { ConfigServerApplication application = new ConfigServerApplication(); - ApplicationInstance<ServiceMonitorStatus> applicationInstance = + ApplicationInstance applicationInstance = application.toApplicationInstance(configServerList); assertEquals( @@ -43,7 +44,7 @@ public class ConfigServerApplicationTest { applicationInstance.serviceClusters().iterator().next().clusterId()); assertEquals( - ServiceMonitorStatus.NOT_CHECKED, + ServiceStatus.NOT_CHECKED, applicationInstance .serviceClusters().iterator().next() .serviceInstances().iterator().next() diff --git a/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/ModelGeneratorTest.java b/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/ModelGeneratorTest.java index 4b82286235e..3ac8c20fcab 100644 --- a/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/ModelGeneratorTest.java +++ b/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/ModelGeneratorTest.java @@ -9,6 +9,7 @@ import com.yahoo.vespa.applicationmodel.ApplicationInstance; import com.yahoo.vespa.applicationmodel.ApplicationInstanceReference; import com.yahoo.vespa.applicationmodel.ServiceCluster; import com.yahoo.vespa.applicationmodel.ServiceInstance; +import com.yahoo.vespa.applicationmodel.ServiceStatus; import org.junit.Test; import java.util.Collections; @@ -43,7 +44,7 @@ public class ModelGeneratorTest { SlobrokMonitorManager slobrokMonitorManager = mock(SlobrokMonitorManager.class); when(slobrokMonitorManager.getStatus(any(), any(), any())) - .thenReturn(ServiceMonitorStatus.UP); + .thenReturn(ServiceStatus.UP); ServiceModel serviceModel = modelGenerator.toServiceModel( @@ -53,17 +54,17 @@ public class ModelGeneratorTest { slobrokMonitorManager); Map<ApplicationInstanceReference, - ApplicationInstance<ServiceMonitorStatus>> applicationInstances = + ApplicationInstance> applicationInstances = serviceModel.getAllApplicationInstances(); assertEquals(2, applicationInstances.size()); Iterator<Map.Entry<ApplicationInstanceReference, - ApplicationInstance<ServiceMonitorStatus>>> iterator = + ApplicationInstance>> iterator = applicationInstances.entrySet().iterator(); - ApplicationInstance<ServiceMonitorStatus> applicationInstance1 = iterator.next().getValue(); - ApplicationInstance<ServiceMonitorStatus> applicationInstance2 = iterator.next().getValue(); + ApplicationInstance applicationInstance1 = iterator.next().getValue(); + ApplicationInstance applicationInstance2 = iterator.next().getValue(); if (applicationInstance1.applicationInstanceId().equals( ConfigServerApplication.APPLICATION_INSTANCE_ID)) { @@ -87,7 +88,7 @@ public class ModelGeneratorTest { SlobrokMonitorManager slobrokMonitorManager = mock(SlobrokMonitorManager.class); when(slobrokMonitorManager.getStatus(any(), any(), any())) - .thenReturn(ServiceMonitorStatus.UP); + .thenReturn(ServiceStatus.UP); ServiceModel serviceModel = modelGenerator.toServiceModel( @@ -97,14 +98,14 @@ public class ModelGeneratorTest { slobrokMonitorManager); Map<ApplicationInstanceReference, - ApplicationInstance<ServiceMonitorStatus>> applicationInstances = + ApplicationInstance> applicationInstances = serviceModel.getAllApplicationInstances(); assertEquals(1, applicationInstances.size()); verifyOtherApplication(applicationInstances.values().iterator().next()); } - private void verifyOtherApplication(ApplicationInstance<ServiceMonitorStatus> applicationInstance) { + private void verifyOtherApplication(ApplicationInstance applicationInstance) { assertEquals(String.format("%s:%s:%s:%s:%s", ExampleModel.TENANT, ExampleModel.APPLICATION_NAME, @@ -114,25 +115,25 @@ public class ModelGeneratorTest { applicationInstance.reference().toString()); assertEquals(ExampleModel.TENANT, applicationInstance.tenantId().toString()); - Set<ServiceCluster<ServiceMonitorStatus>> serviceClusters = + Set<ServiceCluster> serviceClusters = applicationInstance.serviceClusters(); assertEquals(1, serviceClusters.size()); - ServiceCluster<ServiceMonitorStatus> serviceCluster = serviceClusters.iterator().next(); + ServiceCluster serviceCluster = serviceClusters.iterator().next(); assertEquals(ExampleModel.CLUSTER_ID, serviceCluster.clusterId().toString()); assertEquals(ExampleModel.SERVICE_TYPE, serviceCluster.serviceType().toString()); - Set<ServiceInstance<ServiceMonitorStatus>> serviceInstances = + Set<ServiceInstance> serviceInstances = serviceCluster.serviceInstances(); assertEquals(1, serviceClusters.size()); - ServiceInstance<ServiceMonitorStatus> serviceInstance = serviceInstances.iterator().next(); + ServiceInstance serviceInstance = serviceInstances.iterator().next(); assertEquals(HOSTNAME, serviceInstance.hostName().toString()); assertEquals(ExampleModel.CONFIG_ID, serviceInstance.configId().toString()); - assertEquals(ServiceMonitorStatus.UP, serviceInstance.serviceStatus()); + assertEquals(ServiceStatus.UP, serviceInstance.serviceStatus()); } private void verifyConfigServerApplication( - ApplicationInstance<ServiceMonitorStatus> applicationInstance) { + ApplicationInstance applicationInstance) { assertEquals(ConfigServerApplication.APPLICATION_INSTANCE_ID, applicationInstance.applicationInstanceId()); } -}
\ No newline at end of file +} diff --git a/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/SlobrokMonitor2Test.java b/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/SlobrokMonitor2Test.java index 7be63e527cf..8ef21c21c4c 100644 --- a/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/SlobrokMonitor2Test.java +++ b/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/SlobrokMonitor2Test.java @@ -33,4 +33,4 @@ public class SlobrokMonitor2Test { String[] expectedSpecs = new String[] {"tcp/" + hostname + ":" + port}; verify(slobrokList).setup(expectedSpecs); */ } -}
\ No newline at end of file +} diff --git a/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManagerTest.java b/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManagerTest.java index f34dd91181c..9c101694244 100644 --- a/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManagerTest.java +++ b/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManagerTest.java @@ -4,6 +4,7 @@ package com.yahoo.vespa.service.monitor; import com.yahoo.config.model.api.ApplicationInfo; import com.yahoo.config.model.api.SuperModel; import com.yahoo.vespa.applicationmodel.ConfigId; +import com.yahoo.vespa.applicationmodel.ServiceStatus; import com.yahoo.vespa.applicationmodel.ServiceType; import org.junit.Before; import org.junit.Test; @@ -43,30 +44,30 @@ public class SlobrokMonitorManagerTest { @Test public void testGetStatus_ApplicationNotInSlobrok() { when(slobrokMonitor.registeredInSlobrok("config.id")).thenReturn(true); - assertEquals(ServiceMonitorStatus.DOWN, getStatus("topleveldispatch")); + assertEquals(ServiceStatus.DOWN, getStatus("topleveldispatch")); } @Test public void testGetStatus_ApplicationInSlobrok() { slobrokMonitorManager.applicationActivated(superModel, application); when(slobrokMonitor.registeredInSlobrok("config.id")).thenReturn(true); - assertEquals(ServiceMonitorStatus.UP, getStatus("topleveldispatch")); + assertEquals(ServiceStatus.UP, getStatus("topleveldispatch")); } @Test public void testGetStatus_ServiceNotInSlobrok() { slobrokMonitorManager.applicationActivated(superModel, application); when(slobrokMonitor.registeredInSlobrok("config.id")).thenReturn(false); - assertEquals(ServiceMonitorStatus.DOWN, getStatus("topleveldispatch")); + assertEquals(ServiceStatus.DOWN, getStatus("topleveldispatch")); } @Test public void testGetStatus_NotChecked() { - assertEquals(ServiceMonitorStatus.NOT_CHECKED, getStatus("slobrok")); + assertEquals(ServiceStatus.NOT_CHECKED, getStatus("slobrok")); verify(slobrokMonitor, times(0)).registeredInSlobrok(any()); } - private ServiceMonitorStatus getStatus(String serviceType) { + private ServiceStatus getStatus(String serviceType) { return slobrokMonitorManager.getStatus( application.getApplicationId(), new ServiceType(serviceType), @@ -89,4 +90,4 @@ public class SlobrokMonitorManagerTest { new ServiceType(serviceType), new ConfigId(configId)); } -}
\ No newline at end of file +} |