class SubstitutionStrategyRegistry {

    public final Optional<SubstitutionStrategy> getMatchingStrategy(final WithDittoHeaders withDittoHeaders) {
        for (final SubstitutionStrategy strategy : strategies) {
            if (strategy.matches(withDittoHeaders)) {
                return Optional.of(strategy);
            }
        }
        return Optional.empty();
    }

    private  SubstitutionStrategyRegistry();

}