docs: public List<IndexDefinition> readAllIndexDefinitions(Set<String> providerNames) {
          CachedNode indexes = indexesNode();
          List<IndexDefinition> defns = new ArrayList<>();
          for (ChildReference ref : indexes.getChildReferences(system)) {
              CachedNode provider = system.getNode(ref);
              Name providerName = provider.getName(system);
              String providerLocalName = providerName.getLocalName();
              boolean providerExists = providerNames == null || providerNames.contains(providerLocalName);
              if (!providerExists) {
                  LOGGER.debug("Ignoring all index definitions for provider '{}' because it isn't present in the configuration",
                               providerLocalName);
                  continue;
              }
              for (ChildReference indexRef : provider.getChildReferences(system)) {
                  CachedNode indexDefn = system.getNode(indexRef);
                  IndexDefinition defn = readIndexDefinition(indexDefn, providerName);
                  if (defn.isEnabled()) {
                      defns.add(defn);
                  } else {
                      LOGGER.debug("Ignoring index definition '{}' because it's disabled", defn.getName());
                  }
              }
          }
          return defns;
      }