@Override
  public Collection<S> loadServices(Class<S> service) {
    serviceLoaderWrapper.load(service);

    Collection<S> services = new ArrayList<>();
    for (Iterator<S> iterator = serviceLoaderWrapper.iterator(); iterator.hasNext();) {
      try {
        S instance = iterator.next();
        services.add(instance);
      } catch (ServiceConfigurationError serviceConfigurationError) {
        logger.error("Error while loading implementations of {}", service.getName(),
            serviceConfigurationError);
      }
    }

    return services;
  }
Implements {@link CollectingServiceLoader} by returning a {@link List} of all currently loadable
implementations of the given service interface.
geode-core/src/main/java/org/apache/geode/internal/util/ListCollectingServiceLoader.java