@Override
    public Index getIndex(String name) {
        List<Index> sameIndices = new ArrayList<>(1);

        getSchemaIndex(name).ifPresent(sameIndices::add);

        for (ImmutableSDField field : allConcreteFields()) {
            if (field.getIndex(name) != null)
                sameIndices.add(field.getIndex(name));
        }
        if (sameIndices.size() == 0) return null;
        if (sameIndices.size() == 1) return sameIndices.get(0);
        return consolidateIndices(sameIndices);
    }
Returns an index, or null if no index with this name has had some <b>explicit settings</b> applied. Even if
this returns null, the index may be implicitly defined by an indexing statement. This will return the
index whether it is defined on this schema or on one of its fields.

@param name the name of the index to get
@return the index requested
config-model/src/main/java/com/yahoo/schema/Schema.java