diff options
author | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2020-08-18 13:57:16 +0200 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2020-08-18 13:57:20 +0200 |
commit | 39023ba2fd955c51a430aa5886c7fe5344050a9e (patch) | |
tree | 7c81d570a7ba9bbe9b35629f6ba4d51685eb2f3a | |
parent | 62d961016037e31b7d2c2abb80f087c9bf0acf49 (diff) |
Component spec in FilterBinding refers to a chain not filter
5 files changed, 17 insertions, 17 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/http/AccessControl.java b/config-model/src/main/java/com/yahoo/vespa/model/container/http/AccessControl.java index 6f628891c42..c2a13a44473 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/http/AccessControl.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/http/AccessControl.java @@ -131,9 +131,9 @@ public class AccessControl { private void removeDuplicateBindingsFromAccessControlChain(Http http) { Set<FilterBinding> duplicateBindings = new HashSet<>(); for (FilterBinding binding : http.getBindings()) { - if (binding.filterId().toId().equals(ACCESS_CONTROL_CHAIN_ID)) { + if (binding.chainId().toId().equals(ACCESS_CONTROL_CHAIN_ID)) { for (FilterBinding otherBinding : http.getBindings()) { - if (!binding.filterId().equals(otherBinding.filterId()) + if (!binding.chainId().equals(otherBinding.chainId()) && binding.binding().equals(otherBinding.binding())) { duplicateBindings.add(binding); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/http/FilterBinding.java b/config-model/src/main/java/com/yahoo/vespa/model/container/http/FilterBinding.java index 6385e426aec..1ca54769683 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/http/FilterBinding.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/http/FilterBinding.java @@ -11,20 +11,20 @@ import java.util.Objects; */ public class FilterBinding { - private final ComponentSpecification filterId; + private final ComponentSpecification chainId; private final BindingPattern binding; - private FilterBinding(ComponentSpecification filterId, BindingPattern binding) { - this.filterId = filterId; + private FilterBinding(ComponentSpecification chainId, BindingPattern binding) { + this.chainId = chainId; this.binding = binding; } - public static FilterBinding create(ComponentSpecification filterId, BindingPattern binding) { - return new FilterBinding(filterId, binding); + public static FilterBinding create(ComponentSpecification chainId, BindingPattern binding) { + return new FilterBinding(chainId, binding); } - public ComponentSpecification filterId() { - return filterId; + public ComponentSpecification chainId() { + return chainId; } public BindingPattern binding() { @@ -36,12 +36,12 @@ public class FilterBinding { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; FilterBinding that = (FilterBinding) o; - return Objects.equals(filterId, that.filterId) && + return Objects.equals(chainId, that.chainId) && Objects.equals(binding, that.binding); } @Override public int hashCode() { - return Objects.hash(filterId, binding); + return Objects.hash(chainId, binding); } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/http/Http.java b/config-model/src/main/java/com/yahoo/vespa/model/container/http/Http.java index 3155669527a..f58f5faa382 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/http/Http.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/http/Http.java @@ -76,7 +76,7 @@ public class Http extends AbstractConfigProducer<AbstractConfigProducer<?>> impl public void getConfig(ServerConfig.Builder builder) { for (FilterBinding binding : bindings) { builder.filter(new ServerConfig.Filter.Builder() - .id(binding.filterId().stringValue()) + .id(binding.chainId().stringValue()) .binding(binding.binding().patternString())); } } @@ -92,8 +92,8 @@ public class Http extends AbstractConfigProducer<AbstractConfigProducer<?>> impl ComponentRegistry<Chain<Filter>> chains = filterChains.allChains(); for (FilterBinding binding: bindings) { - if (filters.getComponent(binding.filterId()) == null && chains.getComponent(binding.filterId()) == null) - throw new RuntimeException("Can't find filter " + binding.filterId() + " for binding " + binding.binding()); + if (filters.getComponent(binding.chainId()) == null && chains.getComponent(binding.chainId()) == null) + throw new RuntimeException("Can't find filter " + binding.chainId() + " for binding " + binding.binding()); } } } diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/http/FilterBindingsTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/http/FilterBindingsTest.java index 4ca7590673d..5b0c13a4038 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/container/http/FilterBindingsTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/container/http/FilterBindingsTest.java @@ -51,7 +51,7 @@ public class FilterBindingsTest extends DomBuilderTest { Http http = buildHttp(xml); FilterBinding binding = first(http.getBindings()); - assertEquals("my-request-chain", binding.filterId().getName()); + assertEquals("my-request-chain", binding.chainId().getName()); assertEquals(MY_CHAIN_BINDING, binding.binding()); Chain<Filter> myChain = http.getFilterChains().allChains().getComponent("my-request-chain"); @@ -71,7 +71,7 @@ public class FilterBindingsTest extends DomBuilderTest { Http http = buildHttp(xml); FilterBinding binding = first(http.getBindings()); - assertEquals("my-response-chain", binding.filterId().getName()); + assertEquals("my-response-chain", binding.chainId().getName()); assertEquals(MY_CHAIN_BINDING, binding.binding()); Chain<Filter> myChain = http.getFilterChains().allChains().getComponent("my-response-chain"); diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/AccessControlTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/AccessControlTest.java index efec87b5583..4c3a1084005 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/AccessControlTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/AccessControlTest.java @@ -209,7 +209,7 @@ public class AccessControlTest extends ContainerModelBuilderTestBase { private static Set<String> getFilterBindings(Http http, ComponentId filerChain) { return http.getBindings().stream() - .filter(binding -> binding.filterId().toId().equals(filerChain)) + .filter(binding -> binding.chainId().toId().equals(filerChain)) .map(binding -> binding.binding().patternString()) .collect(Collectors.toSet()); } |