diff options
author | Håkon Hallingstad <hakon@oath.com> | 2019-01-03 19:54:11 +0100 |
---|---|---|
committer | Håkon Hallingstad <hakon@oath.com> | 2019-01-03 19:54:11 +0100 |
commit | cf70bfb260fa8731617a327b56be433128aa0450 (patch) | |
tree | ddf55127282b97088ce301c51b46737c5ca7692e /service-monitor | |
parent | 5d9957af203d16c448ca34a9d167e3587b3c7820 (diff) |
Typed flag classes
This reintroduces the non-generic flag classes:
- a value() returns the primitive type for flags wrapping a primitive type
- easier to use in testing
- Serializer is moved to internals of typed class
Defines the flag backed by boolean BooleanFlag instead of FeatureFlag since not
all boolean flags are necessarily guarding a feature.
Diffstat (limited to 'service-monitor')
-rw-r--r-- | service-monitor/src/main/java/com/yahoo/vespa/service/health/HealthMonitorManager.java | 8 | ||||
-rw-r--r-- | service-monitor/src/test/java/com/yahoo/vespa/service/health/HealthMonitorManagerTest.java | 5 |
2 files changed, 6 insertions, 7 deletions
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/health/HealthMonitorManager.java b/service-monitor/src/main/java/com/yahoo/vespa/service/health/HealthMonitorManager.java index 340d30e9f41..682f677a626 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/health/HealthMonitorManager.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/health/HealthMonitorManager.java @@ -8,7 +8,7 @@ import com.yahoo.vespa.applicationmodel.ClusterId; import com.yahoo.vespa.applicationmodel.ConfigId; import com.yahoo.vespa.applicationmodel.ServiceStatus; import com.yahoo.vespa.applicationmodel.ServiceType; -import com.yahoo.vespa.flags.Flag; +import com.yahoo.vespa.flags.BooleanFlag; import com.yahoo.vespa.flags.FlagSource; import com.yahoo.vespa.flags.Flags; import com.yahoo.vespa.service.duper.DuperModelManager; @@ -50,7 +50,7 @@ public class HealthMonitorManager implements MonitorManager { private final ConcurrentHashMap<ApplicationId, ApplicationHealthMonitor> healthMonitors = new ConcurrentHashMap<>(); private final DuperModelManager duperModel; private final ApplicationHealthMonitorFactory applicationHealthMonitorFactory; - private final Flag<Boolean> monitorInfra; + private final BooleanFlag monitorInfra; @Inject public HealthMonitorManager(DuperModelManager duperModel, FlagSource flagSource) { @@ -60,13 +60,13 @@ public class HealthMonitorManager implements MonitorManager { } private HealthMonitorManager(DuperModelManager duperModel, - Flag<Boolean> monitorInfra, + BooleanFlag monitorInfra, StateV1HealthModel healthModel) { this(duperModel, monitorInfra, id -> new ApplicationHealthMonitor(id, healthModel)); } HealthMonitorManager(DuperModelManager duperModel, - Flag<Boolean> monitorInfra, + BooleanFlag monitorInfra, ApplicationHealthMonitorFactory applicationHealthMonitorFactory) { this.duperModel = duperModel; this.monitorInfra = monitorInfra; diff --git a/service-monitor/src/test/java/com/yahoo/vespa/service/health/HealthMonitorManagerTest.java b/service-monitor/src/test/java/com/yahoo/vespa/service/health/HealthMonitorManagerTest.java index 39147955d4c..78b0bed0e6f 100644 --- a/service-monitor/src/test/java/com/yahoo/vespa/service/health/HealthMonitorManagerTest.java +++ b/service-monitor/src/test/java/com/yahoo/vespa/service/health/HealthMonitorManagerTest.java @@ -7,7 +7,7 @@ import com.yahoo.vespa.applicationmodel.ClusterId; import com.yahoo.vespa.applicationmodel.ConfigId; import com.yahoo.vespa.applicationmodel.ServiceStatus; import com.yahoo.vespa.applicationmodel.ServiceType; -import com.yahoo.vespa.flags.Flag; +import com.yahoo.vespa.flags.BooleanFlag; import com.yahoo.vespa.service.duper.ConfigServerApplication; import com.yahoo.vespa.service.duper.ControllerHostApplication; import com.yahoo.vespa.service.duper.DuperModelManager; @@ -33,8 +33,7 @@ import static org.mockito.Mockito.when; public class HealthMonitorManagerTest { private final ConfigServerApplication configServerApplication = new ConfigServerApplication(); private final DuperModelManager duperModel = mock(DuperModelManager.class); - @SuppressWarnings("unchecked") - private final Flag<Boolean> monitorInfra = (Flag<Boolean>) mock(Flag.class); + private final BooleanFlag monitorInfra = mock(BooleanFlag.class); private final ApplicationHealthMonitor monitor = mock(ApplicationHealthMonitor.class); private final ApplicationHealthMonitorFactory monitorFactory = mock(ApplicationHealthMonitorFactory.class); private final HealthMonitorManager manager = new HealthMonitorManager(duperModel, monitorInfra, monitorFactory); |