diff options
author | Martin Polden <mpolden@mpolden.no> | 2020-01-30 12:10:27 +0100 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2020-01-30 12:35:11 +0100 |
commit | d6bc119e2b074e07ffa9f340cb289bd912300d26 (patch) | |
tree | d0aeb4b64579dff1971653deaf1befa2574e20a2 /config-provisioning | |
parent | 2533470181c45a877fdc884f1c6742e0934aa6bb (diff) |
Query routing generator when zone explicitly supports shared routing
Diffstat (limited to 'config-provisioning')
-rw-r--r-- | config-provisioning/src/main/java/com/yahoo/config/provision/zone/RoutingMethod.java | 17 | ||||
-rw-r--r-- | config-provisioning/src/main/java/com/yahoo/config/provision/zone/ZoneFilter.java | 5 |
2 files changed, 21 insertions, 1 deletions
diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/zone/RoutingMethod.java b/config-provisioning/src/main/java/com/yahoo/config/provision/zone/RoutingMethod.java new file mode 100644 index 00000000000..892ac639198 --- /dev/null +++ b/config-provisioning/src/main/java/com/yahoo/config/provision/zone/RoutingMethod.java @@ -0,0 +1,17 @@ +// Copyright 2020 Oath Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.config.provision.zone; + +/** + * The routing methods supported by a zone. + * + * @author mpolden + */ +public enum RoutingMethod { + + /** Routing happens through shared routing layer */ + shared, + + /** Routing happens through a dedicated layer 4 load balancer */ + exclusive, + +} diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/zone/ZoneFilter.java b/config-provisioning/src/main/java/com/yahoo/config/provision/zone/ZoneFilter.java index 46efe7a440d..5ef23c80eac 100644 --- a/config-provisioning/src/main/java/com/yahoo/config/provision/zone/ZoneFilter.java +++ b/config-provisioning/src/main/java/com/yahoo/config/provision/zone/ZoneFilter.java @@ -1,4 +1,4 @@ -// Copyright 2018 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright 2020 Oath Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision.zone; import com.yahoo.config.provision.CloudName; @@ -22,6 +22,9 @@ public interface ZoneFilter { /** Zones which support direct routing through exclusive load balancers. */ ZoneList directlyRouted(); + /** Zones where traffic is routed using given method */ + ZoneList routingMethod(RoutingMethod method); + /** Zones where config servers are up and running. */ ZoneList reachable(); |