diff options
author | Bjørn Christian Seime <bjorn.christian@seime.no> | 2018-05-23 13:16:42 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-23 13:16:42 +0200 |
commit | e3615e953e154cee870c36eb79c135c0f4fc9436 (patch) | |
tree | 657984ca049491cc274f8d57e010159785a901c3 | |
parent | f14a7189ea46c33fb3469ec1c0fcbb7eb531f32a (diff) | |
parent | ba19e9fc44d85bb510f1651177d8e7f317a65695 (diff) |
Merge pull request #5914 from vespa-engine/revert-5909-gjoranv/handle-empty-filter-chains
Revert "Remove empty filter chains from filter chain repo."
-rw-r--r-- | application/src/test/java/com/yahoo/application/ApplicationTest.java | 17 | ||||
-rw-r--r-- | container-core/src/main/java/com/yahoo/container/http/filter/FilterChainRepository.java | 14 |
2 files changed, 1 insertions, 30 deletions
diff --git a/application/src/test/java/com/yahoo/application/ApplicationTest.java b/application/src/test/java/com/yahoo/application/ApplicationTest.java index 7b4f39b6ac4..9388c8f400e 100644 --- a/application/src/test/java/com/yahoo/application/ApplicationTest.java +++ b/application/src/test/java/com/yahoo/application/ApplicationTest.java @@ -372,21 +372,4 @@ public class ApplicationTest { "</jdisc>"; } - @Test - public void application_with_access_control_can_be_constructed() throws Exception { - try (Application application = Application.fromServicesXml(servicesXmlWithAccessControl(), Networking.disable)) { - Application unused = application; - } - } - - private static String servicesXmlWithAccessControl() { - return "<jdisc version='1.0'>" + - " <http> <server port='" + 0 +"' id='foo'/> " + - " <filtering>" + - " <access-control domain='foo' />" + - " </filtering>" + - " </http>" + - "</jdisc>"; - } - } diff --git a/container-core/src/main/java/com/yahoo/container/http/filter/FilterChainRepository.java b/container-core/src/main/java/com/yahoo/container/http/filter/FilterChainRepository.java index 31bceca9337..e4ec09e3948 100644 --- a/container-core/src/main/java/com/yahoo/container/http/filter/FilterChainRepository.java +++ b/container-core/src/main/java/com/yahoo/container/http/filter/FilterChainRepository.java @@ -25,7 +25,6 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Set; -import java.util.logging.Logger; import static java.util.Collections.emptyList; import static java.util.stream.Collectors.toList; @@ -38,7 +37,6 @@ import static java.util.stream.Collectors.toSet; * @author bjorncs */ public class FilterChainRepository extends AbstractComponent { - private static final Logger log = Logger.getLogger(FilterChainRepository.class.getName()); private final ComponentRegistry<Object> filterAndChains; @@ -79,23 +77,12 @@ public class FilterChainRepository extends AbstractComponent { ChainRegistry<FilterWrapper> chainRegistry = new ChainRegistry<>(); ChainsModel chainsModel = ChainsModelBuilder.buildFromConfig(chainsConfig); ChainsConfigurer.prepareChainRegistry(chainRegistry, chainsModel, allFiltersWrapped(filters)); - removeEmptyChains(chainRegistry); chainRegistry.freeze(); return chainRegistry; } - private static void removeEmptyChains(ChainRegistry<FilterWrapper> chainRegistry) { - chainRegistry.allComponents().stream() - .filter(chain -> chain.components().isEmpty()) - .map(Chain::getId) - .peek(id -> log.warning("Removing empty filter chain: " + id)) - .forEach(chainRegistry::unregister); - } - @SuppressWarnings("unchecked") private static Object toJDiscChain(Chain<FilterWrapper> chain) { - if (chain.components().isEmpty()) - throw new IllegalArgumentException("Empty filter chain: " + chain.getId()); checkFilterTypesCompatible(chain); List<?> jdiscFilters = chain.components().stream() .map(filterWrapper -> filterWrapper.filter) @@ -111,6 +98,7 @@ public class FilterChainRepository extends AbstractComponent { } private static List<?> wrapSecurityFilters(List<?> filters) { + if (filters.isEmpty()) return emptyList(); List<Object> aggregatedSecurityFilters = new ArrayList<>(); List<Object> wrappedFilters = new ArrayList<>(); for (Object filter : filters) { |