docs: private boolean hasNextSafely(Iterator iterator) {
          try {
              /* Throw a ServiceConfigurationError if a provider-configuration file violates the specified format,
  +            or if it names a provider class that cannot be found and instantiated, or if the result of
  +            instantiating the class is not assignable to the service type, or if any other kind of exception
  +            or error is thrown as the next provider is located and instantiated.
  +            @see http://docs.oracle.com/javase/7/docs/api/java/util/ServiceLoader.html#iterator()
  +            */
              return iterator.hasNext();
          } catch (Exception e) {
              LOGGER.error("iterator.hasNext() failed", e);
              return false;
          }
      }