public ChainSpecification flatten(Resolver<ChainSpecification> allChainSpecifications) {
        Deque<ComponentId> path = new ArrayDeque<>();
        return flatten(allChainSpecifications, path);
    }
Specifies how the components should be selected to create a chain. Immutable.

@author Tony Vaagenes
container-core/src/main/java/com/yahoo/component/chain/model/ChainSpecification.java