aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorn.christian@seime.no>2018-05-23 13:16:42 +0200
committerGitHub <noreply@github.com>2018-05-23 13:16:42 +0200
commite3615e953e154cee870c36eb79c135c0f4fc9436 (patch)
tree657984ca049491cc274f8d57e010159785a901c3
parentf14a7189ea46c33fb3469ec1c0fcbb7eb531f32a (diff)
parentba19e9fc44d85bb510f1651177d8e7f317a65695 (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.java17
-rw-r--r--container-core/src/main/java/com/yahoo/container/http/filter/FilterChainRepository.java14
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) {