@Override
    public void validate() {
        if (((Collection<FilterBinding>) bindings).isEmpty()) return;

        if (filterChains == null)
            throw new IllegalArgumentException("Null FilterChains are not allowed when there are filter bindings");

        ComponentRegistry<ChainedComponent<?>> filters = filterChains.componentsRegistry();
        var chains = filterChains.allChains();

        for (FilterBinding binding: bindings) {
            if (filters.getComponent(binding.chainId()) == null && chains.getComponent(binding.chainId()) == null)
                throw new IllegalArgumentException("Can't find filter " + binding.chainId() + " for binding " + binding.binding());
        }
    }
Represents the http servers and filters of a container cluster.

@author Tony Vaagenes
@author bjorncs
config-model/src/main/java/com/yahoo/vespa/model/container/http/Http.java